Re: [PATCH v2 4/5] Input: gpio-keys - Switch to bitmap_zalloc()
From: Andy Shevchenko
Date: Sat Jun 16 2018 - 14:50:35 EST
On Sat, Jun 16, 2018 at 1:08 AM Yury Norov <ynorov@xxxxxxxxxxxxxxxxxx> wrote:
>
> On Fri, Jun 15, 2018 at 04:20:16PM +0300, Andy Shevchenko wrote:
> > External Email
> >
> > Switch to bitmap_zalloc() to show clearly what we are allocating.
> > Besides that it returns pointer of bitmap type instead of opaque void *.
>
> Nit. There's no special type for bitmaps, bitmap_zalloc() returns long *.
> Is it less opaque than void *, not sure.
Yes, it enables type checking by compiler, which is good thing.
You can't supply other pointer to this API, like
unsigned char *bar = kmalloc(BITS_PER_LONGS(nbits) * sizeof(unsigned
long), GFP_KERNEL);
...
bitmap_free(bar); //<< compiler will not pass this silently!
Or other way around:
unsigned char *foo = bitmap_alloc(nbits, GFP_KERNEL); //<< wrong types!
--
With Best Regards,
Andy Shevchenko