]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
usb: gadget: g_ffs: Adjust f_ffs[0] allocation type
authorKees Cook <kees@kernel.org>
Sat, 26 Apr 2025 06:21:26 +0000 (23:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 1 May 2025 15:30:45 +0000 (17:30 +0200)
In preparation for making the kmalloc family of allocators type aware,
we need to make sure that the returned type from the allocation matches
the type of the variable being assigned. (Before, the allocator would
always return "void *", which can be implicitly cast to any pointer type.)

The assigned type is "struct usb_function **" but the returned type
will be "struct usb_function ***". These are the same size allocation
(pointer size), but different types. Adjust the allocation type to match
the assignment.

Signed-off-by: Kees Cook <kees@kernel.org>
Link: https://lore.kernel.org/r/20250426062125.work.209-kees@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/gadget/legacy/g_ffs.c

index a9544fea87237bf4be630ec784adce4a87dd6944..578556422ea3f1f3289f37382d03f1b5428de08e 100644 (file)
@@ -188,7 +188,7 @@ static int __init gfs_init(void)
        /*
         * Allocate in one chunk for easier maintenance
         */
-       f_ffs[0] = kcalloc(func_num * N_CONF, sizeof(*f_ffs), GFP_KERNEL);
+       f_ffs[0] = kcalloc(func_num * N_CONF, sizeof(*f_ffs[0]), GFP_KERNEL);
        if (!f_ffs[0]) {
                ret = -ENOMEM;
                goto no_func;