Date: Sat, 20 Apr 2013 06:51:06 -0500 From: Joshua Isom <jrisom@gmail.com> To: Jeremy Chadwick <jdc@koitsu.org> Cc: freebsd-hackers@freebsd.org Subject: Re: Rebooting from loader causes a "fault" in VMware Workstation Message-ID: <5172812A.10309@gmail.com> In-Reply-To: <20130420014821.GA98555@icarus.home.lan> References: <20130419162834.GA90217@icarus.home.lan> <5171C9FE.8080409@gmail.com> <20130420014821.GA98555@icarus.home.lan>
next in thread | previous in thread | raw e-mail | index | archive | help
On 4/19/2013 8:48 PM, Jeremy Chadwick wrote: > I'm happy to open up a ticket with VMware about the issue as I'm a > customer, but I find it a little odd that other operating systems do not > exhibit this problem, including another BSD. Ones which reboot just > fine from their bootloaders: > > - Linux -- so many that I don't know where to begin: ArchLinux > 2012.10.06, CentOS 6.3, Debian 6.0.7, Finnix 1.0.5, Knoppix 7.0.4, > Slackware 14.0, and Ubuntu 11.10 > - OpenBSD 5.2 > - OpenIndiana -- build 151a7 (server version) > > So when you say "Blame VMware", I'd be happy to, except there must be > something FreeBSD's bootstraps are doing differently than everyone else > that causes this oddity. Would you not agree? A triple fault is standard practice as a fail safe guarantee of reboot. It's used either as a reboot, switch to real mode(IBM OS/2), or catastrophic unrecoverable failure. By the looks of grub(Linux and Solaris), it either jumps to it's own instruction, hoping the bios catches it("tell the BIOS a boot failure, which may result in no effect"), or jumps to a location that I can't yet determine what code exists there. I can't seem to find OpenBSD's reboot method from OpenBSD's cvsweb, only an exit but not where that exit leads to. The native operating system is irrelevant, only the boot loader so all the Linux distributions and Solaris forks all count as "grub." Many other bootloaders don't even have the reboot option, just "fail." Here's barebox, a Das U-Boot fork: /** How to reset the machine? */ while(1) In any case, it's a bag of tricks, finding something that works and is "nice." We're talking 30 years of legacy. A triple fault, assuming the mbr and loader ignores or zeroes previous memory, is guaranteed and doesn't hang.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5172812A.10309>