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

From: Matthew Garrett
Date: Sun Mar 02 2014 - 18:12:19 EST


On Mon, Mar 03, 2014 at 06:45:15AM +0800, Li, Aubrey wrote:

> One example in my hand is, 32bit windows calls 32bit EFI firware, so
> reboot works. However, I installed 64bit linux on this 32bit EFI
> machine, so none of ACPI/KBD/EFI works.

Yes. The correct fix for that is to ensure that the 64-bit kernel can
make 32-bit runtime services calls.

> Other cases even if we figured out why ACPI/KBD/EFI don't work, we still
> have to make our change in the linux kernel, because we can't change
> firmware.

That's correct, yes. If Windows is able to reboot the system and Linux
is not, then that's a bug in the Linux kernel.

> So, if you are still suggesting we add EFI only, please let me know your
> plan about adding dmidecode table and if it's acceptable to add new
> tables, I have three waiting: ASUS-T100, Dell Venue 8 Pro, and Dell
> Venue 11 Pro.

I don't think it's acceptable to add DMI entries to the reboot table. I
think you should add the EFI call (since we expect that to work now),
and I have no objection to adding cf9 to the end of the list if we have
standard PCI io ports (Windows doesn't do it, but we can hardly make
things worse).

--
Matthew Garrett | mjg59@xxxxxxxxxxxxx
--
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/