drm/ttm: Make the call to ttm_tt_populate() interruptible when faulting
authorThomas Hellström <thomas.hellstrom@linux.intel.com>
Tue, 4 Apr 2023 20:06:50 +0000 (22:06 +0200)
committerThomas Hellström <thomas.hellstrom@linux.intel.com>
Thu, 6 Apr 2023 08:01:42 +0000 (10:01 +0200)
commite44f18c6ff8beef7b2b10592287f0a9766376d9b
tree1c1985ee1c36e183cf0eae4916d1c6d330ce1645
parent322458c2bb1a0398c5775333e1e71e1ece8a461f
drm/ttm: Make the call to ttm_tt_populate() interruptible when faulting

When swapping in, or under memory pressure ttm_tt_populate() may sleep
for a substantiable amount of time. Allow interrupts during the sleep.
This will also allow us to inject -EINTR errors during swapin in upcoming
patches.

Also avoid returning VM_FAULT_OOM, since that will confuse the core
mm, making it print out a confused message and retrying the fault.
Return VM_FAULT_SIGBUS also under OOM conditions.

Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230404200650.11043-4-thomas.hellstrom@linux.intel.com
drivers/gpu/drm/ttm/ttm_bo_vm.c