Re: [PATCH] Staging: rtl8192e: make sizeof type-independent

From: Dan Carpenter
Date: Tue Jun 21 2022 - 11:02:39 EST


On Tue, Jun 21, 2022 at 04:58:45PM +0200, Felix Schlepper wrote:
> Making sizeof operator type-independent.
>
> Reported by checkpatch:
>
> CHECK: Prefer kmalloc(sizeof(*txb)...) over
> kmalloc(sizeof(struct rtllib_txb)...)
>
> ---
> Note: First patch, trying to follow kernelnewbies tutorial.
>
> Signed-off-by: Felix Schlepper <f3sch.git@xxxxxxxxxxx>
> ---
> drivers/staging/rtl8192e/rtllib_tx.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/staging/rtl8192e/rtllib_tx.c b/drivers/staging/rtl8192e/rtllib_tx.c
> index 37715afb0210..01e163e61f0e 100644
> --- a/drivers/staging/rtl8192e/rtllib_tx.c
> +++ b/drivers/staging/rtl8192e/rtllib_tx.c
> @@ -205,8 +205,7 @@ static struct rtllib_txb *rtllib_alloc_txb(int nr_frags, int txb_size,
> struct rtllib_txb *txb;
> int i;
>
> - txb = kmalloc(sizeof(struct rtllib_txb) + (sizeof(u8 *) * nr_frags),
> - gfp_mask);
> + txb = kmalloc(sizeof(*txb) + (sizeof(u8 *) * nr_frags), gfp_mask);

Use the struct_size() macro instead.

regards,
dan carpenter