Re: [PATCH] /sys/firmware/efi/systab giving incorrect value for smbios

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Or, as an alternative, remove the virtual to physical mapping that 
efivars does. This requires fixing up IA64 to match. I've no idea which 
approach is right.

Signed-off-by: Matthew Garrett <[email protected]>

diff --git a/drivers/firmware/efivars.c b/drivers/firmware/efivars.c
index bda5bce..ba598af 100644
--- a/drivers/firmware/efivars.c
+++ b/drivers/firmware/efivars.c
@@ -575,7 +575,7 @@ systab_read(struct subsystem *entry, cha
 	if (efi.acpi)
 		str += sprintf(str, "ACPI=0x%lx\n", __pa(efi.acpi));
 	if (efi.smbios)
-		str += sprintf(str, "SMBIOS=0x%lx\n", __pa(efi.smbios));
+		str += sprintf(str, "SMBIOS=0x%lx\n", efi.smbios);
 	if (efi.hcdp)
 		str += sprintf(str, "HCDP=0x%lx\n", __pa(efi.hcdp));
 	if (efi.boot_info)
diff --git a/arch/ia64/kernel/efi.c b/arch/ia64/kernel/efi.c
index a3aa45c..ff3795b 100644
--- a/arch/ia64/kernel/efi.c
+++ b/arch/ia64/kernel/efi.c
@@ -451,7 +451,7 @@ efi_init (void)
 			efi.acpi = __va(config_tables[i].table);
 			printk(" ACPI=0x%lx", config_tables[i].table);
 		} else if (efi_guidcmp(config_tables[i].guid, SMBIOS_TABLE_GUID) == 0) {
-			efi.smbios = __va(config_tables[i].table);
+			efi.smbios = config_tables[i].table;
 			printk(" SMBIOS=0x%lx", config_tables[i].table);
 		} else if (efi_guidcmp(config_tables[i].guid, SAL_SYSTEM_TABLE_GUID) == 0) {
 			efi.sal_systab = __va(config_tables[i].table);

-- 
Matthew Garrett | [email protected]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux