Discussion:
[vbox-dev] [PATCH RFC] Change triple fault reset behavior to reset guest
Jeff Westfahl
2014-04-10 17:15:15 UTC
Permalink
Here's a patch that changes the behavior of the "triplefaultreset" option
to reset the whole guest instead of resetting the CPU. In my testing of
Phar Lap ETS with VirtualBox, the current implementation of
triplefaultreset is unreliable, and isn't supported at all in SMP guests.
For a UP Phar Lap ETS guest, usually the guest hangs sometime before
executing the actual reset. Sometimes the reset is successful, but the
guest hangs during the boot process. Only occasionally, the reset is
succesful and the guest reboots successfully as well. In my testing with
this patch, the reset has been successful every time, in both UP and SMP
Phar Lap ETS guests.

Regards,

Jeff Westfahl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tfresetpatch.diff
Type: text/x-diff
Size: 2698 bytes
Desc:
Url : http://www.virtualbox.org/pipermail/vbox-dev/attachments/20140410/516d1f06/attachment.bin
Ed Maste
2014-04-10 19:00:31 UTC
Permalink
Here's a patch that changes the behavior of the "triplefaultreset" option to
reset the whole guest instead of resetting the CPU. In my testing of Phar
Lap ETS with VirtualBox, the current implementation of triplefaultreset is
unreliable, and isn't supported at all in SMP guests.
FreeBSD also has a fallback to a triple fault in case other reset
mechanisms fail. This sounds like a good change to me.
Jeff Westfahl
2014-04-10 19:46:14 UTC
Permalink
Unfortunately it sounds like other software expects only a CPU reset in
this case:

"Because that's not the way things work. There's software out there which
relies on a triple
fault only resetting the CPU and performing a warm reboot (and not really
resetting the
system at all)."
From https://forums.virtualbox.org/viewtopic.php?f=4&t=61163
From: Ed Maste <emaste at freebsd.org>
To: Jeff Westfahl <jeff.westfahl at ni.com>,
Cc: vbox-dev at virtualbox.org
Date: 04/10/2014 02:00 PM
Subject: Re: [vbox-dev] [PATCH RFC] Change triple fault reset behavior
to reset guest
Sent by: carpeddiem at gmail.com
Here's a patch that changes the behavior of the "triplefaultreset" option to
reset the whole guest instead of resetting the CPU. In my testing of Phar
Lap ETS with VirtualBox, the current implementation of
triplefaultreset is
unreliable, and isn't supported at all in SMP guests.
FreeBSD also has a fallback to a triple fault in case other reset
mechanisms fail. This sounds like a good change to me.
Loading...