ext3 SMP bug ? PANIC in __d_find_alias

From: Mitch
Date: Wed Dec 12 2007 - 08:08:39 EST


Can anyone help with this ? This seems to be a true SMP bug - the same kernel on another UP machine is working fine (although different h/w). Seems like stress (find for example) can easily trigger this. Does it look like i have a bad filesystem ? Can anyone help me figure out which one ? The fact that this is tainted (due to nvidia) is a red herring i think because both my machines (the SMP and UP one) are using the same nvidia module and the panic is in ext3 code.

Help
Mitch

Dec 10 03:02:43 home kernel: BUG: unable to handle kernel NULL pointer dereference at virtual address 00000000
Dec 10 03:02:43 home kernel: printing eip:
Dec 10 03:02:43 home kernel: c01761fc
Dec 10 03:02:43 home kernel: *pdpt = 00000000198a6001
Dec 10 03:02:43 home kernel: *pde = 0000000000000000
Dec 10 03:02:43 home kernel: Oops: 0000 [#1]
Dec 10 03:02:43 home kernel: PREEMPT SMP
Dec 10 03:02:43 home kernel: Modules linked in: loop nls_iso8859_1 nls_cp437 vfat fat tun iptable_nat nvidia(P) appletalk psnap llc nfsd expo
rtfs lockd sunrpc xt_limit xt_tcpudp iptable_mangle ipt_LOG ipt_MASQUERADE nf_nat ipt_TOS ipt_REJECT nf_conntrack_irc nf_conntrack_ftp nf_con
ntrack_ipv4 xt_state nf_conntrack iptable_filter ip_tables x_tables ftdi_sio usbserial forcedeth snd_hda_intel snd_seq_oss snd_seq_midi_event
snd_seq snd_seq_device snd_pcm_oss snd_pcm snd_timer snd_page_alloc snd_mixer_oss snd usb_storage ehci_hcd ohci_hcd it87 hwmon_vid i2c_dev i
2c_core
Dec 10 03:02:43 home kernel: CPU: 1
Dec 10 03:02:43 home kernel: EIP: 0060:[__d_find_alias+44/192] Tainted: P VLI
Dec 10 03:02:43 home kernel: EFLAGS: 00010282 (2.6.23 #5)
Dec 10 03:02:43 home kernel: EIP is at __d_find_alias+0x2c/0xc0
Dec 10 03:02:43 home kernel: eax: 00000000 ebx: c03579bc ecx: 00000000 edx: 00004000
Dec 10 03:02:44 home kernel: esi: f55d58bc edi: 00000000 ebp: 00000001 esp: d479dda4
Dec 10 03:02:44 home kernel: ds: 007b es: 007b fs: 00d8 gs: 0033 ss: 0068
Dec 10 03:02:44 home kernel: Process find (pid: 8233, ti=d479c000 task=f6d35ab0 task.ti=d479c000)
Dec 10 03:02:44 home kernel: Stack: f55d58a4 ebf42f00 f6735800 ebf42f00 c017832f f55d58a4 ebf42f00 f6735800
Dec 10 03:02:44 home kernel: c01ad386 c0177755 ebf42f60 d479de38 ebf42f00 e85bf2fc c0357e80 ebf42f00
Dec 10 03:02:44 home kernel: d479df04 c016d242 d479de44 f7c04740 f1352a98 f1352b0c d479de38 00034c98
Dec 10 03:02:44 home kernel: Call Trace:
Dec 10 03:02:44 home kernel: [d_splice_alias+95/208] d_splice_alias+0x5f/0xd0
Dec 10 03:02:44 home kernel: [ext3_lookup+230/288] ext3_lookup+0xe6/0x120
Dec 10 03:02:44 home kernel: [d_alloc+309/416] d_alloc+0x135/0x1a0
Dec 10 03:02:44 home kernel: [do_lookup+290/416] do_lookup+0x122/0x1a0
Dec 10 03:02:44 home kernel: [__link_path_walk+1873/3408] __link_path_walk+0x751/0xd50
Dec 10 03:02:44 home kernel: [link_path_walk+101/192] link_path_walk+0x65/0xc0
Dec 10 03:02:44 home kernel: [link_path_walk+69/192] link_path_walk+0x45/0xc0
Dec 10 03:02:44 home kernel: [nameidata_to_filp+53/64] nameidata_to_filp+0x35/0x40
Dec 10 03:02:44 home kernel: [do_filp_open+75/96] do_filp_open+0x4b/0x60
Dec 10 03:02:44 home kernel: [do_path_lookup+120/448] do_path_lookup+0x78/0x1c0
Dec 10 03:02:44 home kernel: [getname+160/192] getname+0xa0/0xc0
Dec 10 03:02:44 home kernel: [__user_walk_fd+59/96] __user_walk_fd+0x3b/0x60
Dec 10 03:02:44 home kernel: [vfs_lstat_fd+31/80] vfs_lstat_fd+0x1f/0x50
Dec 10 03:02:44 home kernel: [nameidata_to_filp+53/64] nameidata_to_filp+0x35/0x40
Dec 10 03:02:44 home kernel: [do_filp_open+75/96] do_filp_open+0x4b/0x60
Dec 10 03:02:44 home kernel: [sys_lstat64+15/48] sys_lstat64+0xf/0x30
Dec 10 03:02:44 home kernel: [__fput+257/352] __fput+0x101/0x160
Dec 10 03:02:44 home kernel: [mntput_no_expire+19/96] mntput_no_expire+0x13/0x60
Dec 10 03:02:44 home kernel: [filp_close+71/128] filp_close+0x47/0x80
Dec 10 03:02:44 home kernel: [sys_close+102/208] sys_close+0x66/0xd0
Dec 10 03:02:44 home kernel: [sysenter_past_esp+95/133] sysenter_past_esp+0x5f/0x85
Dec 10 03:02:44 home kernel: =======================
Dec 10 03:02:44 home kernel: Code: 89 c1 89 d5 57 56 8d 70 18 53 8b 40 18 31 db 39 c6 74 6c 0f b7 51 6a 31 ff 81 e2 00 f0 00 00 eb 0a 85 ed 7
4 6a 39 ce 74 2e 89 c8 <8b> 08 0f 18 01 90 81 fa 00 40 00 00 8d 58 bc 74 06 f6 43 04 10
Dec 10 03:02:44 home kernel: EIP: [__d_find_alias+44/192] __d_find_alias+0x2c/0xc0 SS:ESP 0068:d479dda4
Dec 10 03:02:44 home kernel: note: find[8233] exited with preempt_count 1
Dec 10 03:02:44 home kernel: BUG: scheduling while atomic: find/0x10000002/8233
Dec 10 03:02:44 home kernel: [schedule+1474/1728] __sched_text_start+0x5c2/0x6c0
Dec 10 03:02:44 home kernel: [__cond_resched+24/48] __cond_resched+0x18/0x30
Dec 10 03:02:44 home kernel: [cond_resched+42/64] cond_resched+0x2a/0x40
Dec 10 03:02:44 home kernel: [unmap_vmas+1502/1536] unmap_vmas+0x5de/0x600
Dec 10 03:02:44 home kernel: [exit_mmap+123/288] exit_mmap+0x7b/0x120
Dec 10 03:02:44 home kernel: [mmput+30/128] mmput+0x1e/0x80
Dec 10 03:02:44 home kernel: [do_exit+272/2048] do_exit+0x110/0x800
Dec 10 03:02:44 home kernel: [die+588/592] die+0x24c/0x250
Dec 10 03:02:44 home kernel: [do_page_fault+722/2016] do_page_fault+0x2d2/0x7e0
Dec 10 03:02:44 home kernel: [do_page_fault+0/2016] do_page_fault+0x0/0x7e0
Dec 10 03:02:44 home kernel: [error_code+114/120] error_code+0x72/0x78
Dec 10 03:02:44 home kernel: [__d_find_alias+44/192] __d_find_alias+0x2c/0xc0
Dec 10 03:02:44 home kernel: [d_splice_alias+95/208] d_splice_alias+0x5f/0xd0
Dec 10 03:02:44 home kernel: [ext3_lookup+230/288] ext3_lookup+0xe6/0x120
Dec 10 03:02:44 home kernel: [d_alloc+309/416] d_alloc+0x135/0x1a0
Dec 10 03:02:44 home kernel: [do_lookup+290/416] do_lookup+0x122/0x1a0
Dec 10 03:02:44 home kernel: [__link_path_walk+1873/3408] __link_path_walk+0x751/0xd50
Dec 10 03:02:44 home kernel: [link_path_walk+101/192] link_path_walk+0x65/0xc0
Dec 10 03:02:44 home kernel: [link_path_walk+69/192] link_path_walk+0x45/0xc0
Dec 10 03:02:44 home kernel: [nameidata_to_filp+53/64] nameidata_to_filp+0x35/0x40
Dec 10 03:02:44 home kernel: [do_filp_open+75/96] do_filp_open+0x4b/0x60
Dec 10 03:02:44 home kernel: [do_path_lookup+120/448] do_path_lookup+0x78/0x1c0
Dec 10 03:02:44 home kernel: [getname+160/192] getname+0xa0/0xc0
Dec 10 03:02:44 home kernel: [__user_walk_fd+59/96] __user_walk_fd+0x3b/0x60
Dec 10 03:02:44 home kernel: [vfs_lstat_fd+31/80] vfs_lstat_fd+0x1f/0x50
Dec 10 03:02:44 home kernel: [nameidata_to_filp+53/64] nameidata_to_filp+0x35/0x40
Dec 10 03:02:44 home kernel: [do_filp_open+75/96] do_filp_open+0x4b/0x60
Dec 10 03:02:44 home kernel: [sys_lstat64+15/48] sys_lstat64+0xf/0x30
Dec 10 03:02:44 home kernel: [__fput+257/352] __fput+0x101/0x160
Dec 10 03:02:44 home kernel: [mntput_no_expire+19/96] mntput_no_expire+0x13/0x60
Dec 10 03:02:44 home kernel: [filp_close+71/128] filp_close+0x47/0x80
Dec 10 03:02:44 home kernel: [sys_close+102/208] sys_close+0x66/0xd0
Dec 10 03:02:44 home kernel: [sysenter_past_esp+95/133] sysenter_past_esp+0x5f/0x85
Dec 10 03:02:44 home kernel: =======================
Dec 10 03:02:44 home kernel: BUG: scheduling while atomic: find/0x10000002/8233
Dec 10 03:02:44 home kernel: [schedule+1474/1728] __sched_text_start+0x5c2/0x6c0
Dec 10 03:02:44 home kernel: [release_pages+295/336] release_pages+0x127/0x150
Dec 10 03:02:44 home kernel: [reschedule_interrupt+40/48] reschedule_interrupt+0x28/0x30
Dec 10 03:02:44 home kernel: [__cond_resched+24/48] __cond_resched+0x18/0x30
Dec 10 03:02:44 home kernel: [cond_resched+42/64] cond_resched+0x2a/0x40
Dec 10 03:02:44 home kernel: [unmap_vmas+1502/1536] unmap_vmas+0x5de/0x600
Dec 10 03:02:44 home kernel: [exit_mmap+123/288] exit_mmap+0x7b/0x120
Dec 10 03:02:44 home kernel: [mmput+30/128] mmput+0x1e/0x80
Dec 10 03:02:44 home kernel: [do_exit+272/2048] do_exit+0x110/0x800
Dec 10 03:02:44 home kernel: [die+588/592] die+0x24c/0x250
Dec 10 03:02:44 home kernel: [do_page_fault+722/2016] do_page_fault+0x2d2/0x7e0
Dec 10 03:02:44 home kernel: [do_page_fault+0/2016] do_page_fault+0x0/0x7e0
Dec 10 03:02:44 home kernel: [error_code+114/120] error_code+0x72/0x78
Dec 10 03:02:44 home kernel: [__d_find_alias+44/192] __d_find_alias+0x2c/0xc0
Dec 10 03:02:44 home kernel: [d_splice_alias+95/208] d_splice_alias+0x5f/0xd0
Dec 10 03:02:44 home kernel: [ext3_lookup+230/288] ext3_lookup+0xe6/0x120
Dec 10 03:02:44 home kernel: [d_alloc+309/416] d_alloc+0x135/0x1a0
Dec 10 03:02:44 home kernel: [do_lookup+290/416] do_lookup+0x122/0x1a0
Dec 10 03:02:44 home kernel: [__link_path_walk+1873/3408] __link_path_walk+0x751/0xd50
Dec 10 03:02:44 home kernel: [link_path_walk+101/192] link_path_walk+0x65/0xc0
Dec 10 03:02:44 home kernel: [link_path_walk+69/192] link_path_walk+0x45/0xc0
Dec 10 03:02:44 home kernel: [nameidata_to_filp+53/64] nameidata_to_filp+0x35/0x40
Dec 10 03:02:44 home kernel: [do_filp_open+75/96] do_filp_open+0x4b/0x60
Dec 10 03:02:44 home kernel: [do_path_lookup+120/448] do_path_lookup+0x78/0x1c0
Dec 10 03:02:44 home kernel: [getname+160/192] getname+0xa0/0xc0
Dec 10 03:02:44 home kernel: [__user_walk_fd+59/96] __user_walk_fd+0x3b/0x60
Dec 10 03:02:44 home kernel: [vfs_lstat_fd+31/80] vfs_lstat_fd+0x1f/0x50
Dec 10 03:02:44 home kernel: [nameidata_to_filp+53/64] nameidata_to_filp+0x35/0x40
Dec 10 03:02:44 home kernel: [do_filp_open+75/96] do_filp_open+0x4b/0x60
Dec 10 03:02:44 home kernel: [sys_lstat64+15/48] sys_lstat64+0xf/0x30
Dec 10 03:02:44 home kernel: [__fput+257/352] __fput+0x101/0x160
Dec 10 03:02:44 home kernel: [mntput_no_expire+19/96] mntput_no_expire+0x13/0x60
Dec 10 03:02:44 home kernel: [filp_close+71/128] filp_close+0x47/0x80
Dec 10 03:02:44 home kernel: [sys_close+102/208] sys_close+0x66/0xd0
Dec 10 03:02:44 home kernel: [sysenter_past_esp+95/133] sysenter_past_esp+0x5f/0x85
Dec 10 03:02:44 home kernel: =======================

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/