Dmitry Vyukov
5cbdd9f444
gometalinter: strengthen gocyclo limit
...
Strengthen gocycle limit 35->24! Yay! No more jumbo functions!
Fixes #538
2018-08-02 16:57:32 +02:00
Dmitry Vyukov
1477993e1b
pkg/compiler: work around vet crash
...
vetshadow not works, so enable it.
Update https://github.com/golang/go/issues/26725
Update #538
2018-07-31 20:47:36 +02:00
Dmitry Vyukov
8ef497b652
gometalinter: clean up vetshadow
...
This just cleans up existing warnings.
vetshadow is not enabled yet because it crashes.
Update #538
2018-07-31 20:38:33 +02:00
Dmitry Vyukov
46b824df22
prog: refactor SerializeForExec
...
Reduce cyclomatic complexity.
Update #538
2018-07-31 18:38:54 +02:00
Dmitry Vyukov
50c3709eb0
.gometalinter: reduce dupl threshold
...
Reduce dupl threshold from 63 to 60 and fix violations.
Update #538
2018-07-31 12:42:52 +02:00
Dmitry Vyukov
f5d67fbd9c
.gometalinter.json: enable gofmt
...
The part that we want from gofmt is simplify (-s).
Fix all code that needs fixing.
Update #538
2018-07-31 12:16:54 +02:00
Dmitry Vyukov
9fe4bdc5f1
executor: overhaul
...
Make as much code as possible shared between all OSes.
In particular main is now common across all OSes.
Make more code shared between executor and csource
(in particular, loop function and threaded execution logic).
Also make loop and threaded logic shared across all OSes.
Make more posix/unix code shared across OSes
(e.g. signal handling, pthread creation, etc).
Plus other changes along similar lines.
Also support test OS in executor (based on portable posix)
and add 4 arches that cover all execution modes
(fork server/no fork server, shmem/no shmem).
This change paves way for testing of executor code
and allows to preserve consistency across OSes and executor/csource.
2018-07-24 12:04:27 +02:00
Dmitry Vyukov
94ef62054c
pkg/build: move from pkg/kernel
...
Rename pkg/kernel to pkg/build and prepare for multi-OS support.
2018-06-22 16:40:45 +02:00
Dmitry Vyukov
67f2e89e73
gometalinter: increase timeout
...
Checkers timeout on travis:
https://travis-ci.org/google/syzkaller/jobs/375965899
2018-05-07 18:59:22 +02:00
Dmitry Vyukov
9e0846e8a4
all: get rid of underscores in identifiers
...
Underscores are against Go coding style.
Update #538
2018-05-07 17:59:06 +02:00
Dmitry Vyukov
99c1f48659
sys/syz-extract: split overly long function
...
Update #538
2018-05-07 16:50:19 +02:00
Dmitry Vyukov
97d2b0e4c4
prog: refactor mutateArg from a big huge function
...
Update #538
2018-05-07 16:24:03 +02:00
Dmitry Vyukov
55a5e98a0a
pkg/ifuzz: move generated code to a separate package
...
This helps to ignore generated code with gometalinter.
There is currently no other way:
https://github.com/alecthomas/gometalinter/issues/270
Update #538
2018-05-07 15:42:28 +02:00
Dmitry Vyukov
df6e2fb6df
prog: deduplicate minimization test
...
Update #538
2018-05-07 14:55:53 +02:00
Dmitry Vyukov
f914e0a305
sys: dedup sanitization of common unix syscalls
...
Update #538
2018-05-07 14:42:55 +02:00
Dmitry Vyukov
068da17e1f
prog: dedup mutation code
...
Update #538
2018-05-07 14:42:22 +02:00
Dmitry Vyukov
5f9dcfdadb
pkg/git: remove duplicated code in tests
...
Update #538
2018-05-07 13:16:29 +02:00
Dmitry Vyukov
b9fea20df7
pkg/report: remove duplicated stub code
...
Update #538
2018-05-07 13:05:41 +02:00
Dmitry Vyukov
757359b5ea
gometalinter: reduce checker timeout
...
Travis has timeout of 10 minutes, so reduce
our timeout to 8 minutes.
2018-05-07 10:49:27 +02:00
Dmitry Vyukov
cda1fcb742
sys: dedup mmap code across OSes
...
Update #538
2018-05-06 16:58:38 +02:00
Dmitry Vyukov
31ea20ce83
sys: move generate files to separate packages
...
Move generated files to gen subdir. This allows to:
1. Rebuild init.go without rebuilding generated code.
2. Excluding generated files from gometalinter checking.
This makes faster and consume less memory.
Update #538
2018-05-05 15:40:10 +02:00
Dmitry Vyukov
2c7e14a847
gometalinter: enable cyclomatic complexity checking
...
Refactor some functions to be simpler.
Update #538
2018-05-04 18:03:46 +02:00
Dmitry Vyukov
08141db61a
gometalinter: enable line length checking
...
120 columns looks like a reasonable limit
and requires few changes to existing code.
Update #538
2018-05-04 14:24:51 +02:00
Dmitry Vyukov
0f503c18d9
gometalinter: enable misspell
...
Update #538
2018-05-03 15:53:13 +02:00
Dmitry Vyukov
a630fd8b41
gometalinter: some fixes for unparam
...
But we still can't enable it as there are more [uninteresting] warnings.
Update #538
2018-05-03 15:48:26 +02:00
Dmitry Vyukov
9fe5658a1b
gometalinter: check dot imports
...
Update #538
2018-05-03 14:41:34 +02:00
Dmitry Vyukov
39302300d9
gometalinter: check unkeyed composite literals
...
Update #538
2018-05-03 14:01:48 +02:00
Dmitry Vyukov
4c24e4a467
gometalinter: enable package comment checking
...
Update #538
2018-05-03 13:53:01 +02:00
Dmitry Vyukov
63ef857906
add config for gometalinter
...
gometalinter is https://github.com/alecthomas/gometalinter
2018-03-08 18:47:04 +01:00