[Bug 110913] New: [CI][SHARDS] Igt@* - dmesg-warn - WARNING: possible circular locking dependency detected

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Jun 13 12:17:43 UTC 2019


https://bugs.freedesktop.org/show_bug.cgi?id=110913

            Bug ID: 110913
           Summary: [CI][SHARDS] Igt@* - dmesg-warn - WARNING: possible
                    circular locking dependency detected
           Product: DRI
           Version: DRI git
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: DRM/Intel
          Assignee: intel-gfx-bugs at lists.freedesktop.org
          Reporter: lakshminarayana.vudum at intel.com
        QA Contact: intel-gfx-bugs at lists.freedesktop.org
                CC: intel-gfx-bugs at lists.freedesktop.org

https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6249/re-cml-u/igt@gem_persistent_relocs@forked-faulting-reloc-thrashing.html

<6> [194.764268] Console: switching to colour dummy device 80x25
<6> [194.764311] [IGT] gem_persistent_relocs: executing
<6> [194.774481] [IGT] gem_persistent_relocs: starting subtest
forked-faulting-reloc-thrashing
<5> [194.779443] Setting dangerous option prefault_disable - tainting kernel
<5> [194.781849] Setting dangerous option prefault_disable - tainting kernel
<5> [194.784406] Setting dangerous option prefault_disable - tainting kernel
<5> [194.788362] Setting dangerous option prefault_disable - tainting kernel
<7> [194.790251] [drm:intel_power_well_enable [i915]] enabling DC off
<7> [194.790289] [drm:gen9_set_dc_state [i915]] Setting DC state from 02 to 00
<5> [194.792327] Setting dangerous option prefault_disable - tainting kernel
<5> [194.796117] Setting dangerous option prefault_disable - tainting kernel
<5> [194.800471] Setting dangerous option prefault_disable - tainting kernel
<5> [194.802502] Setting dangerous option prefault_disable - tainting kernel
<4> [195.305572] 
<4> [195.305577] ======================================================
<4> [195.305580] WARNING: possible circular locking dependency detected
<4> [195.305584] 5.2.0-rc4-CI-CI_DRM_6249+ #1 Tainted: G     U           
<4> [195.305587] ------------------------------------------------------
<4> [195.305589] gem_persistent_/1507 is trying to acquire lock:
<4> [195.305592] 0000000016c7d56e (i915.reset){+.+.}, at:
i915_request_wait+0x148/0x940 [i915]
<4> [195.305671] 
but task is already holding lock:
<4> [195.305673] 000000007f2a8000 (&dev->struct_mutex/1){+.+.}, at:
shrinker_lock+0x63/0x80 [i915]
<4> [195.305707] 
which lock already depends on the new lock.

<4> [195.305710] 
the existing dependency chain (in reverse order) is:
<4> [195.305712] 
-> #4 (&dev->struct_mutex/1){+.+.}:
<4> [195.305742]        i915_gem_shrinker_taints_mutex+0x52/0xe0 [i915]
<4> [195.305771]        i915_address_space_init+0x59/0x120 [i915]
<4> [195.305799]        i915_ggtt_init_hw+0x50/0x140 [i915]
<4> [195.305821]        i915_driver_load+0xebb/0x18b0 [i915]
<4> [195.305842]        i915_pci_probe+0x3f/0x1a0 [i915]
<4> [195.305847]        pci_device_probe+0x9e/0x120
<4> [195.305850]        really_probe+0xea/0x3c0
<4> [195.305853]        driver_probe_device+0x10b/0x120
<4> [195.305855]        device_driver_attach+0x4a/0x50
<4> [195.305857]        __driver_attach+0x97/0x130
<4> [195.305860]        bus_for_each_dev+0x74/0xc0
<4> [195.305862]        bus_add_driver+0x13f/0x210
<4> [195.305864]        driver_register+0x56/0xe0
<4> [195.305867]        do_one_initcall+0x58/0x300
<4> [195.305871]        do_init_module+0x56/0x1f6
<4> [195.305873]        load_module+0x24d1/0x2990
<4> [195.305875]        __se_sys_finit_module+0xd3/0xf0
<4> [195.305878]        do_syscall_64+0x55/0x1c0
<4> [195.305881]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [195.305883] 
-> #3 (fs_reclaim){+.+.}:
<4> [195.305888]        fs_reclaim_acquire.part.24+0x24/0x30
<4> [195.305891]        kmem_cache_alloc_trace+0x2a/0x290
<4> [195.305918]        i915_gem_object_get_pages_stolen+0xa2/0x130 [i915]
<4> [195.305945]        ____i915_gem_object_get_pages+0x1d/0xa0 [i915]
<4> [195.305971]        __i915_gem_object_get_pages+0x59/0xb0 [i915]
<4> [195.305998]        _i915_gem_object_create_stolen+0xd4/0x100 [i915]
<4> [195.306024]        i915_gem_object_create_stolen+0x67/0xb0 [i915]
<4> [195.306053]        i915_gem_init+0xe5/0xac0 [i915]
<4> [195.306073]        i915_driver_load+0xdc0/0x18b0 [i915]
<4> [195.306095]        i915_pci_probe+0x3f/0x1a0 [i915]
<4> [195.306098]        pci_device_probe+0x9e/0x120
<4> [195.306100]        really_probe+0xea/0x3c0
<4> [195.306102]        driver_probe_device+0x10b/0x120
<4> [195.306105]        device_driver_attach+0x4a/0x50
<4> [195.306107]        __driver_attach+0x97/0x130
<4> [195.306109]        bus_for_each_dev+0x74/0xc0
<4> [195.306111]        bus_add_driver+0x13f/0x210
<4> [195.306113]        driver_register+0x56/0xe0
<4> [195.306116]        do_one_initcall+0x58/0x300
<4> [195.306118]        do_init_module+0x56/0x1f6
<4> [195.306120]        load_module+0x24d1/0x2990
<4> [195.306122]        __se_sys_finit_module+0xd3/0xf0
<4> [195.306125]        do_syscall_64+0x55/0x1c0
<4> [195.306127]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [195.306129] 
-> #2 (&obj->mm.lock){+.+.}:
<4> [195.306133]        __mutex_lock+0x8c/0x960
<4> [195.306158]        i915_gem_object_pin_map+0x2d/0x2a0 [i915]
<4> [195.306182]        __engine_unpark+0x42/0x80 [i915]
<4> [195.306205]        __intel_wakeref_get_first+0x40/0xa0 [i915]
<4> [195.306233]        i915_request_create+0x101/0x240 [i915]
<4> [195.306260]        i915_gem_do_execbuffer+0xbbc/0x21b0 [i915]
<4> [195.306285]        i915_gem_execbuffer2_ioctl+0x11b/0x430 [i915]
<4> [195.306289]        drm_ioctl_kernel+0x83/0xf0
<4> [195.306291]        drm_ioctl+0x2f3/0x3b0
<4> [195.306294]        do_vfs_ioctl+0xa0/0x6e0
<4> [195.306297]        ksys_ioctl+0x35/0x60
<4> [195.306299]        __x64_sys_ioctl+0x11/0x20
<4> [195.306301]        do_syscall_64+0x55/0x1c0
<4> [195.306303]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [195.306305] 
-> #1 (wakeref#2/1){+.+.}:
<4> [195.306309]        __mutex_lock+0x8c/0x960
<4> [195.306331]        __intel_wakeref_get_first+0x24/0xa0 [i915]
<4> [195.306355]        reset_prepare_engine+0x9/0x30 [i915]
<4> [195.306379]        reset_prepare+0x29/0x40 [i915]
<4> [195.306403]        i915_reset+0x9f/0x3d0 [i915]
<4> [195.306427]        i915_reset_device+0xf2/0x170 [i915]
<4> [195.306450]        i915_handle_error+0x231/0x370 [i915]
<4> [195.306473]        i915_wedged_set+0x57/0xc0 [i915]
<4> [195.306477]        simple_attr_write+0xb0/0xd0
<4> [195.306480]        full_proxy_write+0x51/0x80
<4> [195.306483]        vfs_write+0xbd/0x1b0
<4> [195.306485]        ksys_write+0x8f/0xe0
<4> [195.306487]        do_syscall_64+0x55/0x1c0
<4> [195.306490]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [195.306492] 
-> #0 (i915.reset){+.+.}:
<4> [195.306496]        lock_acquire+0xa6/0x1c0
<4> [195.306524]        i915_request_wait+0x16f/0x940 [i915]
<4> [195.306552]        i915_gem_wait_for_idle+0xf5/0x5e0 [i915]
<4> [195.306579]        i915_gem_shrink+0x4b0/0x630 [i915]
<4> [195.306605]        i915_gem_shrink_all+0x2c/0x50 [i915]
<4> [195.306629]        i915_drop_caches_set+0x1de/0x270 [i915]
<4> [195.306631]        simple_attr_write+0xb0/0xd0
<4> [195.306634]        full_proxy_write+0x51/0x80
<4> [195.306636]        vfs_write+0xbd/0x1b0
<4> [195.306639]        ksys_write+0x8f/0xe0
<4> [195.306641]        do_syscall_64+0x55/0x1c0
<4> [195.306644]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [195.306646] 
other info that might help us debug this:

<4> [195.306649] Chain exists of:
  i915.reset --> fs_reclaim --> &dev->struct_mutex/1

<4> [195.306654]  Possible unsafe locking scenario:

<4> [195.306656]        CPU0                    CPU1
<4> [195.306658]        ----                    ----
<4> [195.306659]   lock(&dev->struct_mutex/1);
<4> [195.306661]                                lock(fs_reclaim);
<4> [195.306664]                                lock(&dev->struct_mutex/1);
<4> [195.306666]   lock(i915.reset);
<4> [195.306668] 
 *** DEADLOCK ***

https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6250/re-icl-u/igt@gem_persistent_relocs@forked-faulting-reloc-thrashing.html


<6> [558.123450] Console: switching to colour dummy device 80x25
<6> [558.123486] [IGT] gem_persistent_relocs: executing
<6> [558.139070] [IGT] gem_persistent_relocs: starting subtest
forked-faulting-reloc-thrashing
<5> [558.144289] Setting dangerous option prefault_disable - tainting kernel
<5> [558.146790] Setting dangerous option prefault_disable - tainting kernel
<5> [558.150358] Setting dangerous option prefault_disable - tainting kernel
<5> [558.154106] Setting dangerous option prefault_disable - tainting kernel
<5> [558.157928] Setting dangerous option prefault_disable - tainting kernel
<5> [558.161480] Setting dangerous option prefault_disable - tainting kernel
<5> [558.164165] Setting dangerous option prefault_disable - tainting kernel
<5> [558.166581] Setting dangerous option prefault_disable - tainting kernel
<4> [558.932217] 
<4> [558.932222] ======================================================
<4> [558.932224] WARNING: possible circular locking dependency detected
<4> [558.932227] 5.2.0-rc4-CI-CI_DRM_6250+ #1 Tainted: G     U           
<4> [558.932229] ------------------------------------------------------
<4> [558.932231] gem_persistent_/4166 is trying to acquire lock:
<4> [558.932234] 00000000c23189ff (i915.reset){+.+.}, at:
i915_request_wait+0x148/0x940 [i915]
<4> [558.932289] 
but task is already holding lock:
<4> [558.932292] 0000000042388a8d (&dev->struct_mutex/1){+.+.}, at:
shrinker_lock+0x63/0x80 [i915]
<4> [558.932324] 
which lock already depends on the new lock.

<4> [558.932326] 
the existing dependency chain (in reverse order) is:
<4> [558.932329] 
-> #4 (&dev->struct_mutex/1){+.+.}:
<4> [558.932358]        i915_gem_shrinker_taints_mutex+0x52/0xe0 [i915]
<4> [558.932387]        i915_address_space_init+0x59/0x120 [i915]
<4> [558.932415]        i915_ggtt_init_hw+0x50/0x140 [i915]
<4> [558.932435]        i915_driver_load+0xebb/0x18b0 [i915]
<4> [558.932456]        i915_pci_probe+0x3f/0x1a0 [i915]
<4> [558.932460]        pci_device_probe+0x9e/0x120
<4> [558.932463]        really_probe+0xea/0x3c0
<4> [558.932466]        driver_probe_device+0x10b/0x120
<4> [558.932468]        device_driver_attach+0x4a/0x50
<4> [558.932470]        __driver_attach+0x97/0x130
<4> [558.932472]        bus_for_each_dev+0x74/0xc0
<4> [558.932475]        bus_add_driver+0x13f/0x210
<4> [558.932477]        driver_register+0x56/0xe0
<4> [558.932480]        do_one_initcall+0x58/0x300
<4> [558.932483]        do_init_module+0x56/0x1f6
<4> [558.932486]        load_module+0x24d1/0x2990
<4> [558.932488]        __se_sys_finit_module+0xd3/0xf0
<4> [558.932490]        do_syscall_64+0x55/0x1c0
<4> [558.932494]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [558.932496] 
-> #3 (fs_reclaim){+.+.}:
<4> [558.932500]        fs_reclaim_acquire.part.24+0x24/0x30
<4> [558.932503]        kmem_cache_alloc_trace+0x2a/0x290
<4> [558.932529]        i915_gem_object_get_pages_stolen+0xa2/0x130 [i915]
<4> [558.932555]        ____i915_gem_object_get_pages+0x1d/0xa0 [i915]
<4> [558.932580]        __i915_gem_object_get_pages+0x59/0xb0 [i915]
<4> [558.932605]        _i915_gem_object_create_stolen+0xd4/0x100 [i915]
<4> [558.932630]        i915_gem_object_create_stolen+0x67/0xb0 [i915]
<4> [558.932657]        i915_gem_init+0xe5/0xac0 [i915]
<4> [558.932677]        i915_driver_load+0xdc0/0x18b0 [i915]
<4> [558.932697]        i915_pci_probe+0x3f/0x1a0 [i915]
<4> [558.932700]        pci_device_probe+0x9e/0x120
<4> [558.932702]        really_probe+0xea/0x3c0
<4> [558.932704]        driver_probe_device+0x10b/0x120
<4> [558.932707]        device_driver_attach+0x4a/0x50
<4> [558.932709]        __driver_attach+0x97/0x130
<4> [558.932711]        bus_for_each_dev+0x74/0xc0
<4> [558.932713]        bus_add_driver+0x13f/0x210
<4> [558.932716]        driver_register+0x56/0xe0
<4> [558.932718]        do_one_initcall+0x58/0x300
<4> [558.932720]        do_init_module+0x56/0x1f6
<4> [558.932722]        load_module+0x24d1/0x2990
<4> [558.932724]        __se_sys_finit_module+0xd3/0xf0
<4> [558.932727]        do_syscall_64+0x55/0x1c0
<4> [558.932729]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [558.932731] 
-> #2 (&obj->mm.lock){+.+.}:
<4> [558.932734]        __mutex_lock+0x8c/0x960
<4> [558.932759]        i915_gem_object_pin_map+0x2d/0x2a0 [i915]
<4> [558.932792]        __engine_unpark+0x42/0x80 [i915]
<4> [558.932828]        __intel_wakeref_get_first+0x40/0xa0 [i915]
<4> [558.932867]        i915_request_create+0x101/0x240 [i915]
<4> [558.932908]        i915_gem_do_execbuffer+0xbbc/0x21b0 [i915]
<4> [558.932945]        i915_gem_execbuffer2_ioctl+0x11b/0x430 [i915]
<4> [558.932949]        drm_ioctl_kernel+0x83/0xf0
<4> [558.932952]        drm_ioctl+0x2f3/0x3b0
<4> [558.932956]        do_vfs_ioctl+0xa0/0x6e0
<4> [558.932959]        ksys_ioctl+0x35/0x60
<4> [558.932962]        __x64_sys_ioctl+0x11/0x20
<4> [558.932965]        do_syscall_64+0x55/0x1c0
<4> [558.932969]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [558.932972] 
-> #1 (wakeref#2/1){+.+.}:
<4> [558.932977]        __mutex_lock+0x8c/0x960
<4> [558.933012]        __intel_wakeref_get_first+0x24/0xa0 [i915]
<4> [558.933049]        reset_prepare_engine+0x9/0x30 [i915]
<4> [558.933085]        reset_prepare+0x29/0x40 [i915]
<4> [558.933121]        i915_reset+0x9f/0x3d0 [i915]
<4> [558.933156]        i915_reset_device+0xf2/0x170 [i915]
<4> [558.933192]        i915_handle_error+0x231/0x370 [i915]
<4> [558.933228]        i915_wedged_set+0x57/0xc0 [i915]
<4> [558.933232]        simple_attr_write+0xb0/0xd0
<4> [558.933236]        full_proxy_write+0x51/0x80
<4> [558.933240]        vfs_write+0xbd/0x1b0
<4> [558.933243]        ksys_write+0x8f/0xe0
<4> [558.933246]        do_syscall_64+0x55/0x1c0
<4> [558.933250]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [558.933253] 
-> #0 (i915.reset){+.+.}:
<4> [558.933258]        lock_acquire+0xa6/0x1c0
<4> [558.933296]        i915_request_wait+0x16f/0x940 [i915]
<4> [558.933334]        i915_gem_wait_for_idle+0xf5/0x5e0 [i915]
<4> [558.933371]        i915_gem_shrink+0x4b0/0x630 [i915]
<4> [558.933407]        i915_gem_shrink_all+0x2c/0x50 [i915]
<4> [558.933443]        i915_drop_caches_set+0x1de/0x270 [i915]
<4> [558.933446]        simple_attr_write+0xb0/0xd0
<4> [558.933450]        full_proxy_write+0x51/0x80
<4> [558.933453]        vfs_write+0xbd/0x1b0
<4> [558.933456]        ksys_write+0x8f/0xe0
<4> [558.933459]        do_syscall_64+0x55/0x1c0
<4> [558.933462]        entry_SYSCALL_64_after_hwframe+0x49/0xbe
<4> [558.933466] 
other info that might help us debug this:

<4> [558.933470] Chain exists of:
  i915.reset --> fs_reclaim --> &dev->struct_mutex/1

<4> [558.933476]  Possible unsafe locking scenario:

<4> [558.933480]        CPU0                    CPU1
<4> [558.933482]        ----                    ----
<4> [558.933485]   lock(&dev->struct_mutex/1);
<4> [558.933488]                                lock(fs_reclaim);
<4> [558.933491]                                lock(&dev->struct_mutex/1);
<4> [558.933495]   lock(i915.reset);
<4> [558.933498] 
 *** DEADLOCK ***

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20190613/9872d25a/attachment-0001.html>


More information about the intel-gfx-bugs mailing list