Dmitry Vyukov
be856bc9e4
allow local vm to not call setuid (not necessary if started not under root)
2015-11-18 16:30:29 +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
3716eb3830
format go files simpler
2015-11-10 20:32:03 +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
760fa7e724
go fmt
2015-11-10 14:32:37 +01:00
Dmitry Vyukov
54af41532d
merge execlog and execprog tools
...
Functionality was duplicated to significant degree.
Now execprog can do all execlog could do.
2015-11-10 13:56:10 +01:00
Dmitry Vyukov
18220dd54e
support parallel execution in stress utility
2015-11-10 13:38:08 +01:00
Dmitry Vyukov
d2c7f41bb0
fix ssh when you have too many keys
...
IdentitiesOnly=yes disables sending of irrelevant keys
2015-11-09 11:28:26 +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
1334407ba4
reduce number of indirections in syscall description by using consts
2015-11-06 21:51:19 +01:00
Dmitry Vyukov
53d18c7596
describe keyctl syscall
2015-11-06 21:51:19 +01:00
Dmitry Vyukov
7ae6489b27
increase saved context size for crash logs
...
A bug can be caused by earlier programs,
so it is useful to be able to see them.
2015-11-06 21:51:19 +01:00
Dmitry Vyukov
bb15aa8bfd
fix crash output
2015-11-06 21:51:19 +01:00
Dmitry Vyukov
b95ad23cfe
Update README.md
2015-11-05 19:44:47 +01:00
Dmitry Vyukov
54d87b89ea
enable dropprivs in fuzzer
2015-11-05 10:31:05 +01:00
Dmitry Vyukov
a7d2a521f3
support dropprivs in execlog/execprog
2015-11-05 10:30:39 +01:00
Dmitry Vyukov
f563cc395b
minor improvements for kvm
2015-11-05 10:30:08 +01:00
Dmitry Vyukov
786414e8e9
don't emit unnecessary info into crash log
...
This was necessary because there was a bug in log offset calculation.
Not the bug is fixed and the additional output makes it harder to grep logs.
2015-11-04 20:23:48 +01:00
Dmitry Vyukov
9ef3f5494e
fix crash report extraction from logs
2015-10-20 17:44:56 +02:00
Dmitry Vyukov
9c10c5a1fb
fix crash report extraction from logs
2015-10-20 17:43:56 +02:00
Dmitry Vyukov
0750245eea
experimental functionality to impersonate nobody user in executor
2015-10-20 17:43:02 +02:00
Dmitry Vyukov
8264f54f5e
improve lkvm support (still does not quite work)
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
727e8240ff
read corpus from a zip archive in stress tool
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
e9cf3f5aa1
minor tweaks to program generation heuristics
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
b0a24e2466
don't generate pthread(PTRACE_TRACEME) due to a known issue
2015-10-20 15:46:04 +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
304c1de389
add threaded and timeout flags to execlog
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
a8c682fe99
dump executor output directly to console when debug
...
Otherwise there is no way to see the output if executor hangs dead.
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
505473bd9b
allow to specify timeout in execprog
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
74f5340ea6
allow to run local vm without coverage
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
30c9c31819
refactor enabled syscall handling
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
95fb739d94
aggregate vm params into a single struct (for ease of extension)
2015-10-20 15:46:04 +02:00
Dmitry Vyukov
3f6daab6e4
Update README.md
2015-10-19 10:55:34 +02:00
Dmitry Vyukov
62ed8ca7b6
don't trim programs on syscall that gives new coverage
...
Threaded execution mode can execute following syscalls and they can affect
coverage of the call in question. Trimming should be handled by minimization.
2015-10-16 22:35:16 +02:00
Dmitry Vyukov
fb190a7fb9
remove ability to execute tests in parallel in fuzzer
...
it consumes more memory and makes it difficult to find crashing input
2015-10-16 22:21:02 +02:00
Dmitry Vyukov
cd51d417c6
allow to not specify enabled syscalls in prog.BuildChoiceTable
2015-10-16 22:10:51 +02:00
Dmitry Vyukov
6d84c5d2d7
add mutate tool that allows to manually investigate mutator behavior
2015-10-16 22:00:16 +02:00
Dmitry Vyukov
f8f416fb8f
preliminary description of kdbus syscalls
2015-10-16 18:16:10 +02:00
Dmitry Vyukov
587db99baa
lkvm support
2015-10-16 13:33:24 +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
2971d4d4e0
allow to omit -kernel flag in vm/qemu
...
For the case when image already contains the right kernel.
2015-10-15 17:59:01 +02:00
Dmitry Vyukov
7a72606565
allow to specify additional kernel command line arguments in vm/qemu
2015-10-15 17:59:01 +02:00
Dmitry Vyukov
7d43052166
Update README.md
2015-10-14 20:11:53 +02:00
Dmitry Vyukov
c9b915608d
initial support for call priorities
2015-10-14 16:55:09 +02:00
Dmitry Vyukov
38493312da
allow to specify parallelism level in tools/execlog
2015-10-14 10:54:04 +02:00
Dmitry Vyukov
78514887ec
clean up temp files in tools/execprog
2015-10-14 10:53:46 +02:00
Dmitry Vyukov
9f8e5038cf
teach prog about in6_addr
2015-10-13 21:24:22 +02:00