linux-yocto/net
Paolo Abeni 3277cf4338 mptcp: reset fallback status gracefully at disconnect() time
commit da9b2fc7b7 upstream.

mptcp_disconnect() clears the fallback bit unconditionally, without
touching the associated flags.

The bit clear is safe, as no fallback operation can race with that --
all subflow are already in TCP_CLOSE status thanks to the previous
FASTCLOSE -- but we need to consistently reset all the fallback related
status.

Also acquire the relevant lock, to avoid fouling static analyzers.

Fixes: b29fcfb54c ("mptcp: full disconnect implementation")
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20250714-net-mptcp-fallback-races-v1-3-391aff963322@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-08-01 09:47:32 +01:00
..
6lowpan
9p 9p/net: fix improper handling of bogus negative read/write replies 2025-05-02 07:50:56 +02:00
802 net: 802: LLC+SNAP OID:PID lookup on start of skb data 2025-01-17 13:36:11 +01:00
8021q net: vlan: fix VLAN 0 refcount imbalance of toggling filtering during runtime 2025-07-24 08:53:19 +02:00
appletalk net: appletalk: Fix use-after-free in AARP proxy probe 2025-08-01 09:47:29 +01:00
atm atm: clip: Fix NULL pointer dereference in vcc_sendmsg() 2025-07-17 18:35:11 +02:00
ax25 ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt 2025-02-21 13:57:06 +01:00
batman-adv batman-adv: Ignore own maximum aggregation size during RX 2025-03-28 21:59:55 +01:00
bluetooth Bluetooth: L2CAP: Fix attempting to adjust outgoing MTU 2025-07-24 08:53:19 +02:00
bpf bpf, test_run: Fix use-after-free issue in eth_skb_pkt_type() 2025-02-27 04:10:50 -08:00
bpfilter
bridge net: bridge: Do not offload IGMP/MLD messages 2025-07-24 08:53:19 +02:00
caif
can can: bcm: add missing rcu read protection for procfs content 2025-06-04 14:42:19 +02:00
ceph ceph: allocate sparse_ext map only for sparse reads 2025-01-02 10:32:00 +01:00
core net: selftests: fix TCP packet checksum 2025-07-06 11:00:12 +02:00
dcb
dccp net: fix data-races around sk->sk_forward_alloc 2025-01-23 17:21:19 +01:00
devlink
dns_resolver
dsa net: dsa: tag_brcm: legacy: fix pskb_may_pull length 2025-06-19 15:28:33 +02:00
ethernet
ethtool net: ethtool: Don't call .cleanup_data when prepare_data fails 2025-04-25 10:45:07 +02:00
handshake
hsr net: hsr: fix fill_frame_info() regression vs VLAN packets 2025-02-08 09:52:32 +01:00
ieee802154 net: Rename mono_delivery_time to tstamp_type for scalabilty 2025-05-09 09:43:57 +02:00
ife
ipv4 tcp: Correct signedness in skb remaining space calculation 2025-07-17 18:35:09 +02:00
ipv6 ipv6: make addrconf_wq single threaded 2025-07-24 08:53:20 +02:00
iucv s390/iucv: MSG_PEEK causes memory leak in iucv_sock_destruct() 2024-12-09 10:32:33 +01:00
kcm
key
l2tp ipv6: introduce dst_rt6_info() helper 2024-12-14 19:59:35 +01:00
l3mdev
lapb
llc llc: fix data loss when reading from a socket in llc_ui_recvmsg() 2025-06-04 14:42:20 +02:00
mac80211 wifi: mac80211: drop invalid source address OCB frames 2025-07-10 16:03:16 +02:00
mac802154 mac802154: check local interfaces before deleting sdata list 2025-01-23 17:21:13 +01:00
mctp net: mctp: Ensure keys maintain only one ref to corresponding dev 2025-05-22 14:12:16 +02:00
mpls mpls: Use rcu_dereference_rtnl() in mpls_route_input_rcu(). 2025-06-27 11:09:02 +01:00
mptcp mptcp: reset fallback status gracefully at disconnect() time 2025-08-01 09:47:32 +01:00
ncsi net: ncsi: Fix GCPS 64-bit member variables 2025-06-19 15:28:10 +02:00
netfilter netfilter: nf_conntrack: fix crash due to removal of uninitialised entry 2025-07-24 08:53:19 +02:00
netlabel calipso: unlock rcu before returning -EAFNOSUPPORT 2025-06-19 15:28:46 +02:00
netlink netlink: make sure we allow at least one dump skb 2025-07-17 18:35:16 +02:00
netrom netrom: check buffer length before accessing it 2025-01-09 13:32:00 +01:00
nfc NFC: nci: uart: Set tty->disc_data only in success path 2025-06-27 11:08:48 +01:00
nsh
openvswitch net: openvswitch: Fix the dead loop of MPLS parse 2025-06-19 15:28:19 +02:00
packet af_packet: fix soft lockup issue caused by tpacket_snd() 2025-07-24 08:53:13 +02:00
phonet phonet/pep: Move call to pn_skb_get_dst_sockaddr() earlier in pep_sock_accept() 2025-07-24 08:53:12 +02:00
psample
qrtr net: qrtr: Update packets cloning when broadcasting 2024-10-04 16:29:41 +02:00
rds
rfkill net: rfkill: gpio: Add check for clk_enable() 2024-12-09 10:32:11 +01:00
rose rose: fix dangling neighbour pointers in rose_rt_device_down() 2025-07-10 16:03:11 +02:00
rxrpc rxrpc: Fix transmission of an abort in response to an abort 2025-07-24 08:53:20 +02:00
sched net/sched: sch_qfq: Avoid triggering might_sleep in atomic context in qfq_delete_class 2025-08-01 09:47:29 +01:00
sctp sctp: Do not wake readers in __sctp_write_space() 2025-06-27 11:08:53 +01:00
smc net/smc: use the correct ndev to find pnetid by pnetid table 2025-06-04 14:41:59 +02:00
strparser strparser: Add read_sock callback 2025-02-27 04:10:50 -08:00
sunrpc sunrpc: don't immediately retransmit on seqno miss 2025-07-06 11:00:05 +02:00
switchdev net: switchdev: Convert blocking notification chain to a raw one 2025-03-22 12:50:39 -07:00
tipc tipc: Fix use-after-free in tipc_conn_close(). 2025-07-17 18:35:09 +02:00
tls tls: always refresh the queue when reading sock 2025-07-24 08:53:19 +02:00
unix af_unix: Don't set -ECONNRESET for consumed OOB skb. 2025-07-06 11:00:12 +02:00
vmw_vsock vsock: Fix IOCTL_VM_SOCKETS_GET_LOCAL_CID to check also transport_local 2025-07-17 18:35:10 +02:00
wireless wifi: prevent A-MSDU attacks in mesh networks 2025-07-17 18:35:13 +02:00
x25
xdp xsk: fix an integer overflow in xp_create_and_assign_umem() 2025-03-28 21:59:55 +01:00
xfrm xfrm: interface: fix use-after-free after changing collect_md xfrm interface 2025-08-01 09:47:28 +01:00
compat.c
devres.c
Kconfig
Kconfig.debug
Makefile af_unix: Remove CONFIG_UNIX_SCM. 2025-06-04 14:42:22 +02:00
socket.c net: explicitly clear the sk pointer, when pf->create fails 2024-10-17 15:24:35 +02:00
sysctl_net.c