The use in gnttab_map() is latently buggy, as "frames" there is
xen_pfn_t *, not unsigned long *. Adjust the correct use in
gnttab_map_frames_v2() as well, just to avoid the problematic pattern of
sizeof(<type>).

Signed-off-by: Jan Beulich <[email protected]>

--- a/drivers/xen/grant-table.c
+++ b/drivers/xen/grant-table.c
@@ -1406,7 +1406,7 @@ static int gnttab_map_frames_v2(xen_pfn_
        /* No need for kzalloc as it is initialized in following hypercall
         * GNTTABOP_get_status_frames.
         */
-       sframes = kmalloc_array(nr_sframes, sizeof(uint64_t), GFP_ATOMIC);
+       sframes = kmalloc_array(nr_sframes, sizeof(*sframes), GFP_ATOMIC);
        if (!sframes)
                return -ENOMEM;
 
@@ -1478,7 +1478,7 @@ static int gnttab_map(unsigned int start
        /* No need for kzalloc as it is initialized in following hypercall
         * GNTTABOP_setup_table.
         */
-       frames = kmalloc_array(nr_gframes, sizeof(unsigned long), GFP_ATOMIC);
+       frames = kmalloc_array(nr_gframes, sizeof(*frames), GFP_ATOMIC);
        if (!frames)
                return -ENOMEM;
 

Reply via email to