From: gimli <gi...@da...> - 2006-03-04 19:04:14
|
Hi. Do you have any idea why the kernel crashes on machines with more then 512 MB ram ? cu gimli Matthew Garrett wrote: > 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 <mj...@sr...> > > 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); > |