=======================================================
[ INFO: possible circular locking dependency detected ]
2.6.22-rc2 #1
-------------------------------------------------------
mplayer/16241 is trying to acquire lock:
(iprune_mutex){--..}, at: [<c0158322>] shrink_icache_memory+0x2e/0x16b
but task is already holding lock:
(&(&ip->i_iolock)->mr_lock){----}, at: [<c01fc4d8>] xfs_ilock+0x44/0x86
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #1 (&(&ip->i_iolock)->mr_lock){----}:
[<c01274e6>] __lock_acquire+0x993/0xafa
[<c01fc4b6>] xfs_ilock+0x22/0x86
[<c012654c>] mark_held_locks+0x39/0x53
[<c01279f7>] lock_acquire+0x54/0x6b
[<c01fc4b6>] xfs_ilock+0x22/0x86
[<c01218c6>] down_write_nested+0x3b/0x54
[<c01fc4b6>] xfs_ilock+0x22/0x86
[<c01fc4b6>] xfs_ilock+0x22/0x86
[<c01fc67d>] xfs_ireclaim+0x1a/0x5f
[<c0217c17>] xfs_finish_reclaim+0x118/0x121
[<c0225401>] xfs_fs_clear_inode+0x52/0x74
[<c0158008>] clear_inode+0x8b/0xd9
[<c01583cc>] shrink_icache_memory+0xd8/0x16b
[<c0158273>] dispose_list+0x36/0xb7
[<c0158438>] shrink_icache_memory+0x144/0x16b
[<c0135aff>] shrink_slab+0xd8/0x126
[<c0135e27>] kswapd+0x25e/0x33a
[<c011f1ad>] autoremove_wake_function+0x0/0x35
[<c0135bc9>] kswapd+0x0/0x33a
[<c011f0f8>] kthread+0x38/0x5c
[<c011f0c0>] kthread+0x0/0x5c
[<c01029e7>] kernel_thread_helper+0x7/0x10
[<ffffffff>] 0xffffffff
-> #0 (iprune_mutex){--..}:
[<c0125435>] print_circular_bug_entry+0x40/0x46
[<c01273d2>] __lock_acquire+0x87f/0xafa
[<c01279f7>] lock_acquire+0x54/0x6b
[<c0158322>] shrink_icache_memory+0x2e/0x16b
[<c0346fa1>] __mutex_lock_slowpath+0xd9/0x254
[<c0158322>] shrink_icache_memory+0x2e/0x16b
[<c0158322>] shrink_icache_memory+0x2e/0x16b
[<c0135aff>] shrink_slab+0xd8/0x126
[<c013600f>] try_to_free_pages+0x10c/0x1b9
[<c0132732>] __alloc_pages+0x18c/0x290
[<c034878c>] _read_unlock_irq+0x20/0x41
[<c0133ad2>] __do_page_cache_readahead+0xc2/0x1d2
[<c03486f3>] _spin_unlock_irq+0x20/0x41
[<c03486fe>] _spin_unlock_irq+0x2b/0x41
[<c034615b>] __sched_text_start+0x55b/0x575
[<c0133c2f>] blockable_page_cache_readahead+0x4d/0x99
[<c0133cfb>] make_ahead_window+0x80/0xa1
[<c0133e95>] page_cache_readahead+0x179/0x1a4
[<c012e25a>] file_read_actor+0x8e/0x11a
[<c012ec25>] do_generic_mapping_read+0x170/0x4a9
[<c0130a48>] generic_file_aio_read+0x16f/0x197
[<c012e1cc>] file_read_actor+0x0/0x11a
[<c0223ff3>] xfs_read+0x2af/0x30a
[<c02210b2>] xfs_file_aio_read+0x66/0x70
[<c014863a>] do_sync_read+0xc6/0x109
[<c0138ae3>] __handle_mm_fault+0x79a/0x7b7
[<c011f1ad>] autoremove_wake_function+0x0/0x35
[<c010c3a0>] do_page_fault+0x151/0x51d
[<c0121a91>] up_read+0x14/0x27
[<c0148574>] do_sync_read+0x0/0x109
[<c0148c91>] vfs_read+0x76/0x97
[<c0148f8d>] sys_read+0x43/0x69
[<c0102556>] sysenter_past_esp+0x5f/0x99
[<ffffffff>] 0xffffffff
other info that might help us debug this:
2 locks held by mplayer/16241:
#0: (&(&ip->i_iolock)->mr_lock){----}, at: [<c01fc4d8>] xfs_ilock+0x44/0x86
#1: (shrinker_rwsem){----}, at: [<c0135a46>] shrink_slab+0x1f/0x126
stack backtrace:
[<c0125cce>] print_circular_bug_tail+0x5e/0x66
[<c01273d2>] __lock_acquire+0x87f/0xafa
[<c01279f7>] lock_acquire+0x54/0x6b
[<c0158322>] shrink_icache_memory+0x2e/0x16b
[<c0346fa1>] __mutex_lock_slowpath+0xd9/0x254
[<c0158322>] shrink_icache_memory+0x2e/0x16b
[<c0158322>] shrink_icache_memory+0x2e/0x16b
[<c0135aff>] shrink_slab+0xd8/0x126
[<c013600f>] try_to_free_pages+0x10c/0x1b9
[<c0132732>] __alloc_pages+0x18c/0x290
[<c034878c>] _read_unlock_irq+0x20/0x41
[<c0133ad2>] __do_page_cache_readahead+0xc2/0x1d2
[<c03486f3>] _spin_unlock_irq+0x20/0x41
[<c03486fe>] _spin_unlock_irq+0x2b/0x41
[<c034615b>] __sched_text_start+0x55b/0x575
[<c0133c2f>] blockable_page_cache_readahead+0x4d/0x99
[<c0133cfb>] make_ahead_window+0x80/0xa1
[<c0133e95>] page_cache_readahead+0x179/0x1a4
[<c012e25a>] file_read_actor+0x8e/0x11a
[<c012ec25>] do_generic_mapping_read+0x170/0x4a9
[<c0130a48>] generic_file_aio_read+0x16f/0x197
[<c012e1cc>] file_read_actor+0x0/0x11a
[<c0223ff3>] xfs_read+0x2af/0x30a
[<c02210b2>] xfs_file_aio_read+0x66/0x70
[<c014863a>] do_sync_read+0xc6/0x109
[<c0138ae3>] __handle_mm_fault+0x79a/0x7b7
[<c011f1ad>] autoremove_wake_function+0x0/0x35
[<c010c3a0>] do_page_fault+0x151/0x51d
[<c0121a91>] up_read+0x14/0x27
[<c0148574>] do_sync_read+0x0/0x109
[<c0148c91>] vfs_read+0x76/0x97
[<c0148f8d>] sys_read+0x43/0x69
[<c0102556>] sysenter_past_esp+0x5f/0x99
=======================
|