On Fri, 2016-05-27 at 13:51 -0400, Lidza Louina wrote:
> The wl pointer was initialized as a pointer to a struct wilc and
> assigned to a piece of memory the size of the pointer. It should be the
> size of struct wilc.

This isn't necessary.

The code in question is:

        struct wilc *wl;

        sema_init(&close_exit_sync, 0);

        wl = kzalloc(sizeof(*wl), GFP_KERNEL);
        if (!wl)
                return -ENOMEM;

        *wilc = wl;

so this isn't any real change and the generally desired form for
allocations from CodingStyle (Chapter 14: Allocating Memory) is:

The preferred form for passing a size of a struct is the following:     p = 
kmalloc(sizeof(*p), ...);

> diff --git a/drivers/staging/wilc1000/linux_wlan.c
[]
> @@ -1260,7 +1260,7 @@ int wilc_netdev_init(struct wilc **wilc, struct device 
> *dev, int io_type,
>  
>       sema_init(&close_exit_sync, 0);
>  
> -     wl = kzalloc(sizeof(*wl), GFP_KERNEL);
> +     wl = kzalloc(sizeof(struct wilc), GFP_KERNEL);
>       if (!wl)
>               return -ENOMEM;
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to