2022-04-22 19:20:13

by Yihao Han

[permalink] [raw]
Subject: [PATCH v2] macintosh: macio_asic: fix resource_size.cocci warnings

drivers/macintosh/macio_asic.c:219:26-29: WARNING:Suspicious code. resource_size is maybe missing with res
drivers/macintosh/macio_asic.c:221:26-29: WARNING:Suspicious code. resource_size is maybe missing with res

Use resource_size function on resource object instead of
explicit computation.

Generated by: scripts/coccinelle/api/resource_size.cocci

Signed-off-by: Yihao Han <[email protected]>
---
v2: drop parenthesis around resource_size(res) and edit commit message
---
drivers/macintosh/macio_asic.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/macintosh/macio_asic.c b/drivers/macintosh/macio_asic.c
index 1943a007e2d5..260fccb3863e 100644
--- a/drivers/macintosh/macio_asic.c
+++ b/drivers/macintosh/macio_asic.c
@@ -216,9 +216,9 @@ static int macio_resource_quirks(struct device_node *np, struct resource *res,
/* Some older IDE resources have bogus sizes */
if (of_node_name_eq(np, "IDE") || of_node_name_eq(np, "ATA") ||
of_node_is_type(np, "ide") || of_node_is_type(np, "ata")) {
- if (index == 0 && (res->end - res->start) > 0xfff)
+ if (index == 0 && resource_size(res) > 0xfff)
res->end = res->start + 0xfff;
- if (index == 1 && (res->end - res->start) > 0xff)
+ if (index == 1 && resource_size(res) > 0xff)
res->end = res->start + 0xff;
}
return 0;
--
2.17.1


2022-04-26 09:17:53

by Uwe Kleine-König

[permalink] [raw]
Subject: Re: [PATCH v2] macintosh: macio_asic: fix resource_size.cocci warnings

On Thu, Apr 21, 2022 at 07:18:07AM -0700, Yihao Han wrote:
> drivers/macintosh/macio_asic.c:219:26-29: WARNING:Suspicious code. resource_size is maybe missing with res
> drivers/macintosh/macio_asic.c:221:26-29: WARNING:Suspicious code. resource_size is maybe missing with res
>
> Use resource_size function on resource object instead of
> explicit computation.
>
> Generated by: scripts/coccinelle/api/resource_size.cocci
>
> Signed-off-by: Yihao Han <[email protected]vivo.com>
> ---
> v2: drop parenthesis around resource_size(res) and edit commit message
> ---
> drivers/macintosh/macio_asic.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/macintosh/macio_asic.c b/drivers/macintosh/macio_asic.c
> index 1943a007e2d5..260fccb3863e 100644
> --- a/drivers/macintosh/macio_asic.c
> +++ b/drivers/macintosh/macio_asic.c
> @@ -216,9 +216,9 @@ static int macio_resource_quirks(struct device_node *np, struct resource *res,
> /* Some older IDE resources have bogus sizes */
> if (of_node_name_eq(np, "IDE") || of_node_name_eq(np, "ATA") ||
> of_node_is_type(np, "ide") || of_node_is_type(np, "ata")) {
> - if (index == 0 && (res->end - res->start) > 0xfff)
> + if (index == 0 && resource_size(res) > 0xfff)

Michael Ellerman noted in the v1 thread, that this is wrong as
resource_size evaluates to end - start + 1. So this has to be

if (index == 0 && resource_size(res) > 0x1000)

to be equivalent.

> res->end = res->start + 0xfff;
> - if (index == 1 && (res->end - res->start) > 0xff)
> + if (index == 1 && resource_size(res) > 0xff)

Similar here.

Best regards
Uwe

--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | https://www.pengutronix.de/ |


Attachments:
(No filename) (1.78 kB)
signature.asc (499.00 B)
Download all attachments