Re: [BUG] x86: reboot doesn't reboot

From: Ingo Molnar
Date: Fri Apr 04 2014 - 13:34:46 EST



* Matthew Garrett <mjg59@xxxxxxxxxxxxx> wrote:

> On Fri, Apr 04, 2014 at 08:13:48AM -0700, H. Peter Anvin wrote:
> > On 04/04/2014 08:12 AM, Matthew Garrett wrote:
> > > On Fri, Apr 04, 2014 at 09:27:48AM +0800, Li, Aubrey wrote:
> > >
> > >> The current situation is,
> > >> - we have one(do we know more?) preproduction machine hangs by CF9.
> > >> - We have more than one(could be thousand known) production machine
> > >> works by CF9.
> > >
> > > Production hardware should never require CF9.
> > >
> >
> > There are a lot of things that shouldn't be.
>
> Windows doesn't hit CF9, and production hardware is always tested with
> Windows, so. [...]

So why the hell does the reboot function comment claim that the
Windows reboot sequence (which is the de facto hardware standard)
uses 0xcf9:

/*
* Windows compatible x86 hardware expects the following on reboot:
*
* 1) If the FADT has the ACPI reboot register flag set, try it
* 2) If still alive, write to the keyboard controller
* 3) If still alive, write to the ACPI reboot register again
* 4) If still alive, write to the keyboard controller again
* 5) If still alive, call the EFI runtime service to reboot
* 6) If still alive, write to the PCI IO port 0xCF9 to reboot
* 7) If still alive, inform BIOS to do a proper reboot
*

??

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/