93 Commits

Author SHA1 Message Date
Dmitry Vyukov
b4e2d91732 sys: expose new syscall numbers programmatically
This will be required for reproduction tool.
2015-12-23 19:05:15 +01:00
Dmitry Vyukov
2fa51b4807 executor: fix collide mode
Don't wait for every other call.
2015-12-23 13:50:40 +01:00
Dmitry Vyukov
bd75706280 add a flag to disable setpgid syscall
It is broken on some of our test systems.
2015-12-17 17:31:11 +01:00
Dmitry Vyukov
bbf4e35323 executor: export syscall execution results
Errno can be used to guide fuzzing, or detect not implemented syscalls.
2015-12-17 17:31:11 +01:00
Dmitry Vyukov
06e6726537 sys: fix typos 2015-12-17 14:38:46 +01:00
Dmitry Vyukov
72742865dd sys: add bluetooth support 2015-12-17 14:38:46 +01:00
Dmitry Vyukov
3d96383e0e executor: allow to wait for child processes without sigtimedwait
We've hit 2 systems that mishandle sigtimedwait.
2015-12-17 14:38:46 +01:00
Dmitry Vyukov
6f71e5dce1 sys: add PF_NFC support 2015-12-17 14:38:46 +01:00
Dmitry Vyukov
9980a72713 sys: automatically add padding to structs 2015-12-17 14:38:46 +01:00
Dmitry Vyukov
c4b809f85f sys: add support for PF_ALG 2015-12-17 14:38:46 +01:00
Dmitry Vyukov
d823a9221a executor: switch to ioctl's instead of writes 2015-12-03 20:30:20 +01:00
Dmitry Vyukov
b7800fb0a2 sys: describe some additional syscalls 2015-12-03 20:03:50 +01:00
Dmitry Vyukov
f881e7de45 executor: execute mount under root 2015-11-30 17:18:12 +01:00
Dmitry Vyukov
a63ac433ab sys: add userfaultfd syscall 2015-11-30 16:31:45 +01:00
Dmitry Vyukov
81de33fab1 add perf ioctl's 2015-11-29 13:19:10 +01:00
Dmitry Vyukov
b94cd3038a add support for perf events 2015-11-29 12:19:58 +01:00
Dmitry Vyukov
9d1895c1bd add support for bpf syscall 2015-11-29 11:05:08 +01:00
Dmitry Vyukov
d46a9039a5 executor: fix build 2015-11-29 08:38:59 +01:00
Dmitry Vyukov
bb158eaeab executor: switch to new coverage 2015-11-28 19:00:33 +01:00
Dmitry Vyukov
fb92c67d9d executor: prevent programs to mess with fuzzer fds 2015-11-20 15:39:50 +01:00
Dmitry Vyukov
4784f4f6f5 add fuse support 2015-11-19 17:16:36 +01:00
Dmitry Vyukov
93f8cc38aa executor: don't wait for pending calls if there are none 2015-11-19 11:50:04 +01:00
Dmitry Vyukov
6a76998e5e executor: fix detection of last call 2015-11-19 10:29:17 +01:00
Dmitry Vyukov
485651138e executor: fix detection of out of threads 2015-11-19 10:26:37 +01:00
Dmitry Vyukov
f67856dae0 allow executor execute particular syscalls under root
this is required to test e.g. fuse fs (non-root can't mount)
2015-11-18 21:33:15 +01:00
Dmitry Vyukov
495113290e basic support for dri/drm drivers 2015-11-18 21:22:17 +01:00
Dmitry Vyukov
016b19c61c fix waiting for worker processes in executor
+ disable SIGCANCEL/SIGSETXID signal handlers
2015-11-18 15:08:42 +01:00
Dmitry Vyukov
6892001bbc add tty-related ioctl's 2015-11-16 19:14:05 +01:00
Dmitry Vyukov
0165a4b2e4 use fork server in executor
This avoids exec per test.
Also allows to pre-map shared memory regions.
And will allow to pre-map coverage regions, etc.

Seems to work already, but probably there are still some bugs.
2015-11-10 20:30:50 +01:00
Dmitry Vyukov
d3e457e285 use futex instead of spin wait
Spinning is bad. Also pollutes strace output.
2015-11-10 14:32:46 +01:00
Dmitry Vyukov
a44473e4a4 add collide mode to executor
In this mode we execute pairs of syscalls concurrently
to provoke data races in kernel.
2015-11-06 23:15:40 +01:00
Dmitry Vyukov
53d18c7596 describe keyctl syscall 2015-11-06 21:51:19 +01:00
Dmitry Vyukov
0750245eea experimental functionality to impersonate nobody user in executor 2015-10-20 17:43:02 +02:00
Dmitry Vyukov
9a3bf1a7c7 open /proc/cover only once in executor
First, it is just not necessary to open it multiple times.
But more importantly a program can close fds that it previosuly used:

r0 = open(...)
close(r0)
close(r0)

and this can close cover fds created in threaded mode.
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
f8f416fb8f preliminary description of kdbus syscalls 2015-10-16 18:16:10 +02:00
Dmitry Vyukov
7f031e85ef add common ioctl commands 2015-10-15 20:07:28 +02:00
Dmitry Vyukov
8d0aa4f7c0 improvements for kdbus 2015-10-15 17:59:01 +02:00
Dmitry Vyukov
2c6f92b113 describe setsockopt... more or less 2015-10-13 20:13:40 +02:00
Dmitry Vyukov
9706b099e7 describe sysfs and ioprio syscalls 2015-10-13 20:13:40 +02:00
Dmitry Vyukov
f6b48b1774 describe arguments of prctl syscall 2015-10-13 20:13:40 +02:00
Andrey Konovalov
87a42c4dc3 Add Makefile 2015-10-13 15:31:56 +02:00
Dmitry Vyukov
a02244e114 deduplicate coverare in executor
This allows to use larger coverage buffer
and not overflow output at the same time.
2015-10-13 15:29:07 +02:00
Dmitry Vyukov
874c5754bb initial commit 2015-10-12 10:16:57 +02:00