All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH mptcp-net v2 0/9] mptcp: fix inconsistent backup usage
@ 2024-07-16 20:53 Matthieu Baerts (NGI0)
  2024-07-16 20:53 ` [PATCH mptcp-net v2 1/9] mptcp: sched: check both directions for backup Matthieu Baerts (NGI0)
                   ` (9 more replies)
  0 siblings, 10 replies; 19+ messages in thread
From: Matthieu Baerts (NGI0) @ 2024-07-16 20:53 UTC (permalink / raw)
  To: mptcp; +Cc: Matthieu Baerts (NGI0)

In all the backup tests we have, the backup flag is set on one side, and
the expected behaviour is to have both sides respecting this decision.

On the scheduler side, only the 'backup' field is checked, which is
supposed to be set only if the other peer flagged a subflow as backup.
But in various places, this flag is set when the local host flagged the
subflow as backup.

One last thing that has been fixed is the backup flag in 'signal'
endpoints: it was working only when setting the backup flag while the
connection was already opened. That's what the MPJ selftests were doing
to check that the signal endpoint were supporting the backup flag (on
purpose I guess, because the support was broken in MP_JOIN...).

The last two patches adapt the BPF selftests to mimic what is now done
by the in-kernel packets scheduler.

Note that the Packetdrill tests need to be updated because the behaviour
has been changed / fixed:

  https://github.com/multipath-tcp/packetdrill/pull/152

Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
---
Changes in v2:
- new patches 4 and 5.
- split patch 6 in two (code then tests) to ease the backports.
- patch 6 addresses Mat's comments, and support the ID0 case.
- Link to v1: https://lore.kernel.org/r/20240711-mptcp-backup-mpj-v1-0-d45506182a9e@kernel.org

---
Matthieu Baerts (NGI0) (9):
      mptcp: sched: check both directions for backup
      mptcp: distinguish rcv vs sent backup flag in requests
      mptcp: pm: only set request_bkup flag when sending MP_PRIO
      mptcp: mib: count MPJ with backup flag
      selftests: mptcp: join: validate backup in MPJ
      mptcp: pm: fix backup support in signal endpoints
      selftests: mptcp: join: check backup support in signal endp
      Squash to "selftests/bpf: Add bpf_bkup scheduler & test"
      Squash to "selftests/bpf: Add bpf_burst scheduler & test"

 include/trace/events/mptcp.h                       |  2 +-
 net/mptcp/mib.c                                    |  2 +
 net/mptcp/mib.h                                    |  2 +
 net/mptcp/options.c                                |  2 +-
 net/mptcp/pm.c                                     | 15 +++--
 net/mptcp/pm_netlink.c                             | 24 +++++++-
 net/mptcp/pm_userspace.c                           | 25 +++++++-
 net/mptcp/protocol.c                               | 10 +--
 net/mptcp/protocol.h                               | 12 +++-
 net/mptcp/subflow.c                                | 16 ++++-
 tools/testing/selftests/bpf/progs/mptcp_bpf_bkup.c |  3 +-
 .../testing/selftests/bpf/progs/mptcp_bpf_burst.c  | 12 ++--
 tools/testing/selftests/net/mptcp/mptcp_join.sh    | 72 +++++++++++++++++-----
 13 files changed, 159 insertions(+), 38 deletions(-)
---
base-commit: 06bd6d6c3416101af4881b6f3a0830ccca97c056
change-id: 20240711-mptcp-backup-mpj-2f8369fad366

Best regards,
-- 
Matthieu Baerts (NGI0) <matttbe@kernel.org>


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2024-07-18 15:11 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-16 20:53 [PATCH mptcp-net v2 0/9] mptcp: fix inconsistent backup usage Matthieu Baerts (NGI0)
2024-07-16 20:53 ` [PATCH mptcp-net v2 1/9] mptcp: sched: check both directions for backup Matthieu Baerts (NGI0)
2024-07-17  4:25   ` Geliang Tang
2024-07-18 11:00     ` Matthieu Baerts
2024-07-16 20:53 ` [PATCH mptcp-net v2 2/9] mptcp: distinguish rcv vs sent backup flag in requests Matthieu Baerts (NGI0)
2024-07-16 20:53 ` [PATCH mptcp-net v2 3/9] mptcp: pm: only set request_bkup flag when sending MP_PRIO Matthieu Baerts (NGI0)
2024-07-16 20:53 ` [PATCH mptcp-net v2 4/9] mptcp: mib: count MPJ with backup flag Matthieu Baerts (NGI0)
2024-07-16 20:53 ` [PATCH mptcp-net v2 5/9] selftests: mptcp: join: validate backup in MPJ Matthieu Baerts (NGI0)
2024-07-17  1:25   ` Geliang Tang
2024-07-18 11:09     ` Matthieu Baerts
2024-07-16 20:53 ` [PATCH mptcp-net v2 6/9] mptcp: pm: fix backup support in signal endpoints Matthieu Baerts (NGI0)
2024-07-17  3:04   ` Geliang Tang
2024-07-18 15:11     ` Matthieu Baerts
2024-07-16 20:53 ` [PATCH mptcp-net v2 7/9] selftests: mptcp: join: check backup support in signal endp Matthieu Baerts (NGI0)
2024-07-17  4:39   ` Geliang Tang
2024-07-18 11:15     ` Matthieu Baerts
2024-07-16 20:53 ` [PATCH mptcp-net v2 8/9] Squash to "selftests/bpf: Add bpf_bkup scheduler & test" Matthieu Baerts (NGI0)
2024-07-16 20:53 ` [PATCH mptcp-net v2 9/9] Squash to "selftests/bpf: Add bpf_burst " Matthieu Baerts (NGI0)
2024-07-16 21:45 ` [PATCH mptcp-net v2 0/9] mptcp: fix inconsistent backup usage MPTCP CI

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.