Locking issue with faults on PVC
[ 157.012205] ------------[ cut here ]------------
[ 157.012213] WARNING: CPU: 15 PID: 336 at drivers/gpu/drm/xe/xe_pt.c:958 xe_pt_commit_locks_assert+0x35/0xd0 [xe]
[ 157.012263] Modules linked in: fuse x86_pkg_temp_thermal coretemp acpi_power_meter igb crct10dif_pclmul crc32_pclmul ghash_clmulni_intel xe ptp i2c_i801 pps_core i2c_smbus
[ 157.012357] CPU: 15 PID: 336 Comm: kworker/u33:0 Tainted: G W 6.1.0-rc1-xe+ #3509
[ 157.012367] Hardware name: Intel Corporation WilsonCity/WilsonCity, BIOS WLYDCRB1.SYS.0020.P84.2103030140 03/03/2021
[ 157.012375] Workqueue: xe_gt_page_fault_work_q pf_queue_work_func [xe]
[ 157.012427] RIP: 0010:xe_pt_commit_locks_assert+0x35/0xd0 [xe]
[ 157.012473] Code: 48 8b 5f 18 40 84 f6 74 0b 85 c0 75 75 5b 5d c3 cc cc cc cc 85 c0 74 f5 31 f6 48 8d bb c0 01 00 00 e8 ef 7e fc e1 85 c0 75 02 <0f> 0b 8b 15 df 1c 0a e3 48 8b 45 38 48 85 c0 74 66 85 d2 74 ce 48
[ 157.012482] RSP: 0018:ffffc9000122fa78 EFLAGS: 00010246
[ 157.012497] RAX: 0000000000000000 RBX: ffff888130db3800 RCX: 0000000000000000
[ 157.012504] RDX: 0000000000000001 RSI: ffffffff82a6a214 RDI: ffffffff82ac83df
[ 157.012512] RBP: ffff88813c87ee00 R08: 0000000000000001 R09: 0000000000000001
[ 157.012520] R10: 0000000000000001 R11: 0000000078b0b514 R12: ffff888120ff2098
[ 157.012528] R13: ffff888121034808 R14: 0000000000000000 R15: 0000000000000001
[ 157.012535] FS: 0000000000000000(0000) GS:ffff88a000180000(0000) knlGS:0000000000000000
[ 157.012544] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 157.012552] CR2: 00007f6788c6c020 CR3: 0000000006e12004 CR4: 0000000000770ee0
[ 157.012561] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 157.012568] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 157.012576] PKRU: 55555554
[ 157.012583] Call Trace:
[ 157.012590] <TASK>
[ 157.012602] __xe_pt_bind_vma+0x1b4/0x480 [xe]
[ 157.012654] ? __lock_acquire+0x5c3/0xb70
[ 157.012728] ? mark_held_locks+0x48/0x80
[ 157.012745] ? _raw_spin_unlock_irqrestore+0x54/0x70
[ 157.012760] ? lockdep_hardirqs_on+0xbf/0x140
[ 157.012777] ? _raw_spin_unlock_irqrestore+0x3d/0x70
[ 157.012792] ? dma_resv_reserve_fences+0x161/0x320
[ 157.012848] ? handle_pagefault+0x242/0x8a0 [xe]
[ 157.012934] handle_pagefault+0x242/0x8a0 [xe]
[ 157.013066] pf_queue_work_func+0x10c/0x1c0 [xe]
[ 157.013135] process_one_work+0x272/0x5b0
[ 157.013179] worker_thread+0x37/0x370
[ 157.013202] ? process_one_work+0x5b0/0x5b0
[ 157.013217] kthread+0xed/0x120
[ 157.013228] ? kthread_complete_and_exit+0x20/0x20
[ 157.013250] ret_from_fork+0x1f/0x30
[ 157.013308] </TASK>
Edited by Matthew Brost