Dmitry Vyukov
c7f6891ca7
pkg/report: reformat code
...
There is some regression in Go formatting on tip.
I am constantly getting diffs after formatting.
Filed: https://github.com/golang/go/issues/25161
2018-04-29 12:04:22 +02:00
Dmitry Vyukov
d5a5d04517
sys/linux: a bunch of assorted improvements
2018-04-27 19:52:20 +02:00
Dmitry Vyukov
190d92e056
sys/linux: extend namespace desciptions
...
Slightly extend namespace descriptions and move
them to a separate file.
2018-04-27 18:47:58 +02:00
Dmitry Vyukov
195cc154e2
Update kernel_configs.md
2018-04-27 16:03:10 +02:00
Dmitry Vyukov
7785e4049f
Update setup_linux-host_qemu-vm_arm-kernel.md
2018-04-27 15:46:45 +02:00
Dmitry Vyukov
0008f52678
pkg/report: fix remaining lockdep report formats
...
We fixed only 1, but new format affects all lockdep reports.
Fix all of them.
2018-04-27 15:44:47 +02:00
Dmitry Vyukov
1e49a807a4
syz-manager: log suppressed crashes always
...
If there are few of them, it does not matter if they are printed or not.
However if there are lots of them, they need to be seen in log.
2018-04-27 15:43:55 +02:00
Dmitry Vyukov
3c7caf1d6e
pkg/host: enable more fault injection
2018-04-27 15:43:29 +02:00
Dmitry Vyukov
733e69fd24
syz-fuzzer: fix kcov detection for cross-arch testing
2018-04-27 15:42:48 +02:00
Dmitry Vyukov
b9e02d5759
docs: add instructions for arm kernel
2018-04-27 14:33:01 +02:00
Dmitry Vyukov
bcd6198db5
executor: support cover on 32-bit kernels
...
Detect kernel bitness and properly extract coverage on 32-bit kernels.
2018-04-27 14:33:01 +02:00
Dmitry Vyukov
6bd8902381
syz-fuzzer: clean up after probing coverage
...
We left mmap memory and comparison tracing enabled.
2018-04-27 14:33:01 +02:00
Dmitry Vyukov
ebfe5a54b7
syz-fuzzer: use proper pointer size when checking coverage
2018-04-27 14:33:01 +02:00
Dmitry Vyukov
476b8ca987
syz-manager: properly calculate previous instruction PC
...
We used to subtract 5 which is length of call instruction on amd64.
Do proper per-arch calculation.
2018-04-27 14:33:01 +02:00
Dmitry Vyukov
d0b7645387
pkg/report: few report parsing fixes for linux
2018-04-26 14:46:16 +02:00
Hangbin Liu
73417389ce
sys/linux/socket_netlink_route: add routing rules
...
Also fix RTA_MULTIPATH data type. We only need struct rtnexthop,
no need to use array type.
v1 -> v2:
Use uid and sock_port instead of int32/16. Use flags for FRA_PROTOCOL
and FRA_IP_PROTO.
Add type fib_rule_hdr because even though the structure is same with rtmsg.
The table, action and flags values are not same.
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
2018-04-25 09:33:09 +02:00
Dmitry Vyukov
37e76fe20b
pkg/scource: rename compiled binary to syz-executor
...
We call the binary syz-executor because it sometimes shows in bug titles,
and we don't want 2 different bugs for when a crash is triggered during
fuzzing and during repro.
2018-04-24 19:17:07 +02:00
Dmitry Vyukov
fd5157bebf
pkg/report: sanitize titles better
...
Strip non-printable characters from titles.
Trim whitespaces on both ends.
Replace tabs with spaces.
Remove duplicate spaces.
Reduce max title length.
2018-04-24 19:17:07 +02:00
Dmitry Vyukov
98e363b852
pkg/git: don't create shallow repos
...
Shallow repos created by CheckoutBranch conflict with
what CheckoutCommit tries to do.
Fetch of a shallow repo does not unshallow it.
And then checkout of a non-head commit fails.
2018-04-24 19:17:07 +02:00
Dmitry Vyukov
4707a17923
Update found_bugs.md
2018-04-24 15:57:13 +02:00
Dmitry Vyukov
1fda5ee0af
docs: add new ways of testing patches on syzbot
...
1. Mention that exact commit hash can be provided.
2. Mention that patch is optional now.
2018-04-24 15:34:37 +02:00
Dmitry Vyukov
2bf86f4022
syz-ci: remove restriction on empty patch
2018-04-24 14:55:39 +02:00
Dmitry Vyukov
0bad1c56e8
dashboard/app: make it possible to restrict test repos
...
Normally instances can test patches on any tree.
However, some (e.g. non-upstreamed KMSAN) can test only on a fixed tree.
RestrictedTestingRepo contains the repo for such instances
and RestrictedTestingReason contains a human readable reason for the restriction.
Fixes #567
2018-04-24 14:30:32 +02:00
Dmitry Vyukov
2e579571e0
dashboard/app: refactor manager info in config
...
In preparation for future changes.
2018-04-24 13:58:56 +02:00
Dmitry Vyukov
9366d03f00
dashboard/app: allow testing fixes on exact commit and without patch
...
This implements 2 features:
1. It's now possible to specify exact commit when testing as:
2. It's possible to test without patch attached
assuming the patch is already committed to the tested tree.
Fixes #558
2018-04-24 13:23:01 +02:00
Dmitry Vyukov
e2f4bf8f38
pkg/gce: improve API rate limit logic
...
Sometimes we see rate limiting errors.
This is especially bad for e.g. patch testing requests.
Increase default API delay and add backoff logic.
2018-04-24 13:23:01 +02:00
Dmitry Vyukov
33424b08c3
pkg/report: more corrupted report detection
2018-04-24 13:23:01 +02:00
Dmitry Vyukov
02bbd80e7c
prog: fix gometalinter warnings
2018-04-24 13:23:01 +02:00
Dmitry Vyukov
e7e85d3609
pkg/kernel: fix gometalinter warning
2018-04-23 16:50:25 +02:00
Dmitry Vyukov
0d8e591c31
syz-ci: reduce git poll period
2018-04-23 16:28:24 +02:00
Dmitry Vyukov
8b5dcf17b0
syz-ci: clean kernel dir before patch test build
...
This leads to false errors when we are switching between gcc and clang:
kernel build failed: failed to run /usr/bin/make [make bzImage -j 32 CC=/syzkaller/clang-kmsan/bin/clang]: exit status 2
arch/x86/Makefile:184: *** Compiler lacks asm-goto support.. Stop.
Fixes #568
2018-04-23 16:26:26 +02:00
Dmitry Vyukov
ff12bea91c
pkg/ipc: fix data race on config.Timeout
2018-04-23 16:26:26 +02:00
Dmitry Vyukov
c7b0bb14c0
Update found_bugs.md
2018-04-23 15:38:28 +02:00
Dmitry Vyukov
5be8929822
Update README.md
2018-04-23 15:36:58 +02:00
Dmitry Vyukov
20941ab3cb
Update found_bugs.md
2018-04-23 11:19:36 +02:00
Hyeongchan Kim
d23fcf6cfb
syz-upgrade: fix typo in usage message
2018-04-21 10:41:19 +02:00
Dmitry Vyukov
ca03d6881a
vm/qemu: don't be too clever with cpu configuration
...
Some machine configurations have strict limits on number of CPUs
and don't support NUMA (e.g. arm vexpress-a15).
maxcpu and numa options make qemu fail.
Don't be too clever. If necessary maxcpu and numa options
can be added in qemu_args.
2018-04-20 20:14:10 +02:00
Dmitry Vyukov
8b9a3f2c76
pkg/report: add some example arm crashes
2018-04-20 20:14:10 +02:00
Dmitry Vyukov
9b895661a9
syz-manager: fix coverage report for archs other than amd64
2018-04-20 20:14:10 +02:00
Dmitry Vyukov
bf2018dd07
executor: don't fail when ipv6 is not enabled
...
Check in checkpoint_iptables is not enough as
reset_iptables will fail even if no tables enabled.
Add similar check to reset_iptables.
2018-04-20 20:14:10 +02:00
Dmitry Vyukov
cc402841ba
Update kernel_configs.md
2018-04-20 09:28:52 +02:00
Dmitry Vyukov
eae05cb05e
syz-manager: make misconfig errors more comprehensible
2018-04-19 20:16:21 +02:00
Dmitry Vyukov
074c0dd9b9
syz-manager: make error about "no syscalls enabled" more useful
...
Exit only after we print why syscalls were disabled.
2018-04-19 20:13:50 +02:00
Dmitry Vyukov
bcc3786b30
syz-manager: make error messages about inconsistent binaries more comprehensible
2018-04-19 20:12:03 +02:00
Dmitry Vyukov
a6714e43a9
syz-manager: make error about changed files more comprehensible
2018-04-19 20:01:42 +02:00
Dmitry Vyukov
500489e312
sys/syz-extract: provide readable error on missing input file
...
Currently syz-extract crashes with nil deref panic if
it is executed manually and is gives an absent file name.
Output a readable error.
2018-04-19 19:43:27 +02:00
Dmitry Vyukov
e5453dd396
executor: increase max image size to 128MB
...
Images of some filesystems need to be that large (xfs, btrfs, f2fs).
2018-04-19 16:59:49 +02:00
Dmitry Vyukov
81daaca980
pkg/host: fix kallsyms names again
...
Some x86 syscalls now seem to be __x64_ and __ia32_ instead of sys_ or ksys_.
2018-04-19 16:58:24 +02:00
Dmitry Vyukov
3642839c10
sys/linux: add f2fs support
2018-04-19 14:15:31 +02:00
Dmitry Vyukov
19af2a1b35
pkg/report: coarsen "unregister_netdevice" title
...
This leads to unbounded number of bug reports as syzkaller
can generate new device names dynamically.
Exclude actual device name from title.
2018-04-19 13:58:34 +02:00