[alsa-devel] OOPS on USB sound card disconnect while in use
Lasse Kärkkäinen
tronic+1kf5 at trn.iki.fi
Mon Sep 22 00:00:30 CEST 2008
This has been broken for a long time.
Symtoms: programs using the card while it is disconnected get stuck and
cannot be killed, and OOPS is printed on the log:
[108034.041573] usb 9-2: USB disconnect, address 3
[108043.576040] usb 9-2: new full speed USB device using uhci_hcd and
address 4
[108043.757185] usb 9-2: configuration #1 chosen from 1 choice
[108057.602616] BUG: unable to handle kernel paging request at
000061d855001080
[108057.602621] IP: [<ffffffffa00e0c71>] hcd_buffer_free+0x11/0x90 [usbcore]
[108057.602643] PGD 0
[108057.602647] Oops: 0000 [1] SMP
[108057.602652] CPU 0
[108057.602655] Modules linked in: nls_cp437 cifs af_packet binfmt_misc
rfcomm l2cap bluetooth ppdev ipv6 cpufreq_conservative cpufreq_ondemand
cpufreq_powersave cpufreq_userspace cpufreq_stats freq_table container
video output sbs sbshc pci_slot wmi battery iptable_filter ip_tables
x_tables ext2 ac lp loop snd_seq_dummy arc4 snd_hda_intel snd_seq_oss
ecb crypto_blkcipher snd_usb_audio snd_usb_lib snd_pcm_oss snd_mixer_oss
snd_seq_midi snd_pcm snd_rawmidi ath9k snd_seq_midi_event snd_hwdep
snd_seq mac80211 psmouse snd_timer snd_seq_device cfg80211 snd serio_raw
iTCO_wdt iTCO_vendor_support soundcore nvidia(P) snd_page_alloc i2c_core
parport_pc parport button shpchp pci_hotplug intel_agp evdev joydev ext3
jbd mbcache sg sd_mod crc_t10dif ata_generic ata_piix pata_jmicron
usbhid hid pata_acpi ahci libata scsi_mod dock sky2 uhci_hcd ehci_hcd
usbcore raid10 raid456 async_xor async_memcpy async_tx xor raid1 raid0
multipath linear md_mod thermal processor fan fbcon tileblit font
bitblit softcursor uvesafb cn fuse
[108057.602714] Pid: 15655, comm: rhythmbox Tainted: P
2.6.27-3-generic #1
[108057.602716] RIP: 0010:[<ffffffffa00e0c71>] [<ffffffffa00e0c71>]
hcd_buffer_free+0x11/0x90 [usbcore]
[108057.602727] RSP: 0018:ffff8801a7d97cc8 EFLAGS: 00010286
[108057.602729] RAX: ffff880219061680 RBX: ffff88021a162e00 RCX:
0000000037836060
[108057.602731] RDX: ffff880037836060 RSI: 0000000000000020 RDI:
000061d855001080
[108057.602733] RBP: ffff8801a7d97cc8 R08: ffff880037836060 R09:
0000000000000566
[108057.602734] R10: 0000000000000002 R11: 0000000000000000 R12:
ffff88021a1630c8
[108057.602736] R13: 0000000000001fff R14: ffff88021a44e400 R15:
0000000000000000
[108057.602738] FS: 00007ffd6f42f7a0(0000) GS:ffffffff806ffa80(0000)
knlGS:0000000000000000
[108057.602740] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[108057.602742] CR2: 000061d855001080 CR3: 00000001d80ff000 CR4:
00000000000006e0
[108057.602744] DR0: 0000000000000000 DR1: 0000000000000000 DR2:
0000000000000000
[108057.602745] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7:
0000000000000400
[108057.602747] Process rhythmbox (pid: 15655, threadinfo
ffff8801a7d96000, task ffff8801c68cd9c0)
[108057.602749] Stack: ffff8801a7d97cd8 ffffffffa00d3425
ffff8801a7d97cf8 ffffffffa0b391d5
[108057.602754] ffff88021aa00c00 ffff88021aa00c00 ffff8801a7d97d18
ffffffffa0b39212
[108057.602758] ffff88021a163000 ffff88021a163000 ffff8801a7d97d28
ffffffffa0b39275
[108057.602761] Call Trace:
[108057.602775] [<ffffffffa00d3425>] usb_buffer_free+0x25/0x30 [usbcore]
[108057.602780] [<ffffffffa0b391d5>]
snd_usbmidi_out_endpoint_delete+0x35/0x50 [snd_usb_lib]
[108057.602784] [<ffffffffa0b39212>] snd_usbmidi_free+0x22/0x70
[snd_usb_lib]
[108057.602787] [<ffffffffa0b39275>] snd_usbmidi_rawmidi_free+0x15/0x20
[snd_usb_lib]
[108057.602792] [<ffffffffa0af9287>] snd_rawmidi_free+0xf7/0x110
[snd_rawmidi]
[108057.602796] [<ffffffffa0af92b2>] snd_rawmidi_dev_free+0x12/0x20
[snd_rawmidi]
[108057.602805] [<ffffffffa0a1a8b1>] snd_device_free+0x71/0xd0 [snd]
[108057.602811] [<ffffffffa0a1a974>] snd_device_free_all+0x64/0x70 [snd]
[108057.602818] [<ffffffffa0a14a1f>] snd_card_do_free+0x3f/0xe0 [snd]
[108057.602824] [<ffffffffa0a14bff>] snd_card_file_remove+0x13f/0x170 [snd]
[108057.602833] [<ffffffffa0b09f86>] snd_pcm_release+0xa6/0xc0 [snd_pcm]
[108057.602839] [<ffffffffa0a15630>] ? snd_disconnect_release+0x0/0xb0
[snd]
[108057.602846] [<ffffffffa0a156a6>] snd_disconnect_release+0x76/0xb0 [snd]
[108057.602852] [<ffffffff802ec8a9>] __fput+0xc9/0x1b0
[108057.602854] [<ffffffff802ec9b5>] fput+0x25/0x30
[108057.602858] [<ffffffff802c67e3>] remove_vma+0x43/0x90
[108057.602860] [<ffffffff802c860a>] do_munmap+0x2ea/0x330
[108057.602862] [<ffffffff802c86a5>] sys_munmap+0x55/0x80
[108057.602866] [<ffffffff8021288a>] system_call_fastpath+0x16/0x1b
[108057.602868]
[108057.602869]
[108057.602870] Code: 07 48 ff 84 02 00 02 00 00 4c 89 f1 49 89 4d 20 eb
9f 90 90 90 90 90 90 90 90 55 48 89 e5 0f 1f 44 00 00 48 85 d2 49 89 d0
74 3b <48> 8b 07 48 83 b8 c0 01 00 00 00 74 52 48 c7 c2 20 90 0e a0 31
[108057.602896] RIP [<ffffffffa00e0c71>] hcd_buffer_free+0x11/0x90
[usbcore]
[108057.602907] RSP <ffff8801a7d97cc8>
[108057.602909] CR2: 000061d855001080
[108057.602917] ---[ end trace 8c6a5ea5cd36c92b ]---
asound.conf:
# Allow mixing of multiple output streams to this device
pcm.output {
type dmix
ipc_key 1024
ipc_perm 0660 # Sound for everybody in your group!
slave.pcm "hw:UA25"
slave {
# This stuff provides some fixes for latency issues.
# buffer_size should be set for your audio chipset.
period_time 0
period_size 1024
buffer_size 8192
rate 48000
}
bindings {
0 0
1 1
}
}
pcm.!default {
type plug
slave.pcm "output"
slave.rate 48000
}
uname -a:
Linux Kaidenn 2.6.27-3-generic #1 SMP Wed Sep 10 16:18:52 UTC 2008
x86_64 GNU/Linux
And yes, I know that it is tainted. Live with it.
More information about the Alsa-devel
mailing list