On 04/28/2017 11:09 AM, Dr. David Alan Gilbert wrote: >>> At a higher level, using your tags, I'm not sure where a reset triggered >>> by a fault detected by the hypervisor lives - e.g. an x86 triple fault >>> where the guest screws up so badly that it just gets reset. Is >>> that a guest-reset or a guest-panic or what - neither case >>> was actually asked for by the guest itself. >> >> Wouldn't that be host-error (qemu detected an error that prevents >> further execution of the guest without a reset - and a triple fault >> seems to fall into the category of the guest getting itself wedged >> rather than actually trying to reset)? Except patch 3 only used >> SHUTDOWN_TYPE_HOST_ERROR in the xen portion of the patch. >> >> So if any x86 expert has an opinion on where triple-fault handling is >> emulated, and what category should be used there, I'm welcome to >> tweaking this series. > > It's pretty much on the border anyway, I don't think it matters too > much; it sounds perfectly reasonable.
Actually, reading https://blogs.msdn.microsoft.com/larryosterman/2005/02/08/faster-syscall-trap-redux/ makes it sound like the triple-fault = reset is exploited by existing OS (dating back to days of targetting 286 machines), so it is bare-metal behavior that we have to faithfully emulate as a guest-triggered reset, and not something where the guest has wedged itself to the point where qemu can no longer execute the guest. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature