--- a/arch/x86/kernel/setup.c 2009-02-08 15:37:27.000000000 -0500 +++ b/arch/x86/kernel/setup.c 2009-03-01 01:09:41.000000000 -0500 @@ -770,10 +770,6 @@ void __init setup_arch(char **cmdline_p) finish_e820_parsing(); - dmi_scan_machine(); - - dmi_check_system(bad_bios_dmi_table); - /* * VMware detection requires dmi to be available, so this * needs to be done after dmi_scan_machine, for the BP. @@ -792,6 +788,10 @@ void __init setup_arch(char **cmdline_p) if (efi_enabled) efi_init(); + dmi_scan_machine(); + + dmi_check_system(bad_bios_dmi_table); + #ifdef CONFIG_X86_32 if (ppro_with_ram_bug()) { e820_update_range(0x70000000ULL, 0x40000ULL, E820_RAM,