[alsa-devel] lockdep warning on 2.6.29-rc1 with pulseaudio
Johannes Berg
johannes at sipsolutions.net
Tue Jan 13 18:02:01 CET 2009
Sorry if you've seen this already, I couldn't find it on gmane.
soemthing is doing mutex_lock(&pcm->open_mutex); but this lock depends
on &chip->open_mutex which in turn depends on &codec->spdif_mutex (seems
a little odd) and that already depends on mmap_sem, through
might_fault()?
[ 49.742444] =======================================================
[ 49.742449] [ INFO: possible circular locking dependency detected ]
[ 49.742453] 2.6.29-rc1-wl-11361-g269245b-dirty #15
[ 49.742455] -------------------------------------------------------
[ 49.742458] pulseaudio/3550 is trying to acquire lock:
[ 49.742461] (&pcm->open_mutex){--..}, at: [<ffffffffa059f86e>] snd_pcm_release+0x3e/0xb0 [snd_pcm]
[ 49.742479]
[ 49.742479] but task is already holding lock:
[ 49.742482] (&mm->mmap_sem){----}, at: [<ffffffff802c4a42>] sys_munmap+0x42/0x80
[ 49.742493]
[ 49.742493] which lock already depends on the new lock.
[ 49.742494]
[ 49.742497]
[ 49.742497] the existing dependency chain (in reverse order) is:
[ 49.742500]
[ 49.742501] -> #3 (&mm->mmap_sem){----}:
[ 49.742507] [<ffffffff80273427>] check_prev_add+0x3b7/0x770
[ 49.742513] [<ffffffff80273de6>] validate_chain+0x606/0x6c0
[ 49.742518] [<ffffffff802742df>] __lock_acquire+0x43f/0xa10
[ 49.742522] [<ffffffff80274941>] lock_acquire+0x91/0xc0
[ 49.742526] [<ffffffff802bc39f>] might_fault+0x7f/0xb0
[ 49.742532] [<ffffffffa07fb15d>] snd_hda_mixer_amp_tlv+0x6d/0xf0 [snd_hda_codec]
[ 49.742544] [<ffffffffa0b20bb0>] alc_cap_vol_tlv+0x70/0xa0 [snd_hda_codec_realtek]
[ 49.742557] [<ffffffffa03a30be>] snd_ctl_tlv_ioctl+0x14e/0x1d0 [snd]
[ 49.742571] [<ffffffffa03a527b>] snd_ctl_ioctl+0x26b/0x540 [snd]
[ 49.742581] [<ffffffff802e82d1>] vfs_ioctl+0x31/0xa0
[ 49.742587] [<ffffffff802e8699>] do_vfs_ioctl+0x89/0x350
[ 49.742592] [<ffffffff802e89aa>] sys_ioctl+0x4a/0x80
[ 49.742597] [<ffffffff8020bd1b>] system_call_fastpath+0x16/0x1b
[ 49.742603] [<ffffffffffffffff>] 0xffffffffffffffff
[ 49.742608]
[ 49.742609] -> #2 (&codec->spdif_mutex){--..}:
[ 49.742615] [<ffffffff80273427>] check_prev_add+0x3b7/0x770
[ 49.742619] [<ffffffff80273de6>] validate_chain+0x606/0x6c0
[ 49.742623] [<ffffffff802742df>] __lock_acquire+0x43f/0xa10
[ 49.742628] [<ffffffff80274941>] lock_acquire+0x91/0xc0
[ 49.742632] [<ffffffff805ac5fc>] mutex_lock_nested+0xec/0x380
[ 49.742639] [<ffffffffa07f8d54>] snd_hda_multi_out_analog_open+0x84/0x130 [snd_hda_codec]
[ 49.742649] [<ffffffffa0b1ac60>] alc880_playback_pcm_open+0x20/0x30 [snd_hda_codec_realtek]
[ 49.742659] [<ffffffffa0897f39>] azx_pcm_open+0x209/0x280 [snd_hda_intel]
[ 49.742667] [<ffffffffa05a01b8>] snd_pcm_open_substream+0x58/0xa0 [snd_pcm]
[ 49.742677] [<ffffffffa05a038b>] snd_pcm_open+0x18b/0x280 [snd_pcm]
[ 49.742687] [<ffffffffa05a04ec>] snd_pcm_playback_open+0x2c/0x40 [snd_pcm]
[ 49.742697] [<ffffffffa039f7fc>] __snd_open+0x14c/0x270 [snd]
[ 49.742707] [<ffffffffa039f947>] snd_open+0x27/0x40 [snd]
[ 49.742717] [<ffffffff802dcd47>] chrdev_open+0x137/0x210
[ 49.742722] [<ffffffff802d7a5a>] __dentry_open+0x10a/0x340
[ 49.742727] [<ffffffff802d7d97>] nameidata_to_filp+0x57/0x70
[ 49.742732] [<ffffffff802e69de>] do_filp_open+0x1fe/0x970
[ 49.742737] [<ffffffff802d7868>] do_sys_open+0x78/0x110
[ 49.742742] [<ffffffff802d792b>] sys_open+0x1b/0x20
[ 49.742746] [<ffffffff8020bd1b>] system_call_fastpath+0x16/0x1b
[ 49.742751] [<ffffffffffffffff>] 0xffffffffffffffff
[ 49.742756]
[ 49.742756] -> #1 (&chip->open_mutex){--..}:
[ 49.742762] [<ffffffff80273427>] check_prev_add+0x3b7/0x770
[ 49.742767] [<ffffffff80273de6>] validate_chain+0x606/0x6c0
[ 49.742771] [<ffffffff802742df>] __lock_acquire+0x43f/0xa10
[ 49.742775] [<ffffffff80274941>] lock_acquire+0x91/0xc0
[ 49.742780] [<ffffffff805ac5fc>] mutex_lock_nested+0xec/0x380
[ 49.742785] [<ffffffffa0897d78>] azx_pcm_open+0x48/0x280 [snd_hda_intel]
[ 49.742792] [<ffffffffa05a01b8>] snd_pcm_open_substream+0x58/0xa0 [snd_pcm]
[ 49.742802] [<ffffffffa05a038b>] snd_pcm_open+0x18b/0x280 [snd_pcm]
[ 49.742812] [<ffffffffa05a04ec>] snd_pcm_playback_open+0x2c/0x40 [snd_pcm]
[ 49.742822] [<ffffffffa039f7fc>] __snd_open+0x14c/0x270 [snd]
[ 49.742832] [<ffffffffa039f947>] snd_open+0x27/0x40 [snd]
[ 49.742841] [<ffffffff802dcd47>] chrdev_open+0x137/0x210
[ 49.742846] [<ffffffff802d7a5a>] __dentry_open+0x10a/0x340
[ 49.742850] [<ffffffff802d7d97>] nameidata_to_filp+0x57/0x70
[ 49.742855] [<ffffffff802e69de>] do_filp_open+0x1fe/0x970
[ 49.742860] [<ffffffff802d7868>] do_sys_open+0x78/0x110
[ 49.742864] [<ffffffff802d792b>] sys_open+0x1b/0x20
[ 49.742869] [<ffffffff8020bd1b>] system_call_fastpath+0x16/0x1b
[ 49.742874] [<ffffffffffffffff>] 0xffffffffffffffff
[ 49.742882]
[ 49.742883] -> #0 (&pcm->open_mutex){--..}:
[ 49.742889] [<ffffffff802730c7>] check_prev_add+0x57/0x770
[ 49.742893] [<ffffffff80273de6>] validate_chain+0x606/0x6c0
[ 49.742897] [<ffffffff802742df>] __lock_acquire+0x43f/0xa10
[ 49.742902] [<ffffffff80274941>] lock_acquire+0x91/0xc0
[ 49.742906] [<ffffffff805ac5fc>] mutex_lock_nested+0xec/0x380
[ 49.742911] [<ffffffffa059f86e>] snd_pcm_release+0x3e/0xb0 [snd_pcm]
[ 49.742921] [<ffffffff802dae20>] __fput+0xd0/0x1e0
[ 49.742926] [<ffffffff802daf4d>] fput+0x1d/0x30
[ 49.742931] [<ffffffff802c377a>] remove_vma+0x4a/0x80
[ 49.742936] [<ffffffff802c49b2>] do_munmap+0x342/0x390
[ 49.742940] [<ffffffff802c4a50>] sys_munmap+0x50/0x80
[ 49.742944] [<ffffffff8020bd1b>] system_call_fastpath+0x16/0x1b
[ 49.742949] [<ffffffffffffffff>] 0xffffffffffffffff
[ 49.742954]
[ 49.742954] other info that might help us debug this:
[ 49.742955]
[ 49.742958] 1 lock held by pulseaudio/3550:
[ 49.742961] #0: (&mm->mmap_sem){----}, at: [<ffffffff802c4a42>] sys_munmap+0x42/0x80
[ 49.742969]
[ 49.742970] stack backtrace:
[ 49.742973] Pid: 3550, comm: pulseaudio Not tainted 2.6.29-rc1-wl-11361-g269245b-dirty #15
[ 49.742976] Call Trace:
[ 49.742981] [<ffffffff80272b70>] print_circular_bug_tail+0xe0/0xf0
[ 49.742985] [<ffffffff802730c7>] check_prev_add+0x57/0x770
[ 49.742991] [<ffffffff8026f414>] ? get_lock_stats+0x34/0x70
[ 49.742995] [<ffffffff80273de6>] validate_chain+0x606/0x6c0
[ 49.742998] [<ffffffff802742df>] __lock_acquire+0x43f/0xa10
[ 49.743002] [<ffffffff80274941>] lock_acquire+0x91/0xc0
[ 49.743012] [<ffffffffa059f86e>] ? snd_pcm_release+0x3e/0xb0 [snd_pcm]
[ 49.743017] [<ffffffff805ac5fc>] mutex_lock_nested+0xec/0x380
[ 49.743027] [<ffffffffa059f86e>] ? snd_pcm_release+0x3e/0xb0 [snd_pcm]
[ 49.743036] [<ffffffffa059f86e>] ? snd_pcm_release+0x3e/0xb0 [snd_pcm]
[ 49.743046] [<ffffffffa059f86e>] snd_pcm_release+0x3e/0xb0 [snd_pcm]
[ 49.743051] [<ffffffff802dae20>] __fput+0xd0/0x1e0
[ 49.743055] [<ffffffff802daf4d>] fput+0x1d/0x30
[ 49.743059] [<ffffffff802c377a>] remove_vma+0x4a/0x80
[ 49.743063] [<ffffffff802c49b2>] do_munmap+0x342/0x390
[ 49.743067] [<ffffffff802c4a50>] sys_munmap+0x50/0x80
[ 49.743071] [<ffffffff8020bd1b>] system_call_fastpath+0x16/0x1b
Incidentally, sound doesn't work on my macbook5,1, I get lots of
controls but no output.
johannes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20090113/b0b5ada3/attachment.sig
More information about the Alsa-devel
mailing list