<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/mptcp/options.c, branch linux-6.4.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.4.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.4.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2023-04-17T07:25:33Z</updated>
<entry>
<title>mptcp: remove unused 'remaining' variable</title>
<updated>2023-04-17T07:25:33Z</updated>
<author>
<name>Matthieu Baerts</name>
</author>
<published>2023-04-14T15:47:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ce395d0e3ad585839245a1f6a43cc144617a0163'/>
<id>urn:sha1:ce395d0e3ad585839245a1f6a43cc144617a0163</id>
<content type='text'>
In some functions, 'remaining' variable was given in argument and/or set
but never read.

  net/mptcp/options.c:779:3: warning: Value stored to 'remaining' is never
  read [clang-analyzer-deadcode.DeadStores].

  net/mptcp/options.c:547:3: warning: Value stored to 'remaining' is never
  read [clang-analyzer-deadcode.DeadStores].

The issue has been reported internally by Alibaba CI.

Reported-by: Abaci Robot &lt;abaci@linux.alibaba.com&gt;
Suggested-by: Mat Martineau &lt;martineau@kernel.org&gt;
Co-developed-by: Jiapeng Chong &lt;jiapeng.chong@linux.alibaba.com&gt;
Signed-off-by: Jiapeng Chong &lt;jiapeng.chong@linux.alibaba.com&gt;
Acked-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Signed-off-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mptcp: drop unneeded argument</title>
<updated>2023-04-17T07:18:34Z</updated>
<author>
<name>Paolo Abeni</name>
</author>
<published>2023-04-14T14:08:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7a486c443c89bd949f7a64e0040f704e02710b3c'/>
<id>urn:sha1:7a486c443c89bd949f7a64e0040f704e02710b3c</id>
<content type='text'>
After commit 3a236aef280e ("mptcp: refactor passive socket initialization"),
every mptcp_pm_fully_established() call is always invoked with a
GFP_ATOMIC argument. We can then drop it.

Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Reviewed-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mptcp: use mptcp_schedule_work instead of open-coding it</title>
<updated>2023-04-13T16:58:55Z</updated>
<author>
<name>Paolo Abeni</name>
</author>
<published>2023-04-11T20:42:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a5cb752b125766524c921faab1a45cc96065b0a7'/>
<id>urn:sha1:a5cb752b125766524c921faab1a45cc96065b0a7</id>
<content type='text'>
Beyond reducing code duplication this also avoids scheduling
the mptcp_worker on a closed socket on some edge scenarios.

The addressed issue is actually older than the blamed commit
below, but this fix needs it as a pre-requisite.

Fixes: ba8f48f7a4d7 ("mptcp: introduce mptcp_schedule_work")
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Reviewed-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>mptcp: use local variable ssk in write_options</title>
<updated>2023-01-09T07:30:49Z</updated>
<author>
<name>Geliang Tang</name>
</author>
<published>2023-01-06T18:57:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3c976f4c99237bcdab918ad18e7bee3b77e6d316'/>
<id>urn:sha1:3c976f4c99237bcdab918ad18e7bee3b77e6d316</id>
<content type='text'>
The local variable 'ssk' has been defined at the beginning of the function
mptcp_write_options(), use it instead of getting 'ssk' again.

Reviewed-by: Mat Martineau &lt;mathew.j.martineau@linux.intel.com&gt;
Signed-off-by: Geliang Tang &lt;geliang.tang@suse.com&gt;
Signed-off-by: Mat Martineau &lt;mathew.j.martineau@linux.intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mptcp: implement delayed seq generation for passive fastopen</title>
<updated>2022-11-30T04:24:25Z</updated>
<author>
<name>Dmytro Shytyi</name>
</author>
<published>2022-11-25T22:29:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dfc8d06030335a816d81aa92fe5d1f84d06998ad'/>
<id>urn:sha1:dfc8d06030335a816d81aa92fe5d1f84d06998ad</id>
<content type='text'>
With fastopen in place, the first subflow socket is created before the
MPC handshake completes, and we need to properly initialize the sequence
numbers at MPC ACK reception.

Co-developed-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Co-developed-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Dmytro Shytyi &lt;dmytro@shytyi.net&gt;
Signed-off-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>mptcp: consolidate initial ack seq generation</title>
<updated>2022-11-30T04:24:25Z</updated>
<author>
<name>Paolo Abeni</name>
</author>
<published>2022-11-25T22:29:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b3ea6b272d79a43baaaa9af871ee66f6fda4688f'/>
<id>urn:sha1:b3ea6b272d79a43baaaa9af871ee66f6fda4688f</id>
<content type='text'>
Currently the initial ack sequence is generated on demand whenever
it's requested and the remote key is handy. The relevant code is
scattered in different places and can lead to multiple, unneeded,
crypto operations.

This change consolidates the ack sequence generation code in a single
helper, storing the sequence number at the subflow level.

The above additionally saves a few conditional in fast-path and will
simplify the upcoming fast-open implementation.

Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Reviewed-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>mptcp: track accurately the incoming MPC suboption type</title>
<updated>2022-11-30T04:24:24Z</updated>
<author>
<name>Paolo Abeni</name>
</author>
<published>2022-11-25T22:29:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fe33d38626779ffcc1c88204b1931774dc204cb5'/>
<id>urn:sha1:fe33d38626779ffcc1c88204b1931774dc204cb5</id>
<content type='text'>
Currently in the receive path we don't need to discriminate
between MPC SYN, MPC SYN-ACK and MPC ACK, but soon the fastopen
code will need that info to properly track the fully established
status.

Track the exact MPC suboption type into the receive opt bitmap.
No functional change intended.

Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Reviewed-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Matthieu Baerts &lt;matthieu.baerts@tessares.net&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>tcp: Fix data-races around sysctl_tcp_workaround_signed_windows.</title>
<updated>2022-07-22T11:06:17Z</updated>
<author>
<name>Kuniyuki Iwashima</name>
</author>
<published>2022-07-20T16:50:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0f1e4d06591d0a7907c71f7b6d1c79f8a4de8098'/>
<id>urn:sha1:0f1e4d06591d0a7907c71f7b6d1c79f8a4de8098</id>
<content type='text'>
While reading sysctl_tcp_workaround_signed_windows, it can be changed
concurrently.  Thus, we need to add READ_ONCE() to its readers.

Fixes: 15d99e02baba ("[TCP]: sysctl to allow TCP window &gt; 32767 sans wscale")
Signed-off-by: Kuniyuki Iwashima &lt;kuniyu@amazon.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mptcp: Avoid acquiring PM lock for subflow priority changes</title>
<updated>2022-07-06T11:50:26Z</updated>
<author>
<name>Mat Martineau</name>
</author>
<published>2022-07-05T21:32:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c21b50d5912b68c4414c60ef5b30416c103f9fd8'/>
<id>urn:sha1:c21b50d5912b68c4414c60ef5b30416c103f9fd8</id>
<content type='text'>
The in-kernel path manager code for changing subflow flags acquired both
the msk socket lock and the PM lock when possibly changing the "backup"
and "fullmesh" flags. mptcp_pm_nl_mp_prio_send_ack() does not access
anything protected by the PM lock, and it must release and reacquire
the PM lock.

By pushing the PM lock to where it is needed in mptcp_pm_nl_fullmesh(),
the lock is only acquired when the fullmesh flag is changed and the
backup flag code no longer has to release and reacquire the PM lock. The
change in locking context requires the MIB update to be modified - move
that to a better location instead.

This change also makes it possible to call
mptcp_pm_nl_mp_prio_send_ack() for the userspace PM commands without
manipulating the in-kernel PM lock.

Fixes: 0f9f696a502e ("mptcp: add set_flags command in PM netlink")
Acked-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Signed-off-by: Mat Martineau &lt;mathew.j.martineau@linux.intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mptcp: fix shutdown vs fallback race</title>
<updated>2022-06-29T03:45:42Z</updated>
<author>
<name>Paolo Abeni</name>
</author>
<published>2022-06-28T01:02:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d51991e2e31477853e5b9c1005ac617707077286'/>
<id>urn:sha1:d51991e2e31477853e5b9c1005ac617707077286</id>
<content type='text'>
If the MPTCP socket shutdown happens before a fallback
to TCP, and all the pending data have been already spooled,
we never close the TCP connection.

Address the issue explicitly checking for critical condition
at fallback time.

Fixes: 1e39e5a32ad7 ("mptcp: infinite mapping sending")
Fixes: 0348c690ed37 ("mptcp: add the fallback check")
Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
Signed-off-by: Mat Martineau &lt;mathew.j.martineau@linux.intel.com&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
</feed>
