Summary: | [CI] igt@drv_selftest@live_context - dmesg-warn - WARNING: possible circular locking dependency detected | ||
---|---|---|---|
Product: | DRI | Reporter: | Marta Löfstedt <marta.lofstedt> |
Component: | DRM/Intel | Assignee: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Status: | CLOSED DUPLICATE | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Severity: | normal | ||
Priority: | medium | CC: | intel-gfx-bugs |
Version: | DRI git | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | ReadyForDev | ||
i915 platform: | HSW, SNB | i915 features: |
Description
Marta Löfstedt
2017-11-14 07:29:32 UTC
What is this trace -> #1 (&mm->mmap_sem){++++}: [ 1366.741362] lock_acquire+0xb0/0x200 [ 1366.741364] down_write+0x3b/0x70 [ 1366.741364] 0xffffffffa019a1ea [ 1366.741365] 0xffffffffa019a3bd [ 1366.741366] 0xffffffffa016bd3e [ 1366.741368] drm_gem_prime_handle_to_fd+0x18e/0x1c0 [ 1366.741370] drm_prime_handle_to_fd_ioctl+0x44/0x60 [ 1366.741371] drm_ioctl_kernel+0x69/0xb0 [ 1366.741372] drm_ioctl+0x2f9/0x3d0 [ 1366.741375] do_vfs_ioctl+0x94/0x670 [ 1366.741376] SyS_ioctl+0x41/0x70 [ 1366.741379] entry_SYSCALL_64_fastpath+0x1c/0xb1 ? That makes no sense (we never need the write lock on mmap_sem inside handle_to_fd, afaik). I do believe lockdep has lost track its marbles, possibly due to a hash conflict due to the many module reloads. https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_3347/shard-hsw5/igt@drv_selftest@live_contexts.html <4>[ 1203.737243] ====================================================== <4>[ 1203.737244] WARNING: possible circular locking dependency detected <4>[ 1203.737245] 4.14.0-CI-CI_DRM_3347+ #1 Tainted: G U <4>[ 1203.737245] ------------------------------------------------------ <4>[ 1203.737246] drv_selftest/21936 is trying to acquire lock: <4>[ 1203.737246] (&dev->object_name_lock){+.+.}, at: [<ffffffff815f44b9>] drm_gem_handle_create+0x29/0x40 <4>[ 1203.737249] but task is already holding lock: <4>[ 1203.737249] (&dev->struct_mutex){+.+.}, at: [<ffffffffa0352276>] igt_ctx_exec+0x76/0xd20 [i915] <4>[ 1203.737270] which lock already depends on the new lock. <4>[ 1203.737271] the existing dependency chain (in reverse order) is: <4>[ 1203.737271] -> #2 (&dev->struct_mutex){+.+.}: <4>[ 1203.737273] lock_acquire+0xb0/0x200 <4>[ 1203.737275] __mutex_lock+0x86/0x9b0 <4>[ 1203.737275] mutex_lock_interruptible_nested+0x1b/0x20 <4>[ 1203.737276] 0xffffffffa01be1b1 <4>[ 1203.737276] 0xffffffffa01c3e0b <4>[ 1203.737278] __do_fault+0x1e/0x80 <4>[ 1203.737279] __handle_mm_fault+0x81f/0xed0 <4>[ 1203.737279] handle_mm_fault+0x156/0x300 <4>[ 1203.737280] __do_page_fault+0x2d2/0x560 <4>[ 1203.737281] do_page_fault+0x28/0x250 <4>[ 1203.737282] page_fault+0x22/0x30 <4>[ 1203.737282] -> #1 (&mm->mmap_sem){++++}: <4>[ 1203.737284] lock_acquire+0xb0/0x200 <4>[ 1203.737284] down_write+0x3b/0x70 <4>[ 1203.737285] 0xffffffffa01bd31a <4>[ 1203.737286] 0xffffffffa01bd4ed <4>[ 1203.737286] 0xffffffffa018ed1e <4>[ 1203.737287] drm_gem_prime_handle_to_fd+0x18e/0x1c0 <4>[ 1203.737288] drm_prime_handle_to_fd_ioctl+0x44/0x60 <4>[ 1203.737289] drm_ioctl_kernel+0x69/0xb0 <4>[ 1203.737289] drm_ioctl+0x2f9/0x3d0 <4>[ 1203.737291] do_vfs_ioctl+0x94/0x670 <4>[ 1203.737293] SyS_ioctl+0x41/0x70 <4>[ 1203.737294] entry_SYSCALL_64_fastpath+0x1c/0xb1 <4>[ 1203.737294] -> #0 (&dev->object_name_lock){+.+.}: <4>[ 1203.737295] __lock_acquire+0x1962/0x1b00 <4>[ 1203.737296] lock_acquire+0xb0/0x200 <4>[ 1203.737297] __mutex_lock+0x86/0x9b0 <4>[ 1203.737297] mutex_lock_nested+0x1b/0x20 <4>[ 1203.737298] drm_gem_handle_create+0x29/0x40 <4>[ 1203.737316] igt_ctx_exec+0x54e/0xd20 [i915] <4>[ 1203.737339] __i915_subtests+0x40/0xd0 [i915] <4>[ 1203.737359] i915_gem_context_live_selftests+0x48/0x140 [i915] <4>[ 1203.737382] __run_selftests+0x121/0x1c0 [i915] <4>[ 1203.737408] i915_live_selftests+0x35/0x60 [i915] <4>[ 1203.737433] i915_pci_probe+0x4a/0x90 [i915] <4>[ 1203.737436] pci_device_probe+0xa8/0x130 <4>[ 1203.737438] driver_probe_device+0x29c/0x450 <4>[ 1203.737440] __driver_attach+0xe3/0xf0 <4>[ 1203.737441] bus_for_each_dev+0x62/0xa0 <4>[ 1203.737443] driver_attach+0x1e/0x20 <4>[ 1203.737444] bus_add_driver+0x173/0x270 <4>[ 1203.737446] driver_register+0x60/0xe0 <4>[ 1203.737448] __pci_register_driver+0x6b/0x70 <4>[ 1203.737474] i915_init+0x6f/0x78 [i915] <4>[ 1203.737475] do_one_initcall+0x43/0x170 <4>[ 1203.737477] do_init_module+0x5f/0x206 <4>[ 1203.737478] load_module+0x2581/0x2dd0 <4>[ 1203.737480] SyS_finit_module+0xc1/0x100 <4>[ 1203.737481] entry_SYSCALL_64_fastpath+0x1c/0xb1 <4>[ 1203.737482] other info that might help us debug this: <4>[ 1203.737482] Chain exists of: &dev->object_name_lock --> &mm->mmap_sem --> &dev->struct_mutex <4>[ 1203.737485] Possible unsafe locking scenario: <4>[ 1203.737485] CPU0 CPU1 <4>[ 1203.737485] ---- ---- <4>[ 1203.737486] lock(&dev->struct_mutex); <4>[ 1203.737487] lock(&mm->mmap_sem); <4>[ 1203.737488] lock(&dev->struct_mutex); <4>[ 1203.737488] lock(&dev->object_name_lock); <4>[ 1203.737489] *** DEADLOCK *** <4>[ 1203.737490] 3 locks held by drv_selftest/21936: <4>[ 1203.737490] #0: (&dev->mutex){....}, at: [<ffffffff816248ef>] __driver_attach+0x5f/0xf0 <4>[ 1203.737493] #1: (&dev->mutex){....}, at: [<ffffffff816248fd>] __driver_attach+0x6d/0xf0 <4>[ 1203.737496] #2: (&dev->struct_mutex){+.+.}, at: [<ffffffffa0352276>] igt_ctx_exec+0x76/0xd20 [i915] <4>[ 1203.737524] stack backtrace: <4>[ 1203.737525] CPU: 5 PID: 21936 Comm: drv_selftest Tainted: G U 4.14.0-CI-CI_DRM_3347+ #1 <4>[ 1203.737526] Hardware name: MSI MS-7924/Z97M-G43(MS-7924), BIOS V1.12 02/15/2016 <4>[ 1203.737527] Call Trace: <4>[ 1203.737529] dump_stack+0x68/0x9f <4>[ 1203.737531] print_circular_bug.isra.18+0x1f6/0x2e0 <4>[ 1203.737533] __lock_acquire+0x1962/0x1b00 <4>[ 1203.737536] lock_acquire+0xb0/0x200 <4>[ 1203.737537] ? lock_acquire+0xb0/0x200 <4>[ 1203.737539] ? drm_gem_handle_create+0x29/0x40 <4>[ 1203.737540] __mutex_lock+0x86/0x9b0 <4>[ 1203.737541] ? drm_gem_handle_create+0x29/0x40 <4>[ 1203.737543] ? drm_gem_handle_create+0x29/0x40 <4>[ 1203.737570] ? i915_gem_object_init+0x185/0x190 [i915] <4>[ 1203.737572] mutex_lock_nested+0x1b/0x20 <4>[ 1203.737573] ? mutex_lock_nested+0x1b/0x20 <4>[ 1203.737574] drm_gem_handle_create+0x29/0x40 <4>[ 1203.737599] igt_ctx_exec+0x54e/0xd20 [i915] <4>[ 1203.737630] __i915_subtests+0x40/0xd0 [i915] <4>[ 1203.737657] i915_gem_context_live_selftests+0x48/0x140 [i915] <4>[ 1203.737687] __run_selftests+0x121/0x1c0 [i915] <4>[ 1203.737713] i915_live_selftests+0x35/0x60 [i915] <4>[ 1203.737738] i915_pci_probe+0x4a/0x90 [i915] <4>[ 1203.737741] pci_device_probe+0xa8/0x130 <4>[ 1203.737743] driver_probe_device+0x29c/0x450 <4>[ 1203.737745] __driver_attach+0xe3/0xf0 <4>[ 1203.737746] ? driver_probe_device+0x450/0x450 <4>[ 1203.737747] bus_for_each_dev+0x62/0xa0 <4>[ 1203.737749] driver_attach+0x1e/0x20 <4>[ 1203.737750] bus_add_driver+0x173/0x270 <4>[ 1203.737752] driver_register+0x60/0xe0 <4>[ 1203.737754] __pci_register_driver+0x6b/0x70 <4>[ 1203.737776] i915_init+0x6f/0x78 [i915] <4>[ 1203.737777] ? 0xffffffffa04e2000 <4>[ 1203.737778] do_one_initcall+0x43/0x170 <4>[ 1203.737779] ? rcu_read_lock_sched_held+0x7a/0x90 <4>[ 1203.737780] ? kmem_cache_alloc_trace+0x270/0x2d0 <4>[ 1203.737782] do_init_module+0x5f/0x206 <4>[ 1203.737783] load_module+0x2581/0x2dd0 <4>[ 1203.737784] ? show_coresize+0x30/0x30 <4>[ 1203.737785] ? kernel_read+0x31/0x50 <4>[ 1203.737787] SyS_finit_module+0xc1/0x100 <4>[ 1203.737788] ? SyS_finit_module+0xc1/0x100 <4>[ 1203.737790] entry_SYSCALL_64_fastpath+0x1c/0xb1 <4>[ 1203.737791] RIP: 0033:0x7feea7eac9f9 <4>[ 1203.737792] RSP: 002b:00007fff7ae23f68 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 <4>[ 1203.737793] RAX: ffffffffffffffda RBX: ffffffff814920c3 RCX: 00007feea7eac9f9 <4>[ 1203.737794] RDX: 0000000000000000 RSI: 000055ed5808d750 RDI: 0000000000000006 <4>[ 1203.737795] RBP: ffffc90000637f88 R08: 0000000000000000 R09: 0000000000000000 <4>[ 1203.737795] R10: 0000000000000006 R11: 0000000000000246 R12: 0000000000000000 <4>[ 1203.737796] R13: 000055ed5808d7a0 R14: 0000000000000000 R15: 000055ed580849e0 <4>[ 1203.737798] ? __this_cpu_preempt_check+0x13/0x20 *** This bug has been marked as a duplicate of bug 103830 *** |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.