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 <hanyi...@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/ |

Attachment: signature.asc
Description: PGP signature

Reply via email to