[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <4A5210A2.2080301@fisher-privat.net>
Date: Mon, 06 Jul 2009 16:56:34 +0200
From: Alexey Fisher <bug-track@...her-privat.net>
To: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Kernel Testers List <kernel-testers@...r.kernel.org>,
"Richard A. Holden III" <aciddeath@...il.com>,
Ingo Molnar <mingo@...e.hu>
Subject: Intel BIOS - Corrupted low memory at ffff880000004200
Hallo Ingo, Richard.
I'm getting "Corrupted low memory" trace with my Intel DG45ID board
after resume. This board has different dmi-bios-vendor... so probably
it will be nice to have it in your patch.
Here is trace after resume:
===============================================
[ 600.816088] Corrupted low memory at ffff880000004200 (4200 phys) =
00420301
[ 600.816093] ------------[ cut here ]------------
[ 600.816100] WARNING: at arch/x86/kernel/check.c:134
check_for_bios_corruption+0xe4/0xf0()
[ 600.816102] Hardware name:
[ 600.816103] Memory corruption detected in low memory
[ 600.816105] Modules linked in: nls_iso8859_1 nls_cp437 vfat fat
binfmt_misc kvm_intel kvm snd_hda_codec_intelhdmi snd_hda_codec_idt
snd_hda_intel snd_hda_codec snd_pcm_oss snd_mixer_oss snd_pcm
snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event
snd_seq snd_timer snd_seq_device snd psmouse soundcore e1000e serio_raw
iTCO_wdt iTCO_vendor_support snd_page_alloc
[ 600.816129] Pid: 9, comm: events/0 Tainted: G W
2.6.31-rc1-25446-g1ae8c0a #1
[ 600.816131] Call Trace:
[ 600.816136] [<ffffffff8104a8e8>] warn_slowpath_common+0x78/0xb0
[ 600.816139] [<ffffffff8104a97c>] warn_slowpath_fmt+0x3c/0x40
[ 600.816142] [<ffffffff8102aff4>] check_for_bios_corruption+0xe4/0xf0
[ 600.816145] [<ffffffff8102b000>] ? check_corruption+0x0/0x30
[ 600.816148] [<ffffffff8102b009>] check_corruption+0x9/0x30
[ 600.816152] [<ffffffff8105e4d4>] worker_thread+0x144/0x260
[ 600.816155] [<ffffffff810635c0>] ? autoremove_wake_function+0x0/0x40
[ 600.816158] [<ffffffff8105e390>] ? worker_thread+0x0/0x260
[ 600.816161] [<ffffffff810631e6>] kthread+0x96/0xa0
[ 600.816165] [<ffffffff8100c69a>] child_rip+0xa/0x20
[ 600.816168] [<ffffffff81063150>] ? kthread+0x0/0xa0
[ 600.816171] [<ffffffff8100c690>] ? child_rip+0x0/0x20
[ 600.816173] ---[ end trace 03ff161c20a96dae ]---
=====================================================================
result of "dmidecode -s bios-vendor" is "Intel Corp."
here is patch against latest git. It's working fine with my board.
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index de2cab1..89d00e2 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -672,6 +672,13 @@ static struct dmi_system_id __initdata
bad_bios_dmi_table[] = {
DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies"),
},
},
+ {
+ .callback = dmi_low_memory_corruption,
+ .ident = "Intel BIOS",
+ .matches = {
+ DMI_MATCH(DMI_BIOS_VENDOR, "Intel Corp."),
+ },
+ },
#endif
{}
};
In attachment you can see dmesg before bios patch and after.
View attachment "dmesg_after_w_drm_patch" of type "text/plain" (58399 bytes)
View attachment "dmesg_after_bios_patch" of type "text/plain" (56794 bytes)
Powered by blists - more mailing lists