aboutsummaryrefslogtreecommitdiffstats
path: root/syz-manager
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2024-09-09 14:58:09 +0200
committerAleksandr Nogikh <nogikh@google.com>2024-09-10 07:48:30 +0000
commit2ee7713dc5bbcc1972f75a1083a7e4d777c45f63 (patch)
tree30f2cd74df248d6a914df1d99e01fa457a02fd59 /syz-manager
parentf8059e89cd5e73f80a7afa159736c7f230d8aed7 (diff)
pkg/rpcserver, syz-manager: always include the program from Comm
It does sometimes happen that the kernel is crashed so fast that syz-manager is not notified that the syz-executor has started running the faulty input. In cases when the exact program is known from Comm, let's make sure it's always present in the log of the last executed programs.
Diffstat (limited to 'syz-manager')
-rw-r--r--syz-manager/manager.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/syz-manager/manager.go b/syz-manager/manager.go
index 4b89277d4..c090d1a0d 100644
--- a/syz-manager/manager.go
+++ b/syz-manager/manager.go
@@ -518,7 +518,11 @@ func (mgr *Manager) fuzzerInstance(ctx context.Context, inst *vm.Instance, updIn
// This litters the log and we want to prevent it.
serv.StopFuzzing(inst.Index())
}))
- lastExec, machineInfo := serv.ShutdownInstance(inst.Index(), rep != nil)
+ var extraExecs []report.ExecutorInfo
+ if rep != nil && rep.Executor != nil {
+ extraExecs = []report.ExecutorInfo{*rep.Executor}
+ }
+ lastExec, machineInfo := serv.ShutdownInstance(inst.Index(), rep != nil, extraExecs...)
if rep != nil {
rpcserver.PrependExecuting(rep, lastExec)
if len(vmInfo) != 0 {