於 日,2014-01-12 於 01:30 +0100,Rafael J. Wysocki 提到: > OK > > I don't see any adverse effects of the patch below on a couple of my > test > boxes, but (a) they are Intel-based and (b) they are non-EFI, so it > would be > good to give it a go on as many machines as reasonably possible. > > Thanks, > Rafael > > --- > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > Subject: ACPI / init: Run acpi_early_init() before > efi_enter_virtual_mode() > > According to Matt Fleming, if acpi_early_init() was executed befpre > efi_enter_virtual_mode(), the EFI initialization could benefit from > it, so make that happen. > > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > --- > init/main.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > Index: linux-pm/init/main.c > =================================================================== > --- linux-pm.orig/init/main.c > +++ linux-pm/init/main.c > @@ -615,6 +615,7 @@ asmlinkage void __init start_kernel(void > calibrate_delay(); > pidmap_init(); > anon_vma_init(); > + acpi_early_init(); > #ifdef CONFIG_X86 > if (efi_enabled(EFI_RUNTIME_SERVICES)) > efi_enter_virtual_mode(); > @@ -641,7 +642,6 @@ asmlinkage void __init start_kernel(void > > check_bugs(); > > - acpi_early_init(); /* before LAPIC and SMP init */ > sfi_init_late(); > > if (efi_enabled(EFI_RUNTIME_SERVICES)) { > > > This patch works to me on Acer Gateway Z5WT2 UEFI notebook and Intel UEFI development board. Does it possible move acpi_early_init() to before timekeeping_init()? The position is also before efi_enter_virtual_mode() and that will be useful for parsing ACPI TAD to set system clock: diff --git a/init/main.c b/init/main.c index febc511..b6d93c8 100644 --- a/init/main.c +++ b/init/main.c @@ -565,6 +565,7 @@ asmlinkage void __init start_kernel(void) init_timers(); hrtimers_init(); softirq_init(); + acpi_early_init(); timekeeping_init(); time_init(); sched_clock_postinit(); @@ -641,7 +642,6 @@ asmlinkage void __init start_kernel(void) check_bugs(); - acpi_early_init(); /* before LAPIC and SMP init */ sfi_init_late(); if (efi_enabled(EFI_RUNTIME_SERVICES)) { Thanks a lot! Joey Lee -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html