Currently, twait just checks if that vthread is stopped, if it isn't, current vthread is put into 'sleeping' state and IP is not advanced, so next time current vthread gets executed, it will check again. If (nearly) all of your vthreads execute twait, you get 100% busy host CPU dying in 'is that vt stopped?' checks. Clearly, twait needs an event based resuming. But my tries to do event based sleep/resume failed because host was dying in locks.