✗ CI.checkpatch: warning for A few drm_syncobj optimisations
Patchwork
patchwork at emeril.freedesktop.org
Mon Jun 9 14:59:55 UTC 2025
== Series Details ==
Series: A few drm_syncobj optimisations
URL : https://patchwork.freedesktop.org/series/149983/
State : warning
== 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
202708c00696422fd217223bb679a353a5936e23
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit f158ec20e24258945114bf8cbbd9d79a6bfcb4df
Author: Tvrtko Ursulin <tvrtko.ursulin at igalia.com>
Date: Mon Jun 9 12:33:13 2025 +0100
drm/syncobj: Add a fast path to drm_syncobj_array_find
Running the Cyberpunk 2077 benchmark we can observe that the lookup helper
is relatively hot, but the 97% of the calls are for a single object. (~3%
for two points, and never more than three points. While a more trivial
workload like vkmark under Plasma is even more skewed to single point
lookups.)
Therefore lets add a fast path to bypass the kmalloc_array/kfree and use a
pre-allocated stack array for those cases.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at igalia.com>
Reviewed-by: Maíra Canal <mcanal at igalia.com>
+ /mt/dim checkpatch 40c78d0f4b5d532ada0e4a0a82bb219397796164 drm-intel
82aded96dc2d drm/syncobj: Remove unhelpful helper
a8008724c118 drm/syncobj: Do not allocate an array to store zeros when waiting
b5f176aae8b1 drm/syncobj: Avoid one temporary allocation in drm_syncobj_array_find
-:30: CHECK:PREFER_KERNEL_TYPES: Prefer kernel type 'u32' over 'uint32_t'
#30: FILE: drivers/gpu/drm/drm_syncobj.c:1244:
+ uint32_t count,
-:35: CHECK:PREFER_KERNEL_TYPES: Prefer kernel type 'u32' over 'uint32_t'
#35: FILE: drivers/gpu/drm/drm_syncobj.c:1248:
+ uint32_t i;
total: 0 errors, 0 warnings, 2 checks, 62 lines checked
aa0b99f2777a drm/syncobj: Use put_user in drm_syncobj_query_ioctl
e770aac554d5 drm/syncobj: Avoid temporary allocation in drm_syncobj_timeline_signal_ioctl
-:27: CHECK:PREFER_KERNEL_TYPES: Prefer kernel type 'u64' over 'uint64_t'
#27: FILE: drivers/gpu/drm/drm_syncobj.c:1585:
+ uint64_t __user *points = u64_to_user_ptr(args->points);
-:28: CHECK:PREFER_KERNEL_TYPES: Prefer kernel type 'u32' over 'uint32_t'
#28: FILE: drivers/gpu/drm/drm_syncobj.c:1586:
+ uint32_t i, j, count = args->count_handles;
total: 0 errors, 0 warnings, 2 checks, 82 lines checked
15ec48c58316 drm/syncobj: Add a fast path to drm_syncobj_array_wait_timeout
f158ec20e242 drm/syncobj: Add a fast path to drm_syncobj_array_find
-:65: CHECK:PREFER_KERNEL_TYPES: Prefer kernel type 'u32' over 'uint32_t'
#65: FILE: drivers/gpu/drm/drm_syncobj.c:1308:
+ uint32_t count,
total: 0 errors, 0 warnings, 1 checks, 192 lines checked
More information about the Intel-xe
mailing list