diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2018-07-25 16:45:57 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2018-08-03 21:08:02 +0200 |
| commit | 2763e04c22143367e0b613ac612c537b6d94d2c9 (patch) | |
| tree | f311d8215aa6e148c0db2e7bfface5d10b0654af /sys/linux/test | |
| parent | 78e3ad98f6120342ae56b9812c695637fc245c75 (diff) | |
tools/syz-runtest: add tool for program unit testing
The tool is run as:
$ syz-runtest -config manager.config
This runs all programs from sys/*/test/* in different modes
on actual VMs and checks results.
Fixes #603
Diffstat (limited to 'sys/linux/test')
| -rw-r--r-- | sys/linux/test/fd_assignment | 9 | ||||
| -rw-r--r-- | sys/linux/test/fuse_deadlock | 11 | ||||
| -rw-r--r-- | sys/linux/test/pipe | 3 | ||||
| -rw-r--r-- | sys/linux/test/vnet_tun | 2 |
4 files changed, 25 insertions, 0 deletions
diff --git a/sys/linux/test/fd_assignment b/sys/linux/test/fd_assignment new file mode 100644 index 000000000..0aa82a8b2 --- /dev/null +++ b/sys/linux/test/fd_assignment @@ -0,0 +1,9 @@ +# Tests that fd's are always allocated starting from 3. + +close(0x3) # EBADF +close(0x4) # EBADF +close(0x5) # EBADF +pipe(&(0x7f0000000000)={<r0=>0x0, <r1=>0x0}) +close(0x3) +close(0x4) +close(0x5) # EBADF diff --git a/sys/linux/test/fuse_deadlock b/sys/linux/test/fuse_deadlock new file mode 100644 index 000000000..2c24cf53a --- /dev/null +++ b/sys/linux/test/fuse_deadlock @@ -0,0 +1,11 @@ +# Test for deadlock in fuse. +# Some calls are commented out for now, because it actually deadlocks kernel. + +mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) +r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000000640)='/dev/fuse\x00', 0x2, 0x0) +mount$fuse(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f0000000300)='fuse\x00', 0x0, &(0x7f0000000400)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}, 0x2c, {'user_id', 0x3d}, 0x2c, {'group_id', 0x3d}, 0x2c}) +#read$FUSE(r0, &(0x7f0000002000), 0x1000) +#pread64(r0, &(0x7f0000000540)=""/236, 0xec, 0x0) +#write$FUSE_INIT(r0, &(0x7f0000000100)={0x50, 0x0, 0x1, {0x7, 0x1b}}, 0x50) +#mkdirat(0xffffffffffffff9c, &(0x7f0000000500)='./file0/file0\x00', 0x0) +#write$FUSE_NOTIFY_INVAL_ENTRY(r0, &(0x7f00000000c0)={0x29, 0x3, 0x0, {0x1, 0x8, 0x0, 'group_id'}}, 0x29) diff --git a/sys/linux/test/pipe b/sys/linux/test/pipe new file mode 100644 index 000000000..47daff19d --- /dev/null +++ b/sys/linux/test/pipe @@ -0,0 +1,3 @@ +pipe(&(0x7f0000000000)={<r0=>0x0, <r1=>0x0}) +close(r0) +close(r1) diff --git a/sys/linux/test/vnet_tun b/sys/linux/test/vnet_tun new file mode 100644 index 000000000..bb88fc9d6 --- /dev/null +++ b/sys/linux/test/vnet_tun @@ -0,0 +1,2 @@ +syz_emit_ethernet() +syz_emit_ethernet() |
