On Tue, Oct 19, 2021 at 02:57:46PM +0100, Stefan Hajnoczi wrote: > On Thu, Oct 14, 2021 at 04:32:23AM +0000, Raphael Norwitz wrote: > > The vhost-user-blk-test qtest has been hanging intermittently for a > > while. The root cause is not yet fully understood, but the hang is > > impacting enough users that it is important to merge a workaround for > > it. > > > > The race which causes the hang occurs early on in vhost-user setup, > > where a vhost-user message is never received by the backend. Forcing > > QEMU to wait until the storage-daemon has had some time to initialize > > prevents the hang. Thus the existing storage-daemon pidfile option can > > be used to implement a workaround cleanly and effectively, since it > > creates a file only once the storage-daemon initialization is complete. > > > > This change implements a workaround for the vhost-user-blk-test hang by > > making QEMU wait until the storage-daemon has written out a pidfile > > before attempting to connect and send messages over the vhost-user > > socket. > > > > Some relevent mailing list discussions: > > > > [1] > > https://lore.kernel.org/qemu-devel/CAFEAcA8kYpz9LiPNxnWJAPSjc=nv532bedyfynabemeohqb...@mail.gmail.com/ > > [2] > > https://lore.kernel.org/qemu-devel/YWaky%2FKVbS%2FKZjlV@stefanha-x1.localdomain/ > > I sent a fix for the hang so the workaround is no longer needed: > "[PATCH] vhost-user-blk-test: pass vhost-user socket fds to QSD" > > Stefan
Woot! Thanks a bunch Stefan! Great job debugging this! -- MST