Len, * Len Brown <lenb@xxxxxxxxxx> [100120 06:21]: > On Thu, 7 Jan 2010, Christian Hofstaedtler wrote: > > Thanks for writing this patch Christian, > it is something that has been unsettled for > a long time and it will be great to close the issue. > > > Newer hardware is assumed to no longer reboot succesfully using the > > keyboard controller, but needs to use ACPI instead. > > To not cause problems with older hardware, only hardware with a BIOS > > date 2006 or newer is considered for this choice. Broken BIOSes > > reporting a BIOS date of 0 are not specially considered, and therefore > > get the KBD reboot behaviour. > > > > Also unifiy reboot_type selection code. > > Please split the patch in two patches: > > 1. cleanup w/o policy change > 2. policy change w/o cleanup > > better if the policy change is #2, so if we need to revert it > we don't have to revert the cleanup too. Please find the splitted patch in reply to your mail. > > Signed-off-by: Christian Hofstaedtler <ch@xxxxxxx> > > --- > > arch/x86/include/asm/emergency-restart.h | 1 + > > arch/x86/kernel/reboot.c | 65 ++++++++++++++++++++++++------ > > 2 files changed, 53 insertions(+), 13 deletions(-) > > > > +/* See if the Hardware is new enough to support ACPI reboots. */ > > +static int __init reboot_acpi_likey_supported(void) > > +{ > > + int year; > > + > > + /* Doesn't exist? Likely an old system */ > > + if (!dmi_get_date(DMI_BIOS_DATE, &year, NULL, NULL)) { > > + return 0; > > + } > > I think it may be better to simply return 1 in this case. > > While we have seen dmi_get_date() fail in practice on "modern" machines, > if CONFIG_ACPI_BLACKLIST_YEAR is set, we will already punish users by > disabling ACPI and making them invoke acpi=force. > > So the effect of this check is to disable ACPI-reset > on systems where the user has likely already invoked acpi=force -- > which seems somewhat counter-intuitive. Okay; I've also re-added the check for year==0, so these machines get the same behaviour. > > + /* 2006 was decided as the cut-off year. */ > > + if (year < 2006) { > > + return 0; > > + } > > I'd rather see 2003. > If we run into trouble, it is a 1-liner to move it forward. > But I think we'll probably do fine with anything newer than 2001. Made this 2003. > thanks, > Len Brown, Intel Open Source Technolgy Center Christian -- christian hofstaedtler -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html