Dmitry Vyukov
e3d7179396
pkg/git: fix branch during fetch
2017-11-17 14:17:47 +01:00
Dmitry Vyukov
2f7fc0ff65
pkg/kernel: sandbox make invocation
2017-11-17 14:56:34 +03:00
Dmitry Vyukov
348d8f13f0
dashboard/app: fix build
2017-11-16 12:51:52 +01:00
Dmitry Vyukov
c4d43f4773
pkg/osutil: don't leace runaway processes
...
When manager is stopped there are sometimes runaway qemu
processes still running. Set PDEATHSIG for all subprocesses.
We never need child processes outliving parents.
2017-11-16 12:48:02 +01:00
Dmitry Vyukov
4bc654f911
syz-ci: add support for patch testing
2017-11-16 13:09:50 +03:00
Dmitry Vyukov
e928bb6b8a
dashboard/app: test fix patches by request
...
Add initial support for testing fix patches.
A user on mailing list can request patch testing with:
and attach a patch.
2017-11-16 13:09:50 +03:00
Dmitry Vyukov
708390a039
syz-ci: pre-parse and pre-populate manager config
...
Config is currently parsed in 2 places.
Parse it in constructor once.
2017-11-16 10:15:23 +01:00
Dmitry Vyukov
9a98ae3fb6
pkg/git: provide more helper functions
...
Add Patch, Checkout, CheckRepoAddress and CheckBranch.
Will be needed for patch testing.
2017-11-16 10:12:17 +01:00
Dmitry Vyukov
95cf3e7247
pkg/email: fix base64-encoded body parsing
...
We currently handle base64 only for attachments,
but text/plain body can also be base64-encoded.
2017-11-16 10:10:12 +01:00
Dmitry Vyukov
447a290a8c
pkg/config: provide SaveData function
...
Parallel to LoadFile/LoadData.
2017-11-16 10:10:12 +01:00
Dmitry Vyukov
4f3b40072c
dashboard/app: poll email at test end
...
We currently check that there are no pending emails left on test end.
But since we don't poll, there still can be non-delivered emails.
Poll email at test end.
2017-11-16 10:10:12 +01:00
Dmitry Vyukov
72989ce05a
dashboard/app: make emailReport more general
...
Don't assume that emailReport sends reports about bugs only.
2017-11-16 10:10:09 +01:00
Dmitry Vyukov
3ed60d0989
dashboard/app: make findCrashForBug return crash key
2017-11-16 09:58:02 +01:00
Dmitry Vyukov
89572feb6f
dashboard/app: provide bugReportingByName helper
2017-11-16 09:53:41 +01:00
Dmitry Vyukov
45b4f336f2
dashboard/app: improve formatTime
...
We never want to print 1970 date.
2017-11-16 09:48:55 +01:00
Dmitry Vyukov
ed39afd6e8
dashboard/app: factor out uploadBuild from apiUploadBuild
...
Make it possible to upload builds from functions other than apiUploadBuild.
2017-11-16 09:47:38 +01:00
Dmitry Vyukov
4121c7b5d1
syz-ci: add global dashboard client
...
Will allow to do connections to dashboard by syz-ci itself.
Unused for now, but will allow graceful config update.
2017-11-15 18:13:51 +01:00
Dmitry Vyukov
cf38de0018
pkg/report: avoid compiling a bunch of regexps on every crash
2017-11-14 10:16:27 +01:00
Dmitry Vyukov
bbbea5a373
pkg/report: pass report as []byte to isCorrupted
...
We always pass report/log as []byte.
Pass it here the same way for consistency and to avoid
unnecessary large memory allocation/copy.
2017-11-14 10:13:38 +01:00
Dmitry Vyukov
4bd78cef05
pkg/report, pkg/repro, syz-manager: name crash attributes consistently
...
We currently have several names for crash attributes, which is disturbing.
E.g. crash title is called "Title" or "Desc". Name them consistently.
Title - single line bug identity.
Report - whole crash text.
Log - whole fuzzer/kernel output.
2017-11-14 10:04:22 +01:00
Dmitry Vyukov
82b3b903a0
pkg/report: make isCorrupted linux-specific
...
isCorrupted is linux-specific, but is a global function.
Name can collide with other OSes. Make is linux method.
2017-11-14 09:47:44 +01:00
Dmitry Vyukov
10112655d7
vm: remove needOutput arg for MonitorExecution
...
Always wait 10 secs for output.
If anything this can only lead to missed crashes during repro.
Let's unify manager and repro behavior.
2017-11-14 09:45:34 +01:00
Dmitry Vyukov
7a53e7e35d
pkg/report: combine report data into a struct
...
Parse returns 5 variables now. Later we may want to add crash "priority".
Introduce Report struct that holds all report data.
2017-11-14 09:41:55 +01:00
Andrey Konovalov
f9a8d567eb
pkg/report: add corrupted report detection
...
This change makes pkg/report try to detect corrupted reports by
using some heuristics.
2017-11-13 17:18:16 +03:00
Dmitry Vyukov
e0a2b1953b
vm: merge "not executing programs" into "no output"
...
Frequently it's the same condition.
In one case there is just a stray error message on console
that turns the crash into "not executing programs".
While in another case there is no stray message,
and then it's detected as "no output".
2017-11-08 18:01:43 +01:00
Dmitry Vyukov
3b7ad24d6c
syz-manager/mgrconfig: add another OOM suppression
...
If sshd was killed, we will get "lost connection".
2017-11-08 18:01:43 +01:00
Andrey Konovalov
dd1609f876
executor: proceed even if /dev/net/tun is not available
...
For some racy bugs syzkaller can generate a C reproducer with tun
enabled, when it's not actuallly required to trigger the bug.
Some kernel developers (that don't have CONFIG_TUN=y on their setups)
complain about such C repros.
When tun is not available, instead of exiting, print a message that tun
initialization failed and proceed.
2017-11-08 17:43:40 +01:00
Tobias Klauser
784eb9c23c
sys/freebsd: add POLLINIGNEOF
2017-11-08 19:30:10 +03:00
Dmitry Vyukov
9547ae3a85
dashboard/app: clarify that email commands must be in email body
...
We've got a reply in subject.
2017-11-08 14:16:36 +01:00
Dmitry Vyukov
bc4a24220e
dashboard/app: explicitly say that we don't have a reproducer
2017-11-08 14:16:36 +01:00
Dmitry Vyukov
6c412fa20c
pkg/git: add another commit prefix
2017-11-08 14:16:36 +01:00
Andrey Konovalov
699e0a68ad
Update found_bugs_usb.md
2017-11-08 00:03:26 +01:00
Andrey Konovalov
a2c64463a2
execprog: correctly handle fault injections
...
syz-execprog doesn't utilize info about fault injections from a prog log.
Since syz-execprog is used by the repro package to reproduce crashes,
crashes caused by fault injections might not reproduce.
2017-11-07 16:17:18 +01:00
Andrey Konovalov
ef57962634
Update contributing.md
2017-11-07 14:23:57 +01:00
Andrey Konovalov
102fd70169
Update found_bugs_usb.md
2017-11-07 14:05:28 +01:00
Andrey Konovalov
4baddb8d39
Update found_bugs_usb.md
2017-11-07 14:01:33 +01:00
Andrey Konovalov
262ab53d85
Update found_bugs_usb.md
2017-11-07 13:59:04 +01:00
Andrey Konovalov
085e9f8d56
Update found_bugs_usb.md
2017-11-07 13:51:40 +01:00
Andrey Konovalov
d49979f75f
Update found_bugs_usb.md
2017-11-07 13:34:40 +01:00
Dmitry Vyukov
8f3e774b76
syz-ci: improve commit matching
...
1. Fetch last 200K commits instead of commits for past year.
For merged commits both author date and commit date can be
arbitrary long in past (e.g. we got a commit dated by 2014).
2. Strip some commit prefixes from commits.
We have some trees where backports are prefixed with "BACKPORT:".
Previously we could no match such commits.
2017-11-07 13:31:00 +01:00
Dmitry Vyukov
c1c91039f7
vm/gce: fix error formatting
...
This is detected with newer Go toolchain:
vm/gce/gce.go:376: Errorf format %v reads arg #1 , but call has only 0 args
vm/gce/gce.go:381: Errorf format %v reads arg #1 , but call has only 0 args
2017-11-07 13:25:27 +01:00
Dmitry Vyukov
7b05d23e43
dashboard/app: show fixing commit title as hint
2017-11-07 10:39:39 +01:00
Dmitry Vyukov
8bac040e2a
docs: update path to syz-execprog binary
2017-11-07 10:39:39 +01:00
Eric Biggers
38977f0e6b
sys/linux: add definition for LOOP_SET_BLOCK_SIZE
...
The v4.14 kernel will support a new loop ioctl, LOOP_SET_BLOCK_SIZE.
2017-11-07 12:26:11 +03:00
Eric Biggers
a6b071286e
sys/linux: fix wrong ioctl numbers in loop device definitions
...
Fix a couple apparent copy-and-paste errors:
- ioctl$LOOP_CHANGE_FD should use LOOP_CHANGE_FD
- ioctl$LOOP_CTL_REMOVE should use LOOP_CTL_REMOVE
2017-11-07 12:26:11 +03:00
Eric Biggers
3f85f7fc46
syz-extract: fix printf conditional in template
...
commit 3520854be0e7 ("syz-extract: select declaring printf or not")
broke 'make extract' because it introduced invalid syntax in a text
template. Fix it.
2017-11-07 11:21:47 +03:00
Andrey Konovalov
4340937250
Update found_bugs_usb.md
2017-11-06 16:23:50 +01:00
Dmitry Vyukov
6db82ca081
dashboard/app: show when bugs are fixed and where
2017-11-06 15:01:28 +01:00
Dmitry Vyukov
a2961665fd
dashboard/app: pass namespace in bug reports
...
Namespace can be used for some customization
in external reporter.
2017-11-06 15:01:28 +01:00
Dmitry Vyukov
d5a1adcc06
tools/syz-execprog: allow to override target OS
...
This is currently useful for akaros, which is tested remotely.
2017-11-06 15:01:28 +01:00