Page MenuHomeFreeBSD

LinuxKPI: Convert lkpi-shrinker lock to sx.
ClosedPublic

Authored by wulf on Apr 24 2022, 11:38 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, May 22, 2:38 PM
Unknown Object (File)
Sat, May 3, 4:33 PM
Unknown Object (File)
Apr 19 2025, 3:32 AM
Unknown Object (File)
Apr 19 2025, 3:15 AM
Unknown Object (File)
Apr 15 2025, 12:02 AM
Unknown Object (File)
Mar 26 2025, 10:16 AM
Unknown Object (File)
Feb 24 2025, 7:43 PM
Unknown Object (File)
Feb 14 2025, 9:37 AM

Details

Summary

This fixes "might_sleep() with the following non-sleepable locks held:
exclusive sleep mutex lkpi-shrinker" warnings.

Witness message is:
might_sleep() with the following non-sleepable locks held:
exclusive sleep mutex lkpi-shrinker (lkpi-shrinker) r = 0 (0xffffffff827e3900)

locked @ /usr/src/sys/compat/linuxkpi/common/src/linux_shrinker.c:98

stack backtrace:
0 0xffffffff80690115 at witness_debugger+0x65
1 0xffffffff8069126a at witness_warn+0x3ea
2 0xffffffff825c37bf at __i915_active_wait+0x2f
3 0xffffffff825e3d09 at i915_vma_unbind+0x29
4 0xffffffff825c9bb4 at i915_gem_object_unbind+0x1d4
5 0xffffffff826fb344 at i915_gem_shrink+0x234
6 0xffffffff826fb659 at i915_gem_shrinker_scan+0x29
7 0xffffffff827db1ee at linuxkpi_vm_lowmem+0x9e
8 0xffffffff808920f6 at vm_pageout_worker+0x3d6
9 0xffffffff80891cd7 at vm_pageout+0x1d7
10 0xffffffff805d9080 at fork_exit+0x80
11 0xffffffff809158be at fork_trampoline+0xe

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable