From: Yongqiang Sun Date: Mon, 1 Jun 2026 19:48:44 +0000 (-0400) Subject: drm/amdkfd: fix sysfs topology prop length on buffer truncation X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=8bfd3aeeb7d4c140434bb9e604fca39ebb3e2937;p=thirdparty%2Flinux.git drm/amdkfd: fix sysfs topology prop length on buffer truncation sysfs_show_gen_prop() accumulated snprintf()'s return value into the offset. snprintf() reports bytes that would have been written, not bytes actually written, so a truncated sysfs show could over-report its length. Use sysfs_emit_at(), which returns only the bytes written. Signed-off-by: Yongqiang Sun Acked-by: Alex Deucher Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c index dc1c6bd1252f..00517c3d0e6a 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c @@ -198,8 +198,7 @@ struct kfd_topology_device *kfd_create_topology_device( #define sysfs_show_gen_prop(buffer, offs, fmt, ...) \ - (offs += snprintf(buffer+offs, PAGE_SIZE-offs, \ - fmt, __VA_ARGS__)) + (offs += sysfs_emit_at(buffer, offs, fmt, __VA_ARGS__)) #define sysfs_show_32bit_prop(buffer, offs, name, value) \ sysfs_show_gen_prop(buffer, offs, "%s %u\n", name, value) #define sysfs_show_64bit_prop(buffer, offs, name, value) \