Re: [PATCH 3/4] drm/exynos: Drop exynos_drm_gem.size field
From: Chen-Yu Tsai
Date: Wed May 27 2026 - 17:05:17 EST
On Wed, May 27, 2026 at 7:19 PM Mark Brown <broonie@xxxxxxxxxx> wrote:
>
> On Thu, Mar 26, 2026 at 05:43:05PM +0800, Chen-Yu Tsai wrote:
> > A size field is already included in the base GEM object, and is
> > initialized through drm_gem_object_init() with the same value.
> >
> > Drop the field in the subclass to save some space. More changes to
> > make exynos_drm_gem a subclass of drm_gem_dma_object will follow.
>
> I'm seeing warnings on arm multi_v7_defconfig which also show up in
> other CI which seem to be due to this commit, the type of the size field
> is different so the format specifiers need updating or casts adding:
I posted a fix for this one and a half months ago when the culprit
patch was queued up and I got a report about this from the bots.
Inki hasn't picked up my fix yet. Arnd posted the same fix today.
And it seems the exynos-drm-next stuff was only merged into drm-next
yesterday, now causing the warnings to pop up all over.
ChenYu
> CC [M] drivers/gpu/drm/exynos/exynos_drm_gem.o
> CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga102.o
> In file included from ../drivers/gpu/drm/exynos/exynos_drm_gem.c:16:
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c: In function 'exynos_drm_alloc_buf':
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c:69:49: warning: format '%lx' expects argument of type 'long unsigned int', but argument 6 has type 'size_t' {aka 'unsigned int'} [-Wformat=]
> 69 | DRM_DEV_DEBUG_KMS(drm_dev_dma_dev(dev), "dma_addr(0x%lx), size(0x%lx)\n",
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 70 | (unsigned long)exynos_gem->dma_addr, exynos_gem->base.size);
> | ~~~~~~~~~~~~~~~~~~~~~
> | |
> | size_t {aka unsigned int}
> ../include/drm/drm_print.h:563:39: note: in definition of macro 'drm_dev_dbg'
> 563 | __drm_dev_dbg(NULL, dev, cat, fmt, ##__VA_ARGS__)
> | ^~~
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c:69:9: note: in expansion of macro 'DRM_DEV_DEBUG_KMS'
> 69 | DRM_DEV_DEBUG_KMS(drm_dev_dma_dev(dev), "dma_addr(0x%lx), size(0x%lx)\n",
> | ^~~~~~~~~~~~~~~~~
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c:69:76: note: format string is defined here
> 69 | DRM_DEV_DEBUG_KMS(drm_dev_dma_dev(dev), "dma_addr(0x%lx), size(0x%lx)\n",
> | ~~^
> | |
> | long unsigned int
> | %x
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c: In function 'exynos_drm_free_buf':
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c:83:37: warning: format '%lx' expects argument of type 'long unsigned int', but argument 6 has type 'size_t' {aka 'unsigned int'} [-Wformat=]
> 83 | DRM_DEV_DEBUG_KMS(dev->dev, "dma_addr(0x%lx), size(0x%lx)\n",
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 84 | (unsigned long)exynos_gem->dma_addr, exynos_gem->base.size);
> | ~~~~~~~~~~~~~~~~~~~~~
> | |
> | size_t {aka unsigned int}
> ../include/drm/drm_print.h:563:39: note: in definition of macro 'drm_dev_dbg'
> 563 | __drm_dev_dbg(NULL, dev, cat, fmt, ##__VA_ARGS__)
> | ^~~
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c:83:9: note: in expansion of macro 'DRM_DEV_DEBUG_KMS'
> 83 | DRM_DEV_DEBUG_KMS(dev->dev, "dma_addr(0x%lx), size(0x%lx)\n",
> | ^~~~~~~~~~~~~~~~~
> ../drivers/gpu/drm/exynos/exynos_drm_gem.c:83:64: note: format string is defined here
> 83 | DRM_DEV_DEBUG_KMS(dev->dev, "dma_addr(0x%lx), size(0x%lx)\n",
> | ~~^
> | |
> | long unsigned int
> | %x
> CC [M] drivers/gpu/drm/rockchip/rockchip_drm_vop.o
> CC [M] drivers/gpu/drm/exynos/exynos_drm_plane.o