[PATCH] drm/lima: Fix broken compilation.

Rodrigo Vivi rodrigo.vivi at intel.com
Thu Apr 4 22:25:38 UTC 2019


From: Rodrigo Vivi <rodriigo.vivi at gmail.com>

I'm not entirely sure about the limits we should use
here on ARM based driver, but apparently the entry and limit
are inverted and UINT_MAX cannot be used directly there.

So let's at least for now fix this compilation issue
on a compilation only driver:

CC [M]  drivers/gpu/drm/lima/lima_ctx.o
In file included from ./include/linux/kernel.h:7,
                 from ./include/asm-generic/bug.h:18,
                 from ./arch/x86/include/asm/bug.h:83,
                 from ./include/linux/bug.h:5,
                 from ./include/linux/mmdebug.h:5,
                 from ./include/linux/gfp.h:5,
                 from ./include/linux/slab.h:15,
                 from drivers/gpu/drm/lima/lima_ctx.c:4:
drivers/gpu/drm/lima/lima_ctx.c: In function ‘lima_ctx_create’:
./include/linux/limits.h:13:18: error: incompatible type for argument 4 of ‘xa_alloc’
 #define UINT_MAX (~0U)
                  ^~~~~
drivers/gpu/drm/lima/lima_ctx.c:27:41: note: in expansion of macro ‘UINT_MAX’
  err = xa_alloc(&mgr->handles, id, ctx, UINT_MAX, GFP_KERNEL);
                                         ^~~~~~~~
In file included from ./include/linux/radix-tree.h:31,
                 from ./include/linux/idr.h:15,
                 from ./include/drm/drm_device.h:7,
                 from drivers/gpu/drm/lima/lima_device.h:7,
                 from drivers/gpu/drm/lima/lima_ctx.c:7:
./include/linux/xarray.h:817:32: note: expected ‘struct xa_limit’ but argument is of type ‘unsigned int’
   void *entry, struct xa_limit limit, gfp_t gfp)
                ~~~~~~~~~~~~~~~~^~~~~
make[4]: *** [scripts/Makefile.build:276: drivers/gpu/drm/lima/lima_ctx.o] Error 1
make[3]: *** [scripts/Makefile.build:486: drivers/gpu/drm/lima] Error 2
make[2]: *** [scripts/Makefile.build:486: drivers/gpu/drm] Error 2
make[1]: *** [scripts/Makefile.build:486: drivers/gpu] Error 2
make: *** [Makefile:1051: drivers] Error 2

Cc: Qiang Yu <yuq825 at gmail.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi at gmail.com>
---
 drivers/gpu/drm/lima/lima_ctx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/lima/lima_ctx.c b/drivers/gpu/drm/lima/lima_ctx.c
index c8d12f7c6894..22fff6caa961 100644
--- a/drivers/gpu/drm/lima/lima_ctx.c
+++ b/drivers/gpu/drm/lima/lima_ctx.c
@@ -23,7 +23,7 @@ int lima_ctx_create(struct lima_device *dev, struct lima_ctx_mgr *mgr, u32 *id)
 			goto err_out0;
 	}
 
-	err = xa_alloc(&mgr->handles, id, UINT_MAX, ctx, GFP_KERNEL);
+	err = xa_alloc(&mgr->handles, id, ctx, xa_limit_32b, GFP_KERNEL);
 	if (err < 0)
 		goto err_out0;
 
-- 
2.20.1



More information about the dri-devel mailing list