* [PATCH 1/3] media: tuner-xc2028: don't use casts for printing sizes
@ 2018-08-07 12:26 Mauro Carvalho Chehab
2018-08-07 12:26 ` [PATCH 2/3] media: drxj: get rid of uneeded casts Mauro Carvalho Chehab
2018-08-07 12:26 ` [PATCH 3/3] media: xc4000: " Mauro Carvalho Chehab
0 siblings, 2 replies; 4+ messages in thread
From: Mauro Carvalho Chehab @ 2018-08-07 12:26 UTC (permalink / raw)
Cc: Mauro Carvalho Chehab, Linux Media Mailing List, Mauro Carvalho Chehab
Makes smatch happier by using %zd instead of casting sizes:
drivers/media/tuners/tuner-xc2028.c:378 load_all_firmwares() warn: argument 4 to %d specifier is cast from pointer
drivers/media/tuners/tuner-xc2028.c:619 load_firmware() warn: argument 6 to %d specifier is cast from pointer
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
---
drivers/media/tuners/tuner-xc2028.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/media/tuners/tuner-xc2028.c b/drivers/media/tuners/tuner-xc2028.c
index 222b93ef31c0..aa6861dcd3fd 100644
--- a/drivers/media/tuners/tuner-xc2028.c
+++ b/drivers/media/tuners/tuner-xc2028.c
@@ -376,9 +376,8 @@ static int load_all_firmwares(struct dvb_frontend *fe,
tuner_err("Firmware type ");
dump_firm_type(type);
printk(KERN_CONT
- "(%x), id %llx is corrupted (size=%d, expected %d)\n",
- type, (unsigned long long)id,
- (unsigned)(endp - p), size);
+ "(%x), id %llx is corrupted (size=%zd, expected %d)\n",
+ type, (unsigned long long)id, (endp - p), size);
goto corrupt;
}
@@ -616,8 +615,8 @@ static int load_firmware(struct dvb_frontend *fe, unsigned int type,
}
if ((size + p > endp)) {
- tuner_err("missing bytes: need %d, have %d\n",
- size, (int)(endp - p));
+ tuner_err("missing bytes: need %d, have %zd\n",
+ size, (endp - p));
return -EINVAL;
}
--
2.17.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/3] media: drxj: get rid of uneeded casts
2018-08-07 12:26 [PATCH 1/3] media: tuner-xc2028: don't use casts for printing sizes Mauro Carvalho Chehab
@ 2018-08-07 12:26 ` Mauro Carvalho Chehab
2018-08-07 17:29 ` Nick Desaulniers
2018-08-07 12:26 ` [PATCH 3/3] media: xc4000: " Mauro Carvalho Chehab
1 sibling, 1 reply; 4+ messages in thread
From: Mauro Carvalho Chehab @ 2018-08-07 12:26 UTC (permalink / raw)
Cc: Mauro Carvalho Chehab, Linux Media Mailing List,
Mauro Carvalho Chehab, Nick Desaulniers
Instead of doing casts, use %zd to print sizes, in order to make
smatch happier:
drivers/media/dvb-frontends/drx39xyj/drxj.c:11814 drx_ctrl_u_code() warn: argument 4 to %u specifier is cast from pointer
drivers/media/dvb-frontends/drx39xyj/drxj.c:11845 drx_ctrl_u_code() warn: argument 3 to %u specifier is cast from pointer
drivers/media/dvb-frontends/drx39xyj/drxj.c:11869 drx_ctrl_u_code() warn: argument 3 to %u specifier is cast from pointer
drivers/media/dvb-frontends/drx39xyj/drxj.c:11878 drx_ctrl_u_code() warn: argument 3 to %u specifier is cast from pointer
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
---
drivers/media/dvb-frontends/drx39xyj/drxj.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/drivers/media/dvb-frontends/drx39xyj/drxj.c b/drivers/media/dvb-frontends/drx39xyj/drxj.c
index 2948d12d7c14..9628d4067fe1 100644
--- a/drivers/media/dvb-frontends/drx39xyj/drxj.c
+++ b/drivers/media/dvb-frontends/drx39xyj/drxj.c
@@ -11810,8 +11810,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
block_hdr.CRC = be16_to_cpu(*(__be16 *)(mc_data));
mc_data += sizeof(u16);
- pr_debug("%u: addr %u, size %u, flags 0x%04x, CRC 0x%04x\n",
- (unsigned)(mc_data - mc_data_init), block_hdr.addr,
+ pr_debug("%zd: addr %u, size %u, flags 0x%04x, CRC 0x%04x\n",
+ (mc_data - mc_data_init), block_hdr.addr,
block_hdr.size, block_hdr.flags, block_hdr.CRC);
/* Check block header on:
@@ -11841,8 +11841,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
mc_block_nr_bytes,
mc_data, 0x0000)) {
rc = -EIO;
- pr_err("error writing firmware at pos %u\n",
- (unsigned)(mc_data - mc_data_init));
+ pr_err("error writing firmware at pos %zd\n",
+ mc_data - mc_data_init);
goto release;
}
break;
@@ -11865,8 +11865,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
(u16)bytes_to_comp,
(u8 *)mc_data_buffer,
0x0000)) {
- pr_err("error reading firmware at pos %u\n",
- (unsigned)(mc_data - mc_data_init));
+ pr_err("error reading firmware at pos %zd\n",
+ mc_data - mc_data_init);
return -EIO;
}
@@ -11874,8 +11874,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
bytes_to_comp);
if (result) {
- pr_err("error verifying firmware at pos %u\n",
- (unsigned)(mc_data - mc_data_init));
+ pr_err("error verifying firmware at pos %zd\n",
+ mc_data - mc_data_init);
return -EIO;
}
--
2.17.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 3/3] media: xc4000: get rid of uneeded casts
2018-08-07 12:26 [PATCH 1/3] media: tuner-xc2028: don't use casts for printing sizes Mauro Carvalho Chehab
2018-08-07 12:26 ` [PATCH 2/3] media: drxj: get rid of uneeded casts Mauro Carvalho Chehab
@ 2018-08-07 12:26 ` Mauro Carvalho Chehab
1 sibling, 0 replies; 4+ messages in thread
From: Mauro Carvalho Chehab @ 2018-08-07 12:26 UTC (permalink / raw)
Cc: Mauro Carvalho Chehab, Linux Media Mailing List,
Mauro Carvalho Chehab, Michael Buesch
Instead of doing casts, use %zd to print sizes, in order to make
smatch happier:
drivers/media/tuners/xc4000.c:818 xc4000_fwupload() warn: argument 4 to %d specifier is cast from pointer
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
---
drivers/media/tuners/xc4000.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/media/tuners/xc4000.c b/drivers/media/tuners/xc4000.c
index 76b3f37f24a8..eb6d65dae748 100644
--- a/drivers/media/tuners/xc4000.c
+++ b/drivers/media/tuners/xc4000.c
@@ -815,9 +815,9 @@ static int xc4000_fwupload(struct dvb_frontend *fe)
p += sizeof(size);
if (!size || size > endp - p) {
- printk(KERN_ERR "Firmware type (%x), id %llx is corrupted (size=%d, expected %d)\n",
+ printk(KERN_ERR "Firmware type (%x), id %llx is corrupted (size=%zd, expected %d)\n",
type, (unsigned long long)id,
- (unsigned)(endp - p), size);
+ endp - p, size);
goto corrupt;
}
--
2.17.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 2/3] media: drxj: get rid of uneeded casts
2018-08-07 12:26 ` [PATCH 2/3] media: drxj: get rid of uneeded casts Mauro Carvalho Chehab
@ 2018-08-07 17:29 ` Nick Desaulniers
0 siblings, 0 replies; 4+ messages in thread
From: Nick Desaulniers @ 2018-08-07 17:29 UTC (permalink / raw)
To: mchehab+samsung; +Cc: linux-media, mchehab
On Tue, Aug 7, 2018 at 5:26 AM Mauro Carvalho Chehab
<mchehab+samsung@kernel.org> wrote:
>
> Instead of doing casts, use %zd to print sizes, in order to make
> smatch happier:
> drivers/media/dvb-frontends/drx39xyj/drxj.c:11814 drx_ctrl_u_code() warn: argument 4 to %u specifier is cast from pointer
> drivers/media/dvb-frontends/drx39xyj/drxj.c:11845 drx_ctrl_u_code() warn: argument 3 to %u specifier is cast from pointer
> drivers/media/dvb-frontends/drx39xyj/drxj.c:11869 drx_ctrl_u_code() warn: argument 3 to %u specifier is cast from pointer
> drivers/media/dvb-frontends/drx39xyj/drxj.c:11878 drx_ctrl_u_code() warn: argument 3 to %u specifier is cast from pointer
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
> ---
> drivers/media/dvb-frontends/drx39xyj/drxj.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/media/dvb-frontends/drx39xyj/drxj.c b/drivers/media/dvb-frontends/drx39xyj/drxj.c
> index 2948d12d7c14..9628d4067fe1 100644
> --- a/drivers/media/dvb-frontends/drx39xyj/drxj.c
> +++ b/drivers/media/dvb-frontends/drx39xyj/drxj.c
> @@ -11810,8 +11810,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
> block_hdr.CRC = be16_to_cpu(*(__be16 *)(mc_data));
> mc_data += sizeof(u16);
>
> - pr_debug("%u: addr %u, size %u, flags 0x%04x, CRC 0x%04x\n",
> - (unsigned)(mc_data - mc_data_init), block_hdr.addr,
> + pr_debug("%zd: addr %u, size %u, flags 0x%04x, CRC 0x%04x\n",
> + (mc_data - mc_data_init), block_hdr.addr,
> block_hdr.size, block_hdr.flags, block_hdr.CRC);
>
> /* Check block header on:
> @@ -11841,8 +11841,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
> mc_block_nr_bytes,
> mc_data, 0x0000)) {
> rc = -EIO;
> - pr_err("error writing firmware at pos %u\n",
> - (unsigned)(mc_data - mc_data_init));
> + pr_err("error writing firmware at pos %zd\n",
> + mc_data - mc_data_init);
> goto release;
> }
> break;
> @@ -11865,8 +11865,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
> (u16)bytes_to_comp,
> (u8 *)mc_data_buffer,
> 0x0000)) {
> - pr_err("error reading firmware at pos %u\n",
> - (unsigned)(mc_data - mc_data_init));
> + pr_err("error reading firmware at pos %zd\n",
> + mc_data - mc_data_init);
> return -EIO;
> }
>
> @@ -11874,8 +11874,8 @@ static int drx_ctrl_u_code(struct drx_demod_instance *demod,
> bytes_to_comp);
>
> if (result) {
> - pr_err("error verifying firmware at pos %u\n",
> - (unsigned)(mc_data - mc_data_init));
> + pr_err("error verifying firmware at pos %zd\n",
> + mc_data - mc_data_init);
> return -EIO;
> }
>
> --
> 2.17.1
>
>From Documentation/printk-formats.txt, it looks like %zd is for
ssize_t, which is what I would expect for pointer subtracting (well
maybe intptr_t, but ssize_t should be word-size-independent).
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
--
Thanks,
~Nick Desaulniers
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-08-07 19:44 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-07 12:26 [PATCH 1/3] media: tuner-xc2028: don't use casts for printing sizes Mauro Carvalho Chehab
2018-08-07 12:26 ` [PATCH 2/3] media: drxj: get rid of uneeded casts Mauro Carvalho Chehab
2018-08-07 17:29 ` Nick Desaulniers
2018-08-07 12:26 ` [PATCH 3/3] media: xc4000: " Mauro Carvalho Chehab
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).