qemu-patch-raspberry4/tests/qtest/fuzz
Alexander Bulekov 993f52f4d4 fuzz: adjust timeout to allow for longer inputs
Using a custom timeout is useful to continue fuzzing complex devices,
even after we run into some slow code-path. However, simply adding a
fixed timeout to each input effectively caps the maximum input
length/number of operations at some artificial value. There are two
major problems with this:
1. Some code might only be reachable through long IO sequences.
2. Longer inputs can actually be _better_ for performance. While the
   raw number of fuzzer executions decreases with larger inputs, the
   number of MMIO/PIO/DMA operation/second actually increases, since
   were are speding proportionately less time fork()ing.

With this change, we keep the custom-timeout, but we renew it, prior to
each MMIO/PIO/DMA operation. Thus, we time-out only when a specific
operation takes a long time.

Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
2021-09-01 07:33:13 -04:00
..
fork_fuzz.c fuzz: do not use POSIX shm for coverage bitmap 2020-07-06 07:37:02 +02:00
fork_fuzz.h fuzz: support for fork-based fuzzing. 2020-02-22 08:26:48 +00:00
fork_fuzz.ld fuzz: Make fork_fuzz.ld compatible with LLVM's LLD 2020-11-10 08:51:30 +01:00
fuzz.c tests/qtest/fuzz: Fix build failure 2021-05-26 14:49:46 +02:00
fuzz.h Clean up includes 2020-12-10 17:16:44 +01:00
generic_fuzz.c fuzz: adjust timeout to allow for longer inputs 2021-09-01 07:33:13 -04:00
generic_fuzz_configs.h fuzz: Avoid deprecated misuse of -drive if=sd 2021-03-19 15:18:43 +01:00
i440fx_fuzz.c meson: link emulators without Makefile.target 2020-08-21 06:30:40 -04:00
meson.build fuzz: add virtio-blk fuzz target 2020-11-10 08:51:30 +01:00
qos_fuzz.c Do not include exec/address-spaces.h if it's not really necessary 2021-05-02 17:24:51 +02:00
qos_fuzz.h Remove leading underscores from QEMU defines 2021-06-21 05:49:01 +02:00
qtest_wrappers.c meson: link emulators without Makefile.target 2020-08-21 06:30:40 -04:00
virtio_blk_fuzz.c fuzz: add virtio-blk fuzz target 2020-11-10 08:51:30 +01:00
virtio_net_fuzz.c meson: link emulators without Makefile.target 2020-08-21 06:30:40 -04:00
virtio_scsi_fuzz.c meson: link emulators without Makefile.target 2020-08-21 06:30:40 -04:00