Re: oops while loading snd-seq-oss (was: Re: 2.6.18-rc4-mm1 BUG, drm related)

From: Takashi Iwai
Date: Fri Aug 18 2006 - 11:55:49 EST


At Fri, 18 Aug 2006 08:52:20 -0700,
Andrew Morton wrote:
>
> On Fri, 18 Aug 2006 11:11:18 +0000
> Frederik Deweerdt <deweerdt@xxxxxxx> wrote:
>
> > > CONFIG_DEBUG_PAGEALLOC might tell us more.
> > I've tried enabling it, at it appears that we catch an earlier error:
> > [ 34.988000] [drm:drm_unlock] *ERROR* Process 8826 using kernel context 0
> > [ 35.644000] BUG: unable to handle kernel paging request at virtual address 00716573
> > [ 35.644000] printing eip:
> > [ 35.644000] c01aeacb
> > [ 35.644000] *pde = 00000000
> > [ 35.644000] Oops: 0000 [#1]
> > [ 35.644000] PREEMPT DEBUG_PAGEALLOC
> > [ 35.644000] last sysfs file: /devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/bInterfaceProtocol
> > [ 35.644000] Modules linked in: snd_seq snd_seq_device ohci_hcd parport_pc parport pcspkr ipw2200 yenta_socket rsrc_nonstatic pcmcia_core snd_intel8x0 snd_ac97_codec snd_ac97_bus snd_pcm snd_timer snd soundcore snd_page_alloc ehci_hcd uhci_hcd usbcore cpufreq_stats cpufreq_powersave cpufreq_ondemand cpufreq_conservative speedstep_centrino freq_table processor ac battery i915 drm tg3 joydev tsdev
> > [ 35.644000] CPU: 0
> > [ 35.644000] EIP: 0060:[<c01aeacb>] Not tainted VLI
> > [ 35.644000] EFLAGS: 00210246 (2.6.18-rc4-def01 #18)
> > [ 35.644000] EIP is at sysfs_dirent_exist+0x4b/0x70
> > [ 35.644000] eax: 00716573 ebx: f36f263c ecx: f71962a0 edx: f36f263c
> > [ 35.644000] esi: 00716573 edi: c03b4177 ebp: f711fe90 esp: f711fe7c
> > [ 35.644000] ds: 007b es: 007b ss: 0068
> > [ 35.644000] Process modprobe (pid: 8864, ti=f711e000 task=c193b540 task.ti=f711e000)
> > [ 35.644000] Stack: f36f263c f36f26a0 f36bf120 c03b4177 ffffffef f711feb0 c01afb95 f36f2694
> > [ 35.644000] c03b4177 f7ba4108 00000000 f7ba4000 f7ba4108 f711fed8 c027ece1 f7ba4108
> > [ 35.644000] f74b5d08 c03b4177 f7ba416c f7ba4000 f71962a0 f7ba4000 f7ba4108 f711ff08
> > [ 35.644000] Call Trace:
> > [ 35.644000] [<c01afb95>] sysfs_create_link+0x4d/0xa2
> > [ 35.644000] [<c027ece1>] device_add_class_symlinks+0xb0/0x14d
> > [ 35.644000] [<c027eff1>] device_add+0x1a0/0x37e
> > [ 35.644000] [<c027f1e9>] device_register+0x1a/0x20
> > [ 35.644000] [<c027f52f>] device_create+0xaa/0xc4
> > [ 35.644000] [<f8a0e472>] snd_register_device+0xcf/0x104 [snd]
> > [ 35.644000] [<f8abd0c2>] snd_sequencer_device_init+0x4e/0x7c [snd_seq]
> > [ 35.644000] [<f8abd02f>] alsa_seq_init+0x2f/0x51 [snd_seq]
> > [ 35.644000] [<c0141ab9>] sys_init_module+0x163/0x221
> > [ 35.644000] [<c0103139>] sysenter_past_esp+0x56/0x8d
> > [ 35.644000] [<b7fcd410>] 0xb7fcd410
> > [ 35.644000] [<c0104205>] show_stack_log_lvl+0x98/0xb2
> > [ 35.644000] [<c0104434>] show_registers+0x1b7/0x22f
> > [ 35.644000] [<c0104616>] die+0x12a/0x232
> > [ 35.644000] [<c0377042>] do_page_fault+0x38c/0x616
> > [ 35.644000] [<c0103cad>] error_code+0x39/0x40
> > [ 35.644000] [<c01afb95>] sysfs_create_link+0x4d/0xa2
> > [ 35.644000] [<c027ece1>] device_add_class_symlinks+0xb0/0x14d
> > [ 35.644000] [<c027eff1>] device_add+0x1a0/0x37e
> > [ 35.644000] [<c027f1e9>] device_register+0x1a/0x20
> > [ 35.644000] [<c027f52f>] device_create+0xaa/0xc4
> > [ 35.644000] [<f8a0e472>] snd_register_device+0xcf/0x104 [snd]
> > [ 35.644000] [<f8abd0c2>] snd_sequencer_device_init+0x4e/0x7c [snd_seq]
> > [ 35.644000] [<f8abd02f>] alsa_seq_init+0x2f/0x51 [snd_seq]
> > [ 35.644000] [<c0141ab9>] sys_init_module+0x163/0x221
> > [ 35.644000] [<c0103139>] sysenter_past_esp+0x56/0x8d
> > [ 35.644000] Code: f0 eb 12 8b 53 04 8d 42 fc 89 c3 8b 40 04 0f 18 00 90 3b 55 f0 74 2f 8b 43 14 85 c0 74 e5 89 1c 24 e8 39 f0 ff ff 8b 7d 0c 89 c6 <ac> ae 75 08 84 c0 75 f8 31 c0 eb 04 19 c0 0c 01 85 c0 75 c4 b8
> > [ 35.644000] EIP: [<c01aeacb>] sysfs_dirent_exist+0x4b/0x70 SS:ESP 0068:f711fe7c
> > [ 35.644000]
> > It looks like %eax is in fact a sort of "seq" string, but I couldn't
> > figure out why we ended with this pointer :(
>
> These sorts of crashes down in sysfs often are hard to diagnose. What did
> the driver do to cause this? Dunno. But it continues to look like an ALSA
> thing.

Yep, but it's hard to figure out without a crystal ball...

> If you had CONFIG_PCI_MULTITHREAD_PROBE enabled, please try disabling it.

If the oops occurs at the manual loading of snd-seq-oss module, this
options would be hardly related. But, it's worth to try.

Frederik, what hardware are you using? Is it emu10k1?
I'm wondering how is the order of module/driver initialization.
Does this bug happens if you load snd-seq manually before snd-seq-oss?

Last but not least, is the oops avoided when you disable alsa-git
patch?


Takashi
-
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/