Re: [discuss] Re: [PATCH][Fix][Resend] Fix Bug #4959: Page tables corrupted during resume on x86-64 (take 3)

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

 



Hi,

On Saturday, 1 of October 2005 09:47, Rafael J. Wysocki wrote:
> On Saturday, 1 of October 2005 03:25, Siddha, Suresh B wrote:
]-- snip --[
> > I looked at init_apic_mappings() and didn't give me any clue.
> > alloc_bootmem_pages() don't use low direct mappings.
> 
> OK, I'll try to narrow this a bit more.

Done.

I got this from the early printk:

Bootdata ok (command line is root=/dev/hdc6 vga=792 selinux=0 noapic resume=/dev/hdc3 console=ttyS0,57600 console=tty0 debug earlyprintk=serial,tt
yS0,57600 init=/bin/bash)
Linux version 2.6.14-rc3 (rafael@chimera) (gcc version 3.3.5 20050117 (prerelease) (SUSE Linux)) #3 PREEMPT Sat Oct 1 10:54:55 CEST 2005
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
 BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 000000002ff40000 (usable)
 BIOS-e820: 000000002ff40000 - 000000002ff50000 (ACPI data)
 BIOS-e820: 000000002ff50000 - 0000000030000000 (ACPI NVS)
 BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
kernel direct mapping tables upto ffff8100fee01000 @ 8000-b000
  >>> ERROR: Invalid checksum
Nvidia board detected. Ignoring ACPI timer override.
ACPI: PM-Timer IO Port: 0x4008
Intel MultiProcessor Specification v1.1
    Virtual Wire compatibility mode.
PANIC: early exception rip ffffffff804c7467 error 0 cr2 fbd90

Call Trace:<ffffffff804c7467>{get_smp_config+695} <ffffffff804c9891>{paging_init+161}
       <ffffffff804c3b37>{acpi_parse_fadt+135} <ffffffff804d0b3a>{acpi_table_parse+76}
       <ffffffff804c19b7>{setup_arch+2183} <ffffffff804ba5fd>{start_kernel+45}
       <ffffffff804ba260>{_sinittext+608}

It shows that there's something wrong with get_smp_config(), but it shouldn't
have been called in the first place, as it was a non-SMP kernel.

The appended patch fixes the issue for me, but still if I run an SMP kernel on this
box, it crashes in get_smp_config().

If you want me to debug this further, please tell me what to do next.

Greetings,
Rafael


Signed-off-by: Rafael J. Wysocki <[email protected]>

Index: linux-2.6.14-rc3/arch/x86_64/kernel/mpparse.c
===================================================================
--- linux-2.6.14-rc3.orig/arch/x86_64/kernel/mpparse.c	2005-10-01 10:37:53.000000000 +0200
+++ linux-2.6.14-rc3/arch/x86_64/kernel/mpparse.c	2005-10-01 11:17:56.000000000 +0200
@@ -658,7 +658,7 @@
  */
 void __init find_smp_config (void)
 {
-#ifdef CONFIG_X86_LOCAL_APIC
+#if defined(CONFIG_SMP) && defined(CONFIG_X86_LOCAL_APIC)
 	find_intel_smp();
 #endif
 }
-
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