[PATCH] drm/vblank: Fix -Wformat compile warnings on some arches

Lyude Paul lyude at redhat.com
Thu May 21 20:46:47 UTC 2020

On some architectures like ppc64le and aarch64, compiling with
-Wformat=1 will throw the following warnings:

  In file included from drivers/gpu/drm/drm_vblank.c:33:
  drivers/gpu/drm/drm_vblank.c: In function 'drm_update_vblank_count':
  drivers/gpu/drm/drm_vblank.c:273:16: warning: format '%llu' expects
  argument of type 'long long unsigned int', but argument 4 has type
  'long int' [-Wformat=]
    DRM_DEBUG_VBL("updating vblank count on crtc %u:"
  ./include/drm/drm_print.h:407:22: note: in definition of macro
    drm_dbg(DRM_UT_VBL, fmt, ##__VA_ARGS__)
  drivers/gpu/drm/drm_vblank.c:274:22: note: format string is defined here
           " current=%llu, diff=%u, hw=%u hw_last=%u\n",

So, fix that with a typecast.

Signed-off-by: Lyude Paul <lyude at redhat.com>
Co-developed-by: Dave Airlie <airlied at redhat.com>
 drivers/gpu/drm/drm_vblank.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c
index acb3c3f65b579..1a96db2dd16fa 100644
--- a/drivers/gpu/drm/drm_vblank.c
+++ b/drivers/gpu/drm/drm_vblank.c
@@ -342,7 +342,7 @@ static void drm_update_vblank_count(struct drm_device *dev, unsigned int pipe,
 	DRM_DEBUG_VBL("updating vblank count on crtc %u:"
 		      " current=%llu, diff=%u, hw=%u hw_last=%u\n",
-		      pipe, atomic64_read(&vblank->count), diff,
+		      pipe, (unsigned long long)atomic64_read(&vblank->count), diff,
 		      cur_vblank, vblank->last);
 	if (diff == 0) {

More information about the dri-devel mailing list