ARM: lpc32xx: Use kmemdup to replace duplicating its implementation
authorzhong jiang <zhongjiang@huawei.com>
Fri, 10 Aug 2018 02:40:51 +0000 (10:40 +0800)
committerVladimir Zapolskiy <vz@mleia.com>
Sun, 3 Feb 2019 19:40:09 +0000 (21:40 +0200)
kmemdup is better than kmalloc() + memcpy(), and we do not like
open code. So just use kmemdup instead.

Signed-off-by: zhong jiang <zhongjiang@huawei.com>
[vzapolskiy: resolved a merge conflict]
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
arch/arm/mach-lpc32xx/pm.c

index 5a4d314..32bca35 100644 (file)
@@ -86,14 +86,11 @@ static int lpc32xx_pm_enter(suspend_state_t state)
        void *iram_swap_area;
 
        /* Allocate some space for temporary IRAM storage */
-       iram_swap_area = kmalloc(lpc32xx_sys_suspend_sz, GFP_KERNEL);
+       iram_swap_area = kmemdup((void *)TEMP_IRAM_AREA,
+                                lpc32xx_sys_suspend_sz, GFP_KERNEL);
        if (!iram_swap_area)
                return -ENOMEM;
 
-       /* Backup a small area of IRAM used for the suspend code */
-       memcpy(iram_swap_area, (void *) TEMP_IRAM_AREA,
-               lpc32xx_sys_suspend_sz);
-
        /*
         * Copy code to suspend system into IRAM. The suspend code
         * needs to run from IRAM as DRAM may no longer be available