drivers/net: Use kcalloc or kzalloc
Julia Lawall [Thu, 13 May 2010 10:06:01 +0000 (10:06 +0000)]
Use kcalloc or kzalloc rather than the combination of kmalloc and memset.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
expression x,y,flags;
statement S;
type T;
@@

x =
-   kmalloc
+   kcalloc
           (
-           y * sizeof(T),
+           y, sizeof(T),
                flags);
 if (x == NULL) S
-memset(x, 0, y * sizeof(T));

@@
expression x,size,flags;
statement S;
@@

-x = kmalloc(size,flags);
+x = kzalloc(size,flags);
 if (x == NULL) S
-memset(x, 0, size);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/net/ibmveth.c
drivers/net/ksz884x.c

index 941be84..7acb3ed 100644 (file)
@@ -200,7 +200,7 @@ static int ibmveth_alloc_buffer_pool(struct ibmveth_buff_pool *pool)
                return -1;
        }
 
-       pool->skbuff = kmalloc(sizeof(void*) * pool->size, GFP_KERNEL);
+       pool->skbuff = kcalloc(pool->size, sizeof(void *), GFP_KERNEL);
 
        if(!pool->skbuff) {
                kfree(pool->dma_addr);
@@ -211,7 +211,6 @@ static int ibmveth_alloc_buffer_pool(struct ibmveth_buff_pool *pool)
                return -1;
        }
 
-       memset(pool->skbuff, 0, sizeof(void*) * pool->size);
        memset(pool->dma_addr, 0, sizeof(dma_addr_t) * pool->size);
 
        for(i = 0; i < pool->size; ++i) {
index cc0bc8a..c80ca64 100644 (file)
@@ -7049,10 +7049,9 @@ static int __init pcidev_init(struct pci_dev *pdev,
                        mib_port_count = SWITCH_PORT_NUM;
                }
                hw->mib_port_cnt = TOTAL_PORT_NUM;
-               hw->ksz_switch = kmalloc(sizeof(struct ksz_switch), GFP_KERNEL);
+               hw->ksz_switch = kzalloc(sizeof(struct ksz_switch), GFP_KERNEL);
                if (!hw->ksz_switch)
                        goto pcidev_init_alloc_err;
-               memset(hw->ksz_switch, 0, sizeof(struct ksz_switch));
 
                sw = hw->ksz_switch;
        }