OSDN Git Service

ia64: sn: Use kmemdup rather than duplicating its implementation
authorThomas Meyer <thomas@m3y3r.de>
Thu, 17 Nov 2011 22:43:40 +0000 (23:43 +0100)
committerTony Luck <tony.luck@intel.com>
Fri, 9 Dec 2011 23:22:34 +0000 (15:22 -0800)
The semantic patch that makes this change is available
in scripts/coccinelle/api/memdup.cocci.

Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
Signed-off-by: Tony Luck <tony.luck@intel.com>
arch/ia64/sn/kernel/irq.c

index 485c42d..dfac09a 100644 (file)
@@ -150,12 +150,11 @@ struct sn_irq_info *sn_retarget_vector(struct sn_irq_info *sn_irq_info,
         * PROM does not support SAL_INTR_REDIRECT, or it failed.
         * Revert to old method.
         */
-       new_irq_info = kmalloc(sizeof(struct sn_irq_info), GFP_ATOMIC);
+       new_irq_info = kmemdup(sn_irq_info, sizeof(struct sn_irq_info),
+                              GFP_ATOMIC);
        if (new_irq_info == NULL)
                return NULL;
 
-       memcpy(new_irq_info, sn_irq_info, sizeof(struct sn_irq_info));
-
        /* Free the old PROM new_irq_info structure */
        sn_intr_free(local_nasid, local_widget, new_irq_info);
        unregister_intr_pda(new_irq_info);