[PATCH mptcp-next] mptcp: use nlmsg_free instead of kfree_skb

Geliang Tang posted 1 patch 1 year, 4 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/20221202053736.2980-1-geliang.tang@suse.com
Maintainers: Mat Martineau <mathew.j.martineau@linux.intel.com>, Matthieu Baerts <matthieu.baerts@tessares.net>, "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>
net/mptcp/pm_netlink.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
[PATCH mptcp-next] mptcp: use nlmsg_free instead of kfree_skb
Posted by Geliang Tang 1 year, 4 months ago
Use nlmsg_free() instead of kfree_skb() in pm_netlink.c.

Suggested-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Geliang Tang <geliang.tang@suse.com>
---
 net/mptcp/pm_netlink.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/net/mptcp/pm_netlink.c b/net/mptcp/pm_netlink.c
index 93ae0fc892df..39b0f054f39f 100644
--- a/net/mptcp/pm_netlink.c
+++ b/net/mptcp/pm_netlink.c
@@ -2091,7 +2091,7 @@ void mptcp_event_addr_removed(const struct mptcp_sock *msk, uint8_t id)
 	return;
 
 nla_put_failure:
-	kfree_skb(skb);
+	nlmsg_free(skb);
 }
 
 void mptcp_event_addr_announced(const struct sock *ssk,
@@ -2148,7 +2148,7 @@ void mptcp_event_addr_announced(const struct sock *ssk,
 	return;
 
 nla_put_failure:
-	kfree_skb(skb);
+	nlmsg_free(skb);
 }
 
 void mptcp_event_pm_listener(const struct sock *ssk,
@@ -2200,7 +2200,7 @@ void mptcp_event_pm_listener(const struct sock *ssk,
 	return;
 
 nla_put_failure:
-	kfree_skb(skb);
+	nlmsg_free(skb);
 }
 
 void mptcp_event(enum mptcp_event_type type, const struct mptcp_sock *msk,
@@ -2258,7 +2258,7 @@ void mptcp_event(enum mptcp_event_type type, const struct mptcp_sock *msk,
 	return;
 
 nla_put_failure:
-	kfree_skb(skb);
+	nlmsg_free(skb);
 }
 
 static const struct genl_small_ops mptcp_pm_ops[] = {
-- 
2.35.3
Re: mptcp: use nlmsg_free instead of kfree_skb: Tests Results
Posted by MPTCP CI 1 year, 4 months ago
Hi Geliang,

Thank you for your modifications, that's great!

Our CI did some validations and here is its report:

- KVM Validation: normal (except selftest_mptcp_join):
  - Success! ✅:
  - Task: https://cirrus-ci.com/task/4858982737641472
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/4858982737641472/summary/summary.txt

- KVM Validation: debug (except selftest_mptcp_join):
  - Critical: 1 Call Trace(s) ❌:
  - Task: https://cirrus-ci.com/task/5421932691062784
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/5421932691062784/summary/summary.txt

- KVM Validation: debug (only selftest_mptcp_join):
  - Unstable: 1 failed test(s): selftest_mptcp_join 🔴:
  - Task: https://cirrus-ci.com/task/6547832597905408
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/6547832597905408/summary/summary.txt

- KVM Validation: normal (only selftest_mptcp_join):
  - Success! ✅:
  - Task: https://cirrus-ci.com/task/5984882644484096
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/5984882644484096/summary/summary.txt

Initiator: Patchew Applier
Commits: https://github.com/multipath-tcp/mptcp_net-next/commits/43fbd526856d


If there are some issues, you can reproduce them using the same environment as
the one used by the CI thanks to a docker image, e.g.:

    $ cd [kernel source code]
    $ docker run -v "${PWD}:${PWD}:rw" -w "${PWD}" --privileged --rm -it \
        --pull always mptcp/mptcp-upstream-virtme-docker:latest \
        auto-debug

For more details:

    https://github.com/multipath-tcp/mptcp-upstream-virtme-docker


Please note that despite all the efforts that have been already done to have a
stable tests suite when executed on a public CI like here, it is possible some
reported issues are not due to your modifications. Still, do not hesitate to
help us improve that ;-)

Cheers,
MPTCP GH Action bot
Bot operated by Matthieu Baerts (Tessares)
Re: [PATCH mptcp-next] mptcp: use nlmsg_free instead of kfree_skb
Posted by Matthieu Baerts 1 year, 4 months ago
Hi Geliang,

On 02/12/2022 06:37, Geliang Tang wrote:
> Use nlmsg_free() instead of kfree_skb() in pm_netlink.c.

Now applied in our tree (feat. for net-next) with my RvB and the commit
message slightly modified as suggested before (we will still modify it
if needed).

New patches for t/upstream:
- 32ad7937c18e: mptcp: use nlmsg_free instead of kfree_skb
- Results: a7affd41927a..7c308902a06c (export)

Tests are now in progress:

https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20221202T110835

Cheers,
Matt
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net
Re: [PATCH mptcp-next] mptcp: use nlmsg_free instead of kfree_skb
Posted by Matthieu Baerts 1 year, 4 months ago
Hi Geliang,

On 02/12/2022 06:37, Geliang Tang wrote:
> Use nlmsg_free() instead of kfree_skb() in pm_netlink.c.

Thank you for the quick follow up!

I suggest to add a bit more text to have a clear explanation about why
it is clean-up and not a fix, e.g.

  The skb has been created by nlmsg_new(). The proper free should then
  be done with nlmsg_free().

  For the moment, nlmsg_free() is simply calling kfree_skb() so we
  don't change the behaviour here.

I can modify the commit message when applying the patch, no need to send
a v2 ;-)

Reviewed-by: Matthieu Baerts <matthieu.baerts@tessares.net>

Cheers,
Matt
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net
Re: mptcp: use nlmsg_free instead of kfree_skb: Tests Results
Posted by MPTCP CI 1 year, 4 months ago
Hi Geliang,

Thank you for your modifications, that's great!

Our CI did some validations and here is its report:

- KVM Validation: normal (except:
  - selftest_mptcp_join): Success! ✅:
  - Task: https://cirrus-ci.com/task/6119246869561344
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/6119246869561344/summary/summary.txt

- KVM Validation: debug (except:
  - selftest_mptcp_join): Success! ✅:
  - Task: https://cirrus-ci.com/task/6682196822982656
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/6682196822982656/summary/summary.txt

- KVM Validation: debug (only:
  - selftest_mptcp_join): Success! ✅:
  - Task: https://cirrus-ci.com/task/4641503241830400
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/4641503241830400/summary/summary.txt

- KVM Validation: normal (only:
  - selftest_mptcp_join): Success! ✅:
  - Task: https://cirrus-ci.com/task/5556296916140032
  - Summary: https://api.cirrus-ci.com/v1/artifact/task/5556296916140032/summary/summary.txt

Initiator: Patchew Applier
Commits: https://github.com/multipath-tcp/mptcp_net-next/commits/041d29699a40


If there are some issues, you can reproduce them using the same environment as
the one used by the CI thanks to a docker image, e.g.:

    $ cd [kernel source code]
    $ docker run -v "${PWD}:${PWD}:rw" -w "${PWD}" --privileged --rm -it \
        --pull always mptcp/mptcp-upstream-virtme-docker:latest \
        auto-debug

For more details:

    https://github.com/multipath-tcp/mptcp-upstream-virtme-docker


Please note that despite all the efforts that have been already done to have a
stable tests suite when executed on a public CI like here, it is possible some
reported issues are not due to your modifications. Still, do not hesitate to
help us improve that ;-)

Cheers,
MPTCP GH Action bot
Bot operated by Matthieu Baerts (Tessares)