ste_dma40: Return directly after a failed kmalloc_array()
[cascardo/linux.git] / drivers / dma / ste_dma40.c
index 8b18e44..b4dd591 100644 (file)
@@ -3411,13 +3411,11 @@ static int __init d40_lcla_allocate(struct d40_base *base)
         * To full fill this hardware requirement without wasting 256 kb
         * we allocate pages until we get an aligned one.
         */
-       page_list = kmalloc(sizeof(unsigned long) * MAX_LCLA_ALLOC_ATTEMPTS,
-                           GFP_KERNEL);
-
-       if (!page_list) {
-               ret = -ENOMEM;
-               goto failure;
-       }
+       page_list = kmalloc_array(MAX_LCLA_ALLOC_ATTEMPTS,
+                                 sizeof(*page_list),
+                                 GFP_KERNEL);
+       if (!page_list)
+               return -ENOMEM;
 
        /* Calculating how many pages that are required */
        base->lcla_pool.pages = SZ_1K * base->num_phy_chans / PAGE_SIZE;