drm/xe/rtp: Drop sentinels from arg to xe_rtp_process_to_sr()
There's a mismatch on API: while xe_rtp_process_to_sr() processes entries until an entry without name, the active tracking with xe_rtp_process_ctx_enable_active_tracking() needs to use the number of elements. The number of elements is taken everywhere using ARRAY_SIZE(), but that will have one entry too many. This leads to the following warning, as reported by lkp: drivers/gpu/drm/xe/xe_tuning.c: In function 'xe_tuning_dump': >> include/drm/drm_print.h:228:31: warning: '%s' directive argument is null [-Wformat-overflow=] 228 | drm_printf((printer), "%.*s" fmt, (indent), "\t\t\t\t\tX", ##__VA_ARGS__) | ^~~~~~ drivers/gpu/drm/xe/xe_tuning.c:226:17: note: in expansion of macro 'drm_printf_indent' 226 | drm_printf_indent(p, 1, "%s\n", engine_tunings[idx].name); | ^~~~~~~~~~~~~~~~~ That's because it will still process the last entry when tracking the active tunings. The same issue exists in the WAs. Change xe_rtp_process_to_sr() to also take the number of elements so the empty entry can be removed and the warning should go away. Fixing on the active-tracking side would more fragile as the it would need a `- 1` everywhere and continue to use a different approach for number of elements. Aside from the warning, it's a non-issue as there would always be enough bits allocated and the last entry would never be active since xe_rtp_process_to_sr() stops on the sentinel. Reported-by:kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202503021906.P2MwAvyK-lkp@intel.com/ Cc: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Reviewed-by:
Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250306-fix-print-warning-v1-1-979c3dc03c0d@intel.com Signed-off-by:
Lucas De Marchi <lucas.demarchi@intel.com>
Showing
- drivers/gpu/drm/xe/tests/xe_rtp_test.c 1 addition, 1 deletiondrivers/gpu/drm/xe/tests/xe_rtp_test.c
- drivers/gpu/drm/xe/xe_hw_engine.c 2 additions, 4 deletionsdrivers/gpu/drm/xe/xe_hw_engine.c
- drivers/gpu/drm/xe/xe_reg_whitelist.c 2 additions, 2 deletionsdrivers/gpu/drm/xe/xe_reg_whitelist.c
- drivers/gpu/drm/xe/xe_rtp.c 5 additions, 1 deletiondrivers/gpu/drm/xe/xe_rtp.c
- drivers/gpu/drm/xe/xe_rtp.h 1 addition, 1 deletiondrivers/gpu/drm/xe/xe_rtp.h
- drivers/gpu/drm/xe/xe_tuning.c 4 additions, 8 deletionsdrivers/gpu/drm/xe/xe_tuning.c
- drivers/gpu/drm/xe/xe_wa.c 3 additions, 9 deletionsdrivers/gpu/drm/xe/xe_wa.c
Loading
Please register or sign in to comment