✓ CI.checkpatch: success for drm/xe: Flush delayed frees and retry on user object allocation failure
Patchwork
patchwork at emeril.freedesktop.org
Fri Mar 14 16:47:06 UTC 2025
== Series Details ==
Series: drm/xe: Flush delayed frees and retry on user object allocation failure
URL : https://patchwork.freedesktop.org/series/146323/
State : success
== Summary ==
+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
cbb4e4a079d89106c2736adc3c7de6f9dc56da07
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit cc58df3adae35d1d9b8ac8dd5112ba17e370c08e
Author: Tvrtko Ursulin <tvrtko.ursulin at igalia.com>
Date: Fri Mar 14 14:57:50 2025 +0000
drm/xe: Flush delayed frees and retry on user object allocation failure
If userspace workload is operating near the limit of available memory and
it moves from one large working set to another, in other words free some
large buffers and immediately allocate some new ones, the TTM eviction
attempt during new resource allocation may not be effective due the
combination of relying on trylock and the fact released buffer might have
ended on the delayed release path.
From userspace point of view this reflects as sporadic
VK_ERROR_OUT_OF_DEVICE_MEMORY ie. sometimes the application will work,
sometimes will fail, even if it does exactly the same thing on an
otherwise idle system.
Good examples are two tests from the VK CTS suite:
- dEQP-VK.pipeline.monolithic.render_to_image.core.*
- dEQP-VK.memory.allocation.random*
To improve this we can flush the TTM delayed object free workqueue and
retry when encountering ENOMEM, which so far looks like a significant
improvement in mean-time-to-failure.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at igalia.com>
Cc: Lucas De Marchi <lucas.demarchi at intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
Cc: Thomas Hellström <thomas.hellstrom at linux.intel.com>
+ /mt/dim checkpatch 333f31505dac3dd808b66cbde3c51f8f05c99430 drm-intel
cc58df3adae3 drm/xe: Flush delayed frees and retry on user object allocation failure
More information about the Intel-xe
mailing list