On Thu, 04 Jan 2024, José Roberto de Souza <jose.souza@xxxxxxxxx> wrote: > i915 defines it as unsigned long so Xe should do the same to avoid > compilation warnings: > > CC [M] drivers/gpu/drm/i915/i915_gem.o > CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power_well.o > In file included from ./include/drm/drm_mm.h:51, > from drivers/gpu/drm/xe/xe_bo_types.h:11, > from drivers/gpu/drm/xe/xe_bo.h:11, > from ./drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h:11, > from ./drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h:15, > from drivers/gpu/drm/i915/display/intel_display_power.c:8: > drivers/gpu/drm/i915/display/intel_display_power.c: In function ‘print_async_put_domains_state’: > drivers/gpu/drm/i915/display/intel_display_power.c:408:29: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘int’ [-Wformat=] > 408 | drm_dbg(&i915->drm, "async_put_wakeref %lu\n", > | ^~~~~~~~~~~~~~~~~~~~~~~~~ > 409 | power_domains->async_put_wakeref); > | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | int > ./include/drm/drm_print.h:410:39: note: in definition of macro ‘drm_dev_dbg’ > 410 | __drm_dev_dbg(NULL, dev, cat, fmt, ##__VA_ARGS__) > | ^~~ > ./include/drm/drm_print.h:510:33: note: in expansion of macro ‘drm_dbg_driver’ > 510 | #define drm_dbg(drm, fmt, ...) drm_dbg_driver(drm, fmt, ##__VA_ARGS__) > | ^~~~~~~~~~~~~~ > drivers/gpu/drm/i915/display/intel_display_power.c:408:9: note: in expansion of macro ‘drm_dbg’ > 408 | drm_dbg(&i915->drm, "async_put_wakeref %lu\n", > | ^~~~~~~ > drivers/gpu/drm/i915/display/intel_display_power.c:408:50: note: format string is defined here > 408 | drm_dbg(&i915->drm, "async_put_wakeref %lu\n", > | ~~^ > | | > | long unsigned int > | %u > CC [M] drivers/gpu/drm/i915/i915_gem_evict.o > CC [M] drivers/gpu/drm/i915/i915_gem_gtt.o > CC [M] drivers/gpu/drm/xe/i915-display/intel_display_trace.o > CC [M] drivers/gpu/drm/xe/i915-display/intel_display_wa.o > CC [M] drivers/gpu/drm/i915/i915_query.o > > Fixes: 44e694958b95 ("drm/xe/display: Implement display support") > Cc: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> > Signed-off-by: José Roberto de Souza <jose.souza@xxxxxxxxx> I think the real issue is that we're trying to print the value of something that's supposed to be an opaque cookie, and the fix for that is [1]. However, no harm in syncing the types. Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx> [1] https://patchwork.freedesktop.org/patch/msgid/20240104164600.783371-1-jani.nikula@xxxxxxxxx > --- > drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h b/drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h > index 1c5e30cf10caa..ecb1c07077069 100644 > --- a/drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h > +++ b/drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h > @@ -5,4 +5,4 @@ > > #include <linux/types.h> > > -typedef bool intel_wakeref_t; > +typedef unsigned long intel_wakeref_t; -- Jani Nikula, Intel