Message ID | 20190617125002.1312331-1-arnd@arndb.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/komeda: fix size_t format string | expand |
Hi Arnd, On Mon, Jun 17, 2019 at 02:49:18PM +0200, Arnd Bergmann wrote: > The debug output uses the wrong format string for printing a size_t: > > In file included from include/drm/drm_mm.h:49, > from include/drm/drm_vma_manager.h:26, > from include/drm/drm_gem.h:40, > from drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c:9: > drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c: In function 'komeda_fb_afbc_size_check': > drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c:96:17: error: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'size_t' {aka 'unsigned int'} [-Werror=format=] > DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%lx. min_size 0x%x.\n", > > This is harmless in the kernel as size_t and long are always the same > width, but it's always better to use the correct format string > to shut up the warning. > > Fixes: 9ccf536e53cb ("drm/komeda: Added AFBC support for komeda driver") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Thank you for the patch! I did see the warning email sent by the build bots and I've had the same fix in my stash, but then I've looked at the code using min_size and I'm not happy with it, so I've asked James to come up with a patch to fix things in a better way. So, if you don't mind, I will delay this patch until James comes up with a fix in the next couple of days. If he is not, then I'll pull the patch into mali-dp tree (shared with komeda). Best regards, Liviu > --- > drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c > index abc8c0ccc053..58ff34e718d0 100644 > --- a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c > +++ b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c > @@ -93,7 +93,7 @@ komeda_fb_afbc_size_check(struct komeda_fb *kfb, struct drm_file *file, > AFBC_SUPERBLK_ALIGNMENT); > min_size = kfb->afbc_size + fb->offsets[0]; > if (min_size > obj->size) { > - DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%lx. min_size 0x%x.\n", > + DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%zx. min_size 0x%x.\n", > obj->size, min_size); > goto check_failed; > } > @@ -137,7 +137,7 @@ komeda_fb_none_afbc_size_check(struct komeda_dev *mdev, struct komeda_fb *kfb, > min_size = komeda_fb_get_pixel_addr(kfb, 0, fb->height, i) > - to_drm_gem_cma_obj(obj)->paddr; > if (obj->size < min_size) { > - DRM_DEBUG_KMS("The fb->obj[%d] size: %ld lower than the minimum requirement: %d.\n", > + DRM_DEBUG_KMS("The fb->obj[%d] size: %zd lower than the minimum requirement: %d.\n", > i, obj->size, min_size); > return -EINVAL; > } > -- > 2.20.0 >
On Mon, Jun 17, 2019 at 02:49:18PM +0200, Arnd Bergmann wrote: > The debug output uses the wrong format string for printing a size_t: > > In file included from include/drm/drm_mm.h:49, > from include/drm/drm_vma_manager.h:26, > from include/drm/drm_gem.h:40, > from drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c:9: > drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c: In function 'komeda_fb_afbc_size_check': > drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c:96:17: error: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'size_t' {aka 'unsigned int'} [-Werror=format=] > DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%lx. min_size 0x%x.\n", > > This is harmless in the kernel as size_t and long are always the same > width, but it's always better to use the correct format string > to shut up the warning. > > Fixes: 9ccf536e53cb ("drm/komeda: Added AFBC support for komeda driver") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c > index abc8c0ccc053..58ff34e718d0 100644 > --- a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c > +++ b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c > @@ -93,7 +93,7 @@ komeda_fb_afbc_size_check(struct komeda_fb *kfb, struct drm_file *file, > AFBC_SUPERBLK_ALIGNMENT); > min_size = kfb->afbc_size + fb->offsets[0]; > if (min_size > obj->size) { > - DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%lx. min_size 0x%x.\n", > + DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%zx. min_size 0x%x.\n", > obj->size, min_size); > goto check_failed; > } > @@ -137,7 +137,7 @@ komeda_fb_none_afbc_size_check(struct komeda_dev *mdev, struct komeda_fb *kfb, > min_size = komeda_fb_get_pixel_addr(kfb, 0, fb->height, i) > - to_drm_gem_cma_obj(obj)->paddr; > if (obj->size < min_size) { > - DRM_DEBUG_KMS("The fb->obj[%d] size: %ld lower than the minimum requirement: %d.\n", > + DRM_DEBUG_KMS("The fb->obj[%d] size: %zd lower than the minimum requirement: %d.\n", > i, obj->size, min_size); > return -EINVAL; > } > -- > 2.20.0 Hi Arnd: Thank you for the patch. Reviewed-by: James Qian Wang (Arm Technology China) <james.qian.wang@arm.com>
diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c index abc8c0ccc053..58ff34e718d0 100644 --- a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c +++ b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c @@ -93,7 +93,7 @@ komeda_fb_afbc_size_check(struct komeda_fb *kfb, struct drm_file *file, AFBC_SUPERBLK_ALIGNMENT); min_size = kfb->afbc_size + fb->offsets[0]; if (min_size > obj->size) { - DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%lx. min_size 0x%x.\n", + DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%zx. min_size 0x%x.\n", obj->size, min_size); goto check_failed; } @@ -137,7 +137,7 @@ komeda_fb_none_afbc_size_check(struct komeda_dev *mdev, struct komeda_fb *kfb, min_size = komeda_fb_get_pixel_addr(kfb, 0, fb->height, i) - to_drm_gem_cma_obj(obj)->paddr; if (obj->size < min_size) { - DRM_DEBUG_KMS("The fb->obj[%d] size: %ld lower than the minimum requirement: %d.\n", + DRM_DEBUG_KMS("The fb->obj[%d] size: %zd lower than the minimum requirement: %d.\n", i, obj->size, min_size); return -EINVAL; }
The debug output uses the wrong format string for printing a size_t: In file included from include/drm/drm_mm.h:49, from include/drm/drm_vma_manager.h:26, from include/drm/drm_gem.h:40, from drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c:9: drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c: In function 'komeda_fb_afbc_size_check': drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c:96:17: error: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'size_t' {aka 'unsigned int'} [-Werror=format=] DRM_DEBUG_KMS("afbc size check failed, obj_size: 0x%lx. min_size 0x%x.\n", This is harmless in the kernel as size_t and long are always the same width, but it's always better to use the correct format string to shut up the warning. Fixes: 9ccf536e53cb ("drm/komeda: Added AFBC support for komeda driver") Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)