linux/net/mptcp
Paolo Abeni d09d17c104 mptcp: fix spurious wake-up on under memory pressure
commit e226d9259d upstream.

The wake-up condition currently implemented by mptcp_epollin_ready()
is wrong, as it could mark the MPTCP socket as readable even when
no data are present and the system is under memory pressure.

Explicitly check for some data being available in the receive queue.

Fixes: 5684ab1a0e ("mptcp: give rcvlowat some love")
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/20250113-net-mptcp-connect-st-flakes-v1-2-0d986ee7b1b6@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-01-23 17:21:15 +01:00
..
bpf.c bpf: Add update_socket_protocol hook 2023-08-16 10:22:16 -07:00
crypto.c kunit: mptcp: adhere to KUNIT formatting standard 2021-04-16 17:10:40 -07:00
crypto_test.c mptcp: move crypto test to KUNIT 2020-06-26 16:21:39 -07:00
ctrl.c mptcp: sysctl: sched: avoid using current->nsproxy 2025-01-17 13:36:17 +01:00
diag.c mptcp: correct MPTCP_SUBFLOW_ATTR_SSN_OFFSET reserved size 2024-08-29 17:33:19 +02:00
fastopen.c mptcp: pr_debug: add missing \n at the end 2024-09-08 07:54:35 +02:00
Kconfig kunit: mptcp: adhere to KUNIT formatting standard 2021-04-16 17:10:40 -07:00
Makefile mptcp: add struct mptcp_sched_ops 2023-08-22 17:31:18 -07:00
mib.c mptcp: prevent MPC handshake on port-based signal endpoints 2024-10-22 15:46:25 +02:00
mib.h mptcp: prevent MPC handshake on port-based signal endpoints 2024-10-22 15:46:25 +02:00
mptcp_diag.c tcp: Access &tcp_hashinfo via net. 2022-09-20 10:21:49 -07:00
options.c mptcp: be sure to send ack when mptcp-level window re-opens 2025-01-23 17:21:15 +01:00
pm.c mptcp: pr_debug: add missing \n at the end 2024-09-08 07:54:35 +02:00
pm_netlink.c mptcp: pm: use _rcu variant under rcu_read_lock 2024-11-22 15:38:36 +01:00
pm_userspace.c mptcp: hold pm lock when deleting entry 2024-11-22 15:38:36 +01:00
protocol.c mptcp: don't always assume copied data in mptcp_cleanup_rbuf() 2025-01-09 13:32:09 +01:00
protocol.h mptcp: fix spurious wake-up on under memory pressure 2025-01-23 17:21:15 +01:00
sched.c mptcp: pr_debug: add missing \n at the end 2024-09-08 07:54:35 +02:00
sockopt.c mptcp: pr_debug: add missing \n at the end 2024-09-08 07:54:35 +02:00
subflow.c mptcp: prevent MPC handshake on port-based signal endpoints 2024-10-22 15:46:25 +02:00
syncookies.c mptcp: don't return sockets in foreign netns 2021-09-24 10:51:36 +01:00
token.c mptcp: add statistics for mptcp socket in use 2023-01-09 07:30:50 +00:00
token_test.c mptcp: init sk->sk_prot in build_msk() 2023-01-09 07:30:50 +00:00