2024-03-04 09:30:22

by Dawei Li

[permalink] [raw]
Subject: [PATCH] firmware: microchip: Fix over-requested allocation size

cocci warnings: (new ones prefixed by >>)
>> drivers/firmware/microchip/mpfs-auto-update.c:387:72-78:
ERROR: application of sizeof to pointer
drivers/firmware/microchip/mpfs-auto-update.c:170:72-78:
ERROR: application of sizeof to pointer

response_msg is a pointer to u32, so the size of element it points to is
supposed to be a multiple of sizeof(u32), rather than sizeof(u32 *).

Reported-by: kernel test robot <[email protected]>
Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
Signed-off-by: Dawei Li <[email protected]>
---
drivers/firmware/microchip/mpfs-auto-update.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/firmware/microchip/mpfs-auto-update.c b/drivers/firmware/microchip/mpfs-auto-update.c
index 682e417be5a3..7ea3cdb917bc 100644
--- a/drivers/firmware/microchip/mpfs-auto-update.c
+++ b/drivers/firmware/microchip/mpfs-auto-update.c
@@ -384,7 +384,7 @@ static int mpfs_auto_update_available(struct mpfs_auto_update_priv *priv)
u32 *response_msg;
int ret;

- response_msg = devm_kzalloc(priv->dev, AUTO_UPDATE_FEATURE_RESP_SIZE * sizeof(response_msg),
+ response_msg = devm_kzalloc(priv->dev, AUTO_UPDATE_FEATURE_RESP_SIZE * sizeof(u32),
GFP_KERNEL);
if (!response_msg)
return -ENOMEM;
--
2.27.0



2024-03-04 09:54:02

by Conor Dooley

[permalink] [raw]
Subject: Re: [PATCH] firmware: microchip: Fix over-requested allocation size

Hey,

On Mon, Mar 04, 2024 at 05:25:32PM +0800, Dawei Li wrote:
> cocci warnings: (new ones prefixed by >>)
> >> drivers/firmware/microchip/mpfs-auto-update.c:387:72-78:
> ERROR: application of sizeof to pointer
> drivers/firmware/microchip/mpfs-auto-update.c:170:72-78:
> ERROR: application of sizeof to pointer
>
> response_msg is a pointer to u32, so the size of element it points to is
> supposed to be a multiple of sizeof(u32), rather than sizeof(u32 *).
>
> Reported-by: kernel test robot <[email protected]>
> Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
> Signed-off-by: Dawei Li <[email protected]>
> ---
> drivers/firmware/microchip/mpfs-auto-update.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/microchip/mpfs-auto-update.c b/drivers/firmware/microchip/mpfs-auto-update.c
> index 682e417be5a3..7ea3cdb917bc 100644
> --- a/drivers/firmware/microchip/mpfs-auto-update.c
> +++ b/drivers/firmware/microchip/mpfs-auto-update.c
> @@ -384,7 +384,7 @@ static int mpfs_auto_update_available(struct mpfs_auto_update_priv *priv)
> u32 *response_msg;
> int ret;
>
> - response_msg = devm_kzalloc(priv->dev, AUTO_UPDATE_FEATURE_RESP_SIZE * sizeof(response_msg),
> + response_msg = devm_kzalloc(priv->dev, AUTO_UPDATE_FEATURE_RESP_SIZE * sizeof(u32),

Why not use `sizeof(*response_msg)`?

Cheers,
Conor.

> GFP_KERNEL);
> if (!response_msg)
> return -ENOMEM;
> --
> 2.27.0
>


Attachments:
(No filename) (1.50 kB)
signature.asc (235.00 B)
Download all attachments

2024-03-04 10:09:52

by Dawei Li

[permalink] [raw]
Subject: Re: [PATCH] firmware: microchip: Fix over-requested allocation size

Hi Conor,

Thanks for the quick review.

On Mon, Mar 04, 2024 at 09:52:52AM +0000, Conor Dooley wrote:
> Hey,
>
> On Mon, Mar 04, 2024 at 05:25:32PM +0800, Dawei Li wrote:
> > cocci warnings: (new ones prefixed by >>)
> > >> drivers/firmware/microchip/mpfs-auto-update.c:387:72-78:
> > ERROR: application of sizeof to pointer
> > drivers/firmware/microchip/mpfs-auto-update.c:170:72-78:
> > ERROR: application of sizeof to pointer
> >
> > response_msg is a pointer to u32, so the size of element it points to is
> > supposed to be a multiple of sizeof(u32), rather than sizeof(u32 *).
> >
> > Reported-by: kernel test robot <[email protected]>
> > Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
> > Signed-off-by: Dawei Li <[email protected]>
> > ---
> > drivers/firmware/microchip/mpfs-auto-update.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/firmware/microchip/mpfs-auto-update.c b/drivers/firmware/microchip/mpfs-auto-update.c
> > index 682e417be5a3..7ea3cdb917bc 100644
> > --- a/drivers/firmware/microchip/mpfs-auto-update.c
> > +++ b/drivers/firmware/microchip/mpfs-auto-update.c
> > @@ -384,7 +384,7 @@ static int mpfs_auto_update_available(struct mpfs_auto_update_priv *priv)
> > u32 *response_msg;
> > int ret;
> >
> > - response_msg = devm_kzalloc(priv->dev, AUTO_UPDATE_FEATURE_RESP_SIZE * sizeof(response_msg),
> > + response_msg = devm_kzalloc(priv->dev, AUTO_UPDATE_FEATURE_RESP_SIZE * sizeof(u32),
>
> Why not use `sizeof(*response_msg)`?

Because checkpatch complains about 100-character violation and I don't
want to wrap lines :)

I will respin V2 as you suggested.

Thanks,

Dawei

>
> Cheers,
> Conor.
>
> > GFP_KERNEL);
> > if (!response_msg)
> > return -ENOMEM;
> > --
> > 2.27.0
> >