Issue
After upgrading my Mac to Catalina, I can't use qemu anymore. Whenever I try to start it, it just hangs. The menu bar also doesn't respond while the qemu window is active.
Running qemu-system-i386 --help
does work though.
Qemu version: 4.1.0
Edit: Passing -nographic
fixes the issue.
Solution
This is the result of a change in behaviour in Catalina which breaks an assumption in the design of the QEMU Cocoa front-end. We've put in a change to the QEMU code (upstream git commit dff742ad27efa474) which avoids the hang; this will be in the upcoming QEMU 4.2 release. In the meantime a workaround is to avoid the Cocoa frontend (eg using -nographic to turn off graphics altogether, or using one of the other display frontends like VNC or Spice).
(The technical detail of the Catalina behaviour change is that NSApplicationDelegate::applicationDidFinishLaunching documents that it is called before any events are processed [ https://developer.apple.com/documentation/appkit/nsapplicationdelegate/1428385-applicationdidfinishlaunching ] and this was true in older versions of OSX, but in Catalina at least one event is sent to the app before applicationDidFinishLaunching, which triggered a deadlock in QEMU.)
A feedback report has apparently been filed with Apple about the OSX behaviour change, bug number FB7380815.
Answered By - Peter Maydell
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.