Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
intel
intel
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 740
    • Issues 740
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • drm
  • intelintel
  • Issues
  • #2803

Closed
Open
Opened Dec 16, 2020 by Tejasree Illipilli@tejasreeReporter

TGL ICL: igt@gem_exec_schedule@u-fairslice@.* - dmesg-warn - WARNING: possible circular locking dependency detected, is trying to acquire lock at: rcu_barrier but task is already holding lock at: unmap_vmas

https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5900/shard-tglb7/igt@gem_exec_schedule@u-fairslice@rcs0.html

<4> [65.250878] ======================================================
<4> [65.250882] WARNING: possible circular locking dependency detected
<4> [65.250887] 5.10.0-CI-CI_DRM_9483+ #1 Tainted: G     U           
<4> [65.250892] ------------------------------------------------------
<4> [65.250896] gem_exec_schedu/1046 is trying to acquire lock:
<4> [65.250902] ffffffff82731ef0 (rcu_state.barrier_mutex){+.+.}-{3:3}, at: rcu_barrier+0x27/0x210
<4> [65.250923] 
but task is already holding lock:
<4> [65.250929] ffffffff827539c0 (mmu_notifier_invalidate_range_start){+.+.}-{0:0}, at: unmap_vmas+0x0/0x130
<4> [65.250944] 
which lock already depends on the new lock.
<4> [65.250950] 
the existing dependency chain (in reverse order) is:
<4> [65.250955] 
-> #3 (mmu_notifier_invalidate_range_start){+.+.}-{0:0}:
<4> [65.250985]        dma_resv_lockdep+0x1dc/0x28c
<4> [65.250991]        do_one_initcall+0x56/0x2e0
<4> [65.250999]        kernel_init_freeable+0x169/0x1b2
<4> [65.251007]        kernel_init+0x5/0xff
<4> [65.251011]        ret_from_fork+0x1f/0x30
<4> [65.251014] 
-> #2 (fs_reclaim){+.+.}-{0:0}:
<4> [65.251026]        fs_reclaim_acquire.part.129+0x24/0x30
<4> [65.251033]        kmem_cache_alloc_trace+0x2f/0x850
<4> [65.251039]        intel_cpuc_prepare+0x3b/0x1b0
<4> [65.251045]        cpuhp_invoke_callback+0x9e/0x890
<4> [65.251050]        _cpu_up+0xa4/0x130
<4> [65.251053]        cpu_up+0x82/0x90
<4> [65.251057]        bringup_nonboot_cpus+0x4a/0x60
<4> [65.251063]        smp_init+0x21/0x5c
<4> [65.251067]        kernel_init_freeable+0x85/0x1b2
<4> [65.251072]        kernel_init+0x5/0xff
<4> [65.251076]        ret_from_fork+0x1f/0x30
<4> [65.251079] 
-> #1 (cpu_hotplug_lock){++++}-{0:0}:
<4> [65.251087]        cpus_read_lock+0x34/0xc0
<4> [65.251091]        rcu_barrier+0xac/0x210
<4> [65.251095]        kernel_init+0x22/0xff
<4> [65.251098]        ret_from_fork+0x1f/0x30
<4> [65.251101] 
-> #0 (rcu_state.barrier_mutex){+.+.}-{3:3}:
<4> [65.251112]        __lock_acquire+0x1523/0x25a0
<4> [65.251117]        lock_acquire+0xdc/0x3c0
<4> [65.251122]        __mutex_lock+0xa6/0x980
<4> [65.251125]        rcu_barrier+0x27/0x210
<4> [65.251212]        i915_gem_object_unbind+0x2f1/0x3e0 [i915]
<4> [65.251294]        userptr_mn_invalidate_range_start+0x82/0x180 [i915]
<4> [65.251300]        __mmu_notifier_invalidate_range_start+0xbd/0x1f0
<4> [65.251305]        unmap_vmas+0x95/0x130
<4> [65.251310]        unmap_region+0xa3/0x100
<4> [65.251314]        __do_munmap+0x29d/0x4d0
<4> [65.251318]        __vm_munmap+0x66/0xc0
<4> [65.251322]        __x64_sys_munmap+0x12/0x20
<4> [65.251328]        do_syscall_64+0x33/0x80
<4> [65.251333]        entry_SYSCALL_64_after_hwframe+0x44/0xa9
<4> [65.251338] 
other info that might help us debug this:
<4> [65.251343] Chain exists of:
  rcu_state.barrier_mutex --> fs_reclaim --> mmu_notifier_invalidate_range_start
<4> [65.251355]  Possible unsafe locking scenario:
<4> [65.251359]        CPU0                    CPU1
<4> [65.251363]        ----                    ----
<4> [65.251367]   lock(mmu_notifier_invalidate_range_start);
<4> [65.251372]                                lock(fs_reclaim);
<4> [65.251377]                                lock(mmu_notifier_invalidate_range_start);
<4> [65.251384]   lock(rcu_state.barrier_mutex);
<4> [65.251388] 
 *** DEADLOCK ***
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: drm/intel#2803