Message ID | 20190404222538.28899-1-rodrigo.vivi@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/lima: Fix broken compilation. | expand |
On Thu, Apr 04, 2019 at 03:25:38PM -0700, Rodrigo Vivi wrote: > From: Rodrigo Vivi <rodriigo.vivi@gmail.com> And it seems that I don't know how to spell my own name anymore! :) If you decide for this patch please let me know, so we can fix while pushing to drm-misc-fixes or tell me to send a v2. > > 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@gmail.com> > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@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 >
On Fri, 5 Apr 2019 at 08:43, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote: > > On Thu, Apr 04, 2019 at 03:25:38PM -0700, Rodrigo Vivi wrote: > > From: Rodrigo Vivi <rodriigo.vivi@gmail.com> > > And it seems that I don't know how to spell my own name anymore! :) > > If you decide for this patch please let me know, so we can fix while > pushing to drm-misc-fixes or tell me to send a v2. > > > > > 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: I ended up writing this as well and squashing it into the merge into drm-next. Thanks, Dave. > > > > 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@gmail.com> > > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@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 > > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
Thanks, I'm OK with this patch. Regards, Qiang On Fri, Apr 5, 2019 at 9:39 AM Dave Airlie <airlied@gmail.com> wrote: > > On Fri, 5 Apr 2019 at 08:43, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote: > > > > On Thu, Apr 04, 2019 at 03:25:38PM -0700, Rodrigo Vivi wrote: > > > From: Rodrigo Vivi <rodriigo.vivi@gmail.com> > > > > And it seems that I don't know how to spell my own name anymore! :) > > > > If you decide for this patch please let me know, so we can fix while > > pushing to drm-misc-fixes or tell me to send a v2. > > > > > > > > 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: > > I ended up writing this as well and squashing it into the merge into drm-next. > > Thanks, > Dave. > > > > > > > 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@gmail.com> > > > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@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 > > > > > _______________________________________________ > > dri-devel mailing list > > dri-devel@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/dri-devel
> On Apr 4, 2019, at 6:39 PM, Dave Airlie <airlied@gmail.com> wrote: > >> On Fri, 5 Apr 2019 at 08:43, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote: >> >>> On Thu, Apr 04, 2019 at 03:25:38PM -0700, Rodrigo Vivi wrote: >>> From: Rodrigo Vivi <rodriigo.vivi@gmail.com> >> >> And it seems that I don't know how to spell my own name anymore! :) >> >> If you decide for this patch please let me know, so we can fix while >> pushing to drm-misc-fixes or tell me to send a v2. >> >>> >>> 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: > > I ended up writing this as well and squashing it into the merge into drm-next. Cool, thanks > > Thanks, > Dave. > >>> >>> 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@gmail.com> >>> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@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 >>> >> _______________________________________________ >> dri-devel mailing list >> dri-devel@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/dri-devel
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;