Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/xe/query: Fix topology query pointer advance

The topology query helper advanced the user pointer by the size
of the pointer, not the size of the structure. This can misalign
the output blob and corrupt the following mask. Fix the increment
to use sizeof(*topo).
There is no issue currently, as sizeof(*topo) happens to be equal
to sizeof(topo) on 64-bit systems (both evaluate to 8 bytes).

Fixes: dd08ebf6c352 ("drm/xe: Introduce a new DRM driver for Intel GPUs")
Signed-off-by: Shuicheng Lin <shuicheng.lin@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patch.msgid.link/20260130043907.465128-2-shuicheng.lin@intel.com
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>

authored by

Shuicheng Lin and committed by
Matt Roper
c2a68591 568d9d0d

+1 -1
+1 -1
drivers/gpu/drm/xe/xe_query.c
··· 487 487 488 488 if (copy_to_user(*ptr, topo, sizeof(*topo))) 489 489 return -EFAULT; 490 - *ptr += sizeof(topo); 490 + *ptr += sizeof(*topo); 491 491 492 492 if (copy_to_user(*ptr, mask, mask_size)) 493 493 return -EFAULT;