From: David S. Miller Date: Mon, 4 Mar 2024 10:50:28 +0000 (+0000) Subject: Merge branch 'mptcp-lowat-sockopt' X-Git-Tag: v6.9-rc1~159^2~122 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b78fcd0a36a7d11cc71e7ee56bb27e71aea8464a;p=thirdparty%2Flinux.git Merge branch 'mptcp-lowat-sockopt' Matthieu Baerts says: ==================== mptcp: add TCP_NOTSENT_LOWAT sockopt support Patch 3 does the magic of adding TCP_NOTSENT_LOWAT support, all the other ones are minor cleanup seen along when working on the new feature. Note that this feature relies on the existing accounting for snd_nxt. Such accounting is not 110% accurate as it tracks the most recent sequence number queued to any subflow, and not the actual sequence number sent on the wire. Paolo experimented a lot, trying to implement the latter, and in the end it proved to be both "too complex" and "not necessary". The complexity raises from the need for additional lock and a lot of refactoring to introduce such protections without adding significant overhead. Additionally, snd_nxt is currently used and exposed with the current semantic by the internal packet scheduling. Introducing a different tracking will still require us to keep the old one. More interestingly, a more accurate tracking could be not strictly necessary: as the MPTCP socket enqueues data to the subflows only up to the available send window, any enqueue data is sent on the wire instantly, without any blocking operation short or a drop in the tx path at the nft or TC layer. ==================== Signed-off-by: Matthieu Baerts (NGI0) --- b78fcd0a36a7d11cc71e7ee56bb27e71aea8464a