Branch: refs/heads/gh-readonly-queue/master/pr-7451-c36c07f6c1f2230a36374cbd22235f635e8f9284
Home:
https://github.com/google/syzkaller
Commit: 34dab4be5c118c76aea929f2aa0c188548615110
https://github.com/google/syzkaller/commit/34dab4be5c118c76aea929f2aa0c188548615110
Author: Chuyang Wang <
chuy...@google.com>
Date: 2026-06-09 (Tue, 09 Jun 2026)
Changed paths:
M vm/vm.go
M vm/vm_test.go
Log Message:
-----------
vm: fix blocking select on nil outc channel in instance.Run
In mon.monitorExecution(), the monitor loops over a select statement
reading from the errc and outc channels. If a multiplexed VM finishes
execution, outc is closed and errc is written to.
If the monitor reads the outc closure first, it sets mon.outc = nil.
When it subsequently receives the exit status on errc, it calls
extractErrors(), which triggers waitForOutput(). If mon.outc is nil,
reading from it blocks permanently, causing a 10-second stall (or
3-second stall in tests) until the timeout expires.
Fix this by returning early from waitForOutput() if mon.outc is nil.
To unsubscribe from these emails, change your notification settings at
https://github.com/google/syzkaller/settings/notifications