All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthieu Baerts <matttbe@kernel.org>
To: Geliang Tang <geliang@kernel.org>,
	Chenguang Zhao <chenguang.zhao@linux.dev>,
	mptcp@lists.linux.dev
Cc: Chenguang Zhao <zhaochenguang@kylinos.cn>
Subject: Re: [PATCH mptcp-net v2] mptcp: fix extra_subflows leak on failed passive join
Date: Mon, 6 Jul 2026 17:07:44 +0200	[thread overview]
Message-ID: <775e5b9e-2f00-4316-a5a2-5a333c44ae20@kernel.org> (raw)
In-Reply-To: <86e9b7f9ac5d630a0bb7b127652544176921a491.camel@kernel.org>

Hi Geliang, Chenguang,

On 01/07/2026 08:32, Geliang Tang wrote:
> Hi Chenguang,
> 
> Thanks for this v2. However, if there are no code changes, there is no
> need to send a v2; we can just reply to the email thread on v1 to
> discuss it. 

Indeed. Also, it is easier if you start a new thread with a link to the
previous version, than replying to a previous version.

> On Wed, 2026-07-01 at 11:20 +0800, Chenguang Zhao wrote:
>> From: Chenguang Zhao <zhaochenguang@kylinos.cn>
>>
>> mptcp_pm_allow_new_subflow() increments extra_subflows
>> before __mptcp_finish_join() on the passive MP_JOIN path.
>> On synchronous join failure the subflow is dropped without
>> calling mptcp_close_ssk(), so the counter is not rolled back.

What do you mean by saying "On synchronous join failure"? When I look at
the packetdrill test, we are not talking about synchronous MP_JOIN (SYN
+ MP_JOIN packets in both directions), right?

>> Call mptcp_pm_close_subflow() when the join completion fails.
>>
>> Fixes: 3e5014909b56 ("mptcp: cleanup MPJ subflow list handling")
>> Signed-off-by: Chenguang Zhao <zhaochenguang@kylinos.cn>
>> Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
>> ---
>> v2:
>>  Hi Matthieu,
>>  Thanks for the review.
>>  - I spotted this by reading the code. I don't have a reproducer
>>    yet. I also see we already have a Packetdrill test for
>>    synchronous connect failure (simult_connect.pkt), but not for
>>    synchronous join failure. I'll add a similar Packetdrill test
>>    for that case and send it in a follow-up patch.
>>  - Add Fixes and Reviewd-by tag.
>>  - I looked again at the history, and I think the Fixes tag
>>    should point to 3e5014909b56 ("mptcp: cleanup MPJ subflow list
>>    handling"), not 10f6d46c943d ("mptcp: fix race between MP_JOIN and
>> close"). 
> 
> The Fixes tag is incorrect and should be 10f6d46c943d ("mptcp: fix race
> between MP_JOIN and close"), because that commit introduced the call to
> mptcp_pm_allow_new_subflow. There is no need to send a v3, as this can
> be updated when applying.

+1

> I have changed the status of v2 to "Queued" and v1 to "Superseded".
I will wait to get the packetdrill test ready before applying this patch.

Cheers,
Matt
-- 
Sponsored by the NGI0 Core fund.


      reply	other threads:[~2026-07-06 15:07 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-30  9:54 [PATCH mptcp-net] mptcp: fix extra_subflows leak on failed passive join Chenguang Zhao
2026-06-30 10:47 ` Matthieu Baerts
2026-07-03  9:37   ` Chenguang Zhao
2026-06-30 11:22 ` MPTCP CI
2026-07-01  3:20 ` [PATCH mptcp-net v2] " Chenguang Zhao
2026-07-01  4:17   ` MPTCP CI
2026-07-01  6:32   ` Geliang Tang
2026-07-06 15:07     ` Matthieu Baerts [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=775e5b9e-2f00-4316-a5a2-5a333c44ae20@kernel.org \
    --to=matttbe@kernel.org \
    --cc=chenguang.zhao@linux.dev \
    --cc=geliang@kernel.org \
    --cc=mptcp@lists.linux.dev \
    --cc=zhaochenguang@kylinos.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.