From: Thorsten Blum <thorsten.b...@linux.dev>

Commit e4c28e3d5c090 ("mptcp: pm: move generic PM helpers to pm.c")
removed an unnecessary if-check, which resulted in returning a freed
pointer.

This still works due to the implicit boolean conversion when returning
the freed pointer from mptcp_remove_anno_list_by_saddr(), but it can be
confusing and potentially error-prone. To improve clarity, add a local
variable to explicitly return a boolean value instead.

Signed-off-by: Thorsten Blum <thorsten.b...@linux.dev>
Reviewed-by: Matthieu Baerts (NGI0) <matt...@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matt...@kernel.org>
---
Notes:
- a previous version has already been sent to Netdev. ChangeLog:
  - Remove the if-check again as suggested by Matthieu Baerts
  - Target net-next, not net (not a fix) and rephrase the commit message
  - Link to this version:
    https://lore.kernel.org/20250325110639.49399-2-thorsten.b...@linux.dev
---
 net/mptcp/pm.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/net/mptcp/pm.c b/net/mptcp/pm.c
index 
31747f974941fae3f80bfc8313e82c41f92562eb..1306d4dc287b842ebf7efd52d121b096d5cb43e0
 100644
--- a/net/mptcp/pm.c
+++ b/net/mptcp/pm.c
@@ -151,10 +151,13 @@ bool mptcp_remove_anno_list_by_saddr(struct mptcp_sock 
*msk,
                                     const struct mptcp_addr_info *addr)
 {
        struct mptcp_pm_add_entry *entry;
+       bool ret;
 
        entry = mptcp_pm_del_add_timer(msk, addr, false);
+       ret = entry;
        kfree(entry);
-       return entry;
+
+       return ret;
 }
 
 bool mptcp_pm_sport_in_anno_list(struct mptcp_sock *msk, const struct sock *sk)

-- 
2.48.1


Reply via email to