From e16e2c9a4cb6937323e861b646792a6c4c978a3c Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 4 Jun 2024 12:55:41 +0200 Subject: executor: add runner mode Move all syz-fuzzer logic into syz-executor and remove syz-fuzzer. Also restore syz-runtest functionality in the manager. Update #4917 (sets most signal handlers to SIG_IGN) --- docs/internals.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'docs/internals.md') diff --git a/docs/internals.md b/docs/internals.md index 7d192b738..b4d893791 100644 --- a/docs/internals.md +++ b/docs/internals.md @@ -18,14 +18,13 @@ red labels indicate corresponding configuration options. It runs on a host with a stable kernel which does not experience white-noise fuzzer load. -`syz-manager` starts `syz-fuzzer` processes (one inside each VM). -`syz-fuzzer`s comminucate with `syz-manager` over RPC to receive the programs +`syz-manager` starts `syz-executor` processes (one inside each VM). +`syz-executor`s comminucate with `syz-manager` over RPC to receive the programs that must be executed and to report back the results (error statuses, collected coverage, etc.). -To execute programs, `syz-fuzzer` starts transient `syz-executor` processes. +To execute programs, `syz-executor` starts transient subprocesses. -Each `syz-executor` process executes a single input (a sequence of syscalls). -It accepts the program to execute from the `syz-fuzzer` process and sends results back. +Each transient subprocess executes a single input (a sequence of syscalls). It is designed to be as simple as possible (to not interfere with fuzzing process), written in C++, compiled as static binary and uses shared memory for communication. -- cgit mrf-deployment