gpiolib: Change bitmap allocation to kmalloc_array
authorStephen Boyd <swboyd@chromium.org>
Fri, 23 Mar 2018 16:34:51 +0000 (09:34 -0700)
committerLinus Walleij <linus.walleij@linaro.org>
Tue, 27 Mar 2018 13:34:13 +0000 (15:34 +0200)
We don't need to clear out these bits when we set them immediately
after. Use kmalloc_array() to skip clearing the bits.

Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Tested-by: Timur Tabi <timur@codeaurora.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpiolib.c

index cc0e151..db3788d 100644 (file)
@@ -341,7 +341,7 @@ static unsigned long *gpiochip_allocate_mask(struct gpio_chip *chip)
 {
        unsigned long *p;
 
-       p = kcalloc(BITS_TO_LONGS(chip->ngpio), sizeof(long), GFP_KERNEL);
+       p = kmalloc_array(BITS_TO_LONGS(chip->ngpio), sizeof(*p), GFP_KERNEL);
        if (!p)
                return NULL;