Re: [patch] x86: Introduce BOOT_EFI and BOOT_CF9 into the reboot sequence loop

From: Li, Aubrey
Date: Sat Mar 01 2014 - 20:47:23 EST


On 2014/3/2 8:33, H. Peter Anvin wrote:
> On 03/01/2014 04:26 PM, Li, Aubrey wrote:
>>>
>>> On March 1, 2014 12:21:39 PM PST, Matthew Garrett <mjg59@xxxxxxxxxxxxx> wrote:
>>>> if we've hit the keyboard controller and ACPI twice, and the system is still alive, and
>>>> if we have standard PCI ports,
>>
>>>> it doesn't seem like poking them is likely to make anything actively
>> worse.
>>>
>> This is exactly what I'm trying to express. thanks Matt. It doesn't make
>> anything worse, it makes reboot working on some systems.
>>
>> On 2014/3/2 4:26, H. Peter Anvin wrote:
>>> True... trying cf9_cond with low priority probably makes sense.
>>
>> I'm not asking CF9 only, I'm asking all of the known method in reboot.c.
>> So, BIOS is appliable as well with the same logic and with low priority,
>> isn't it?
>>
>
> The problem comes in when a method doesn't just not work, but hangs the
> machine.

If we don't do this, the machine hangs there as well. Again, we does not
make things worse.

> BIOS *WILL* hang the machine if it doesn't work. CF9 has been
> known to hang the machine.
>

Since we are not able to make things worse, let's make it better. So
Let's dig into this. For the machine hangs by CF9, it's known to work by
KBD, right? For the machine hangs by BIOS, do you know which method will
make reboot work?

The answer will determine the sequence of the list. If BIOS hangs but
either of ACPI/KBD/EFI/CF9 works, BIOS is behind of those ways. If BIOS
hangs, no any other way can make it work. BIOS is still the last way.

If CF9 hangs while ACPI/KBD hangs as well, and BIOS happened to work(do
we really have one?), the above list still doesn't make things worse,
reboot=b and dmidecode table still work.

Thanks,
-Aubrey
--
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/