Re: [PATCH v2 1/2] firmware: bcm47xx_nvram: Correct size_t printf format

From: Philippe Mathieu-DaudÃ
Date: Wed May 15 2019 - 01:19:03 EST


Hi Florian,

On 5/14/19 7:38 PM, Florian Fainelli wrote:
> When building on a 64-bit host, we will get warnings like those:
>
> drivers/firmware/broadcom/bcm47xx_nvram.c:103:3: note: in expansion of macro 'pr_err'
> pr_err("nvram on flash (%i bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
> ^~~~~~
> drivers/firmware/broadcom/bcm47xx_nvram.c:103:28: note: format string is defined here
> pr_err("nvram on flash (%i bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
> ~^
> %li
>
> Use %zu instead for that purpose.
>
> Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
> ---
> Changes in v2:
> - Use %zu instead of %zi (Joe Perches)
>
> drivers/firmware/broadcom/bcm47xx_nvram.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/firmware/broadcom/bcm47xx_nvram.c b/drivers/firmware/broadcom/bcm47xx_nvram.c
> index d25f080fcb0d..8698c5dd29d9 100644
> --- a/drivers/firmware/broadcom/bcm47xx_nvram.c
> +++ b/drivers/firmware/broadcom/bcm47xx_nvram.c
> @@ -100,7 +100,7 @@ static int nvram_find_and_copy(void __iomem *iobase, u32 lim)
> nvram_len = size;
> }
> if (nvram_len >= NVRAM_SPACE) {
> - pr_err("nvram on flash (%i bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
> + pr_err("nvram on flash (%zu bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
> nvram_len, NVRAM_SPACE - 1);

Why not change the other format too, to stay consistent?

> nvram_len = NVRAM_SPACE - 1;
> }
> @@ -152,7 +152,7 @@ static int nvram_init(void)
> header.len > sizeof(header)) {
> nvram_len = header.len;
> if (nvram_len >= NVRAM_SPACE) {
> - pr_err("nvram on flash (%i bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
> + pr_err("nvram on flash (%zu bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
> header.len, NVRAM_SPACE);

Ditto.

Regardless:
Reviewed-by: Philippe Mathieu-Daudà <f4bug@xxxxxxxxx>

> nvram_len = NVRAM_SPACE - 1;
> }
>