Mike Larkin wrote: > On Tue, Jul 18, 2017 at 09:36:12PM -0700, Max Parmer wrote: > > > > >Synopsis: OpenBSD guest hangs in vmd on -current host > > >Category: system > > >Environment: > > System : OpenBSD 6.1 > > Details : OpenBSD 6.1-current (GENERIC.MP) #99: Mon Jul 17 16:53:49 > > MDT 2017 > > > > [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP > > > > Architecture: OpenBSD.amd64 > > Machine : amd64 > > >Description: > > When running an OpenBSD guest under vmd after a short time the guest > > will hang, the > > corresponding vmd process will hit and stay at 99.9% CPU usage. > > > > Examination with ktrace shows a pattern similar to the past reports > > from tedu@[1] and > > Gregor Best[2] with the process spinning on kevent and gettime, excerpt: > > 15607 vmd RET kevent 1 > > 15607 vmd CALL clock_gettime(CLOCK_MONOTONIC,0x121dae4dbd20) > > > > 15607 vmd STRU struct timespec { 20180.643241450 } > > > > 15607 vmd RET clock_gettime 0 > > 15607 vmd CALL kevent(5,0,0,0x121da5f22000,64,0x121dae4dbcf0) > > > > 15607 vmd STRU struct timespec { 0.002255000 } > > > > I first encountered this issue on the snapshot from Jul 15th and was > > able to reproduce > > several times under that snapshot and the subsequent snapshots from the > > 16th and 17th. > > > > Typically the VM will run normally for a short time before hanging, and > > it seems to > > occur both with /bsd and /bsd.rd. Typing seems to trigger it. > > > > I bet I botched this with the serial port "improvement" done last month. I'll > take a look tonight, thanks for the info.
to perhaps give you a hint, it looks, from the outside, like there's a byte to be read, but vmd is in the "don't want bytes now" state, but has gotten out of sync with libevent, which keeps calling the byte ready function, which keeps doing nothing. but that's blind stabbing.
