aboutsummaryrefslogtreecommitdiffstats
path: root/executor/syscalls_akaros.h
Commit message (Collapse)AuthorAgeFilesLines
* executor: overhaulDmitry Vyukov2018-07-241-228/+0
| | | | | | | | | | | | | | | | | 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.
* sys/akaros: add a bunch of global files for akarosDmitry Vyukov2018-07-161-2/+146
|
* sys/akaros: fix signatures of file syscallsDmitry Vyukov2018-07-161-1/+1
| | | | Most of them differ and accept path length and/or pid.
* sys/akaros: disable init_arsc syscallDmitry Vyukov2018-07-161-3/+2
| | | | It unconditionally crashes kernel now.
* sys/akaros: add all syscallsDmitry Vyukov2018-07-061-8/+43
|
* prog: detect when flags are a bitmaskDmitry Vyukov2018-06-301-1/+1
|
* executor: rework fallback coverageDmitry Vyukov2018-06-221-0/+2
| | | | | | | | | | We have fallback coverage implmentation for freebsd. 1. It's broken after some recent changes. 2. We need it for fuchsia, windows, akaros, linux too. 3. It's painful to work with C code. Move fallback coverage to ipc package, fix it and provide for all OSes.
* sys: mark output resources as optDmitry Vyukov2018-06-181-1/+1
| | | | | Mark output resources as opt in preparation for more precise constructor calculation.
* executor: make syscall table and number constantDmitry Vyukov2018-06-071-2/+2
| | | | | | | | | We see some crashes that suggest corruption of the syscall number: invalid command number 1296 (errno 11) invalid command number 107 (errno 110) Make the table and the number constant to prevent corruption.
* sys: move generate files to separate packagesDmitry Vyukov2018-05-051-1/+1
| | | | | | | | | 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
* gometalinter: enable package comment checkingDmitry Vyukov2018-05-031-1/+1
| | | | Update #538
* pkg/compiler: don't assign call IDs staticallyDmitry Vyukov2018-02-251-1/+1
| | | | | | IDs change whenever a call is added or removed, this leads to large diffs unnecessarly. Assign IDs dynamically.
* prog: rework address allocationDmitry Vyukov2018-02-191-1/+4
| | | | | | | | | | | | 1. mmap all memory always, without explicit mmap calls in the program. This makes lots of things much easier and removes lots of code. Makes mmap not a special syscall and allows to fuzz without mmap enabled. 2. Change address assignment algorithm. Current algorithm allocates unmapped addresses too frequently and allows collisions between arguments of a single syscall. The new algorithm analyzes actual allocations in the program and places new arguments at unused locations.
* sys/syz-sysgen: don't generate syz_ syscall numbersDmitry Vyukov2018-01-131-1/+0
| | | | They don't seem to be used today.
* pkg/compiler: support void typeDmitry Vyukov2018-01-131-1/+1
| | | | | | "void": type with static size 0 mostly useful inside of templates and varlen unions can't be syscall argument
* executor: improvements for akarosDmitry Vyukov2017-10-171-3/+2
| | | | | | | 1. remove workaround for pthread attrs (was fixed in akaros) 2. remove workaround for dup2 (was fixed in akaros) 3. check that we receive a program 4. implement timeout for test processes
* sys/akaros: add akaros supportDmitry Vyukov2017-10-161-0/+47