parisc: Use kmalloc_array() in add_system_map_addresses()
authorMarkus Elfring <elfring@users.sourceforge.net>
Sun, 28 Aug 2016 09:40:53 +0000 (11:40 +0200)
committerHelge Deller <deller@gmx.de>
Tue, 20 Sep 2016 16:02:56 +0000 (18:02 +0200)
* A multiplication for the size determination of a memory allocation
  indicated that an array data structure should be processed.
  Thus use the corresponding function "kmalloc_array".

  This issue was detected by using the Coccinelle software.

* Replace the specification of a data type by a pointer dereference
  to make the corresponding size determination a bit safer according to
  the Linux coding style convention.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/kernel/inventory.c

index f0b6722fc706169b37a407a1fad6b063984722e8..545f9d2fe71107edc181170dcac473d9dcec0388 100644 (file)
@@ -506,7 +506,7 @@ add_system_map_addresses(struct parisc_device *dev, int num_addrs,
        long status;
        struct pdc_system_map_addr_info addr_result;
 
-       dev->addr = kmalloc(num_addrs * sizeof(unsigned long), GFP_KERNEL);
+       dev->addr = kmalloc_array(num_addrs, sizeof(*dev->addr), GFP_KERNEL);
        if(!dev->addr) {
                printk(KERN_ERR "%s %s(): memory allocation failure\n",
                       __FILE__, __func__);