2021-07-25 17:55:56

by Harshvardhan Jha

[permalink] [raw]
Subject: [PATCH net] net: xfrm: Fix end of loop tests for list_for_each_entry

The list_for_each_entry() iterator, "pos" in this code, can never be
NULL so the warning will never be printed.

Signed-off-by: Harshvardhan Jha <[email protected]>
---
From static analysis. Not tested.
---
net/xfrm/xfrm_ipcomp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/xfrm/xfrm_ipcomp.c b/net/xfrm/xfrm_ipcomp.c
index 2e8afe078d61..cb40ff0ff28d 100644
--- a/net/xfrm/xfrm_ipcomp.c
+++ b/net/xfrm/xfrm_ipcomp.c
@@ -241,7 +241,7 @@ static void ipcomp_free_tfms(struct crypto_comp * __percpu *tfms)
break;
}

- WARN_ON(!pos);
+ WARN_ON(list_entry_is_head(pos, &ipcomp_tfms_list, list));

if (--pos->users)
return;
--
2.32.0


2021-07-28 06:56:35

by Steffen Klassert

[permalink] [raw]
Subject: Re: [PATCH net] net: xfrm: Fix end of loop tests for list_for_each_entry

On Sun, Jul 25, 2021 at 11:23:55PM +0530, Harshvardhan Jha wrote:
> The list_for_each_entry() iterator, "pos" in this code, can never be
> NULL so the warning will never be printed.
>
> Signed-off-by: Harshvardhan Jha <[email protected]>

Applied, thanks!