linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [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).