Re: [PATCH] soc: qcom: cmd-db: Cast sizeof() to int to silence field width warning

From: Stephen Boyd
Date: Wed Apr 15 2020 - 02:28:56 EST


Quoting Stephen Boyd (2020-04-14 23:20:33)
> We pass the result of sizeof() here to tell the printk format specifier
> how many bytes to print. That expects an int though and sizeof() isn't
> that type. Cast to int to silence this warning:
>
> drivers/soc/qcom/cmd-db.c: In function 'cmd_db_debugfs_dump':
> drivers/soc/qcom/cmd-db.c:281:30: warning: field width specifier '*' expects argument of type 'int', but argument 4 has type 'long unsigned int' [-Wformat=]
>
> Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> Signed-off-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>

Also

Fixes: d6815c5c43d4 ("soc: qcom: cmd-db: Add debugfs dumping file")

> ---
> drivers/soc/qcom/cmd-db.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/soc/qcom/cmd-db.c b/drivers/soc/qcom/cmd-db.c
> index 6c308f92a13c..6b5c440c9dc3 100644
> --- a/drivers/soc/qcom/cmd-db.c
> +++ b/drivers/soc/qcom/cmd-db.c
> @@ -280,7 +280,7 @@ static int cmd_db_debugfs_dump(struct seq_file *seq, void *p)
> ent = rsc_to_entry_header(rsc);
> for (j = 0; j < le16_to_cpu(rsc->cnt); j++, ent++) {
> seq_printf(seq, "0x%08x: %*pEp", le32_to_cpu(ent->addr),
> - sizeof(ent->id), ent->id);
> + (int)sizeof(ent->id), ent->id);
>
> len = le16_to_cpu(ent->len);
> if (len) {