From: Geliang Tang <geliang.tang@suse.com>
To: Mat Martineau <mathew.j.martineau@linux.intel.com>
Cc: mptcp@lists.linux.dev
Subject: Re: [PATCH mptcp-next v20 0/7] BPF redundant scheduler, part 2
Date: Sat, 19 Nov 2022 06:20:28 +0800 [thread overview]
Message-ID: <20221118222028.GB3222@localhost> (raw)
In-Reply-To: <68561c02-7c8a-d460-1139-1822499af26e@linux.intel.com>
On Fri, Nov 18, 2022 at 01:42:48PM -0800, Mat Martineau wrote:
> On Wed, 16 Nov 2022, Geliang Tang wrote:
>
> > v20:
> > - rebased on "Squash to "mptcp: refactor push_pending logic" v19"
> >
> > v19:
> > - patch 1, use 'continue' instead of 'goto again'.
> >
> > v18:
> > - some cleanups
> > - update commit logs.
> >
> > v17:
> > - address to Mat's comments in v16
> > - rebase to export/20221108T055508.
> >
> > v16:
> > - keep last_snd and snd_burst in struct mptcp_sock.
>
> I didn't notice this back in v16 - why has last_snd returned? At the end of
> the series, it still doesn't appear to do anything. Is it useful for some
> future feature?
last_snd is now used for BPF round-robin packet scheduler in
"selftests/bpf: Add bpf_rr scheduler".
Thanks,
-Geliang
>
> - Mat
>
> > - drop "mptcp: register default scheduler".
> > - drop "mptcp: add scheduler wrappers", move it into "mptcp: use
> > get_send wrapper" and "mptcp: use get_retrans wrapper".
> > - depends on 'v2, Revert "mptcp: add get_subflow wrappers" - fix
> > divide error in mptcp_subflow_get_send'
> >
> > v15:
> > 1: "refactor push pending" v10
> > 2-11: "register default scheduler" v3
> > - move last_snd and snd_burst into struct mptcp_sched_ops
> > 12-19: "BPF redundant scheduler" v15
> > - split "use get_send wrapper" into two patches
> > - rebase to export/20221021T061837.
> >
> > v14:
> > - add "mptcp: refactor push_pending logic" v10 as patch 1
> > - drop update_first_pending in patch 4
> > - drop update_already_sent in patch 5
> >
> > v13:
> > - deponds on "refactor push pending" v9.
> > - Simply 'goto out' after invoking mptcp_subflow_delegate in patch 1.
> > - All selftests (mptcp_connect.sh, mptcp_join.sh and simult_flows.sh) passed.
> >
> > v12:
> > - fix WARN_ON_ONCE(reuse_skb) and WARN_ON_ONCE(!msk->recovery) errors
> > in kernel logs.
> >
> > v11:
> > - address to Mat's comments in v10.
> > - rebase to export/20220908T063452
> >
> > v10:
> > - send multiple dfrags in __mptcp_push_pending().
> >
> > v9:
> > - drop the extra *err paramenter of mptcp_sched_get_send() as Florian
> > suggested.
> >
> > v8:
> > - update __mptcp_push_pending(), send the same data on each subflow.
> > - update __mptcp_retrans, track the max sent data.
> > = add a new patch.
> >
> > v7:
> > - drop redundant flag in v6
> > - drop __mptcp_subflows_push_pending in v6
> > - update redundant subflows support in __mptcp_push_pending
> > - update redundant subflows support in __mptcp_retrans
> >
> > v6:
> > - Add redundant flag for struct mptcp_sched_ops.
> > - add a dedicated function __mptcp_subflows_push_pending() to deal with
> > redundat subflows push pending.
> >
> > v5:
> > - address to Paolo's comment, keep the optimization to
> > mptcp_subflow_get_send() for the non eBPF case.
> > - merge mptcp_sched_get_send() and __mptcp_sched_get_send() in v4 into one.
> > - depends on "cleanups for bpf sched selftests".
> >
> > v4:
> > - small cleanups in patch 1, 2.
> > - add TODO in patch 3.
> > - rebase patch 5 on 'cleanups for bpf sched selftests'.
> >
> > v3:
> > - use new API.
> > - fix the link failure tests issue mentioned in ("https://patchwork.kernel.org/project/mptcp/cover/cover.1653033459.git.geliang.tang@suse.com/").
> >
> > v2:
> > - add MPTCP_SUBFLOWS_MAX limit to avoid infinite loops when the
> > scheduler always sets call_again to true.
> > - track the largest copied amount.
> > - deal with __mptcp_subflow_push_pending() and the retransmit loop.
> > - depends on "BPF round-robin scheduler" v14.
> >
> > v1:
> >
> > Implements the redundant BPF MPTCP scheduler, which sends all packets
> > redundantly on all available subflows.
> >
> > Geliang Tang (7):
> > mptcp: add scheduler wrappers
> > mptcp: use get_send wrapper
> > mptcp: use get_retrans wrapper
> > mptcp: delay updating first_pending
> > mptcp: delay updating already_sent
> > selftests/bpf: Add bpf_red scheduler
> > selftests/bpf: Add bpf_red test
> >
> > net/mptcp/protocol.c | 242 ++++++++++++------
> > net/mptcp/protocol.h | 18 +-
> > net/mptcp/sched.c | 67 +++++
> > .../testing/selftests/bpf/prog_tests/mptcp.c | 34 +++
> > .../selftests/bpf/progs/mptcp_bpf_red.c | 45 ++++
> > 5 files changed, 320 insertions(+), 86 deletions(-)
> > create mode 100644 tools/testing/selftests/bpf/progs/mptcp_bpf_red.c
> >
> > --
> > 2.35.3
> >
> >
> >
>
> --
> Mat Martineau
> Intel
prev parent reply other threads:[~2022-11-18 22:20 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-16 11:43 [PATCH mptcp-next v20 0/7] BPF redundant scheduler, part 2 Geliang Tang
2022-11-16 11:43 ` [PATCH mptcp-next v20 1/7] mptcp: add scheduler wrappers Geliang Tang
2022-11-16 11:43 ` [PATCH mptcp-next v20 2/7] mptcp: use get_send wrapper Geliang Tang
2022-11-18 22:04 ` Mat Martineau
2022-11-16 11:43 ` [PATCH mptcp-next v20 3/7] mptcp: use get_retrans wrapper Geliang Tang
2022-11-18 22:05 ` Mat Martineau
2022-11-16 11:43 ` [PATCH mptcp-next v20 4/7] mptcp: delay updating first_pending Geliang Tang
2022-11-16 11:43 ` [PATCH mptcp-next v20 5/7] mptcp: delay updating already_sent Geliang Tang
2022-11-18 22:15 ` Mat Martineau
2022-11-28 3:33 ` Geliang Tang
2022-11-16 11:43 ` [PATCH mptcp-next v20 6/7] selftests/bpf: Add bpf_red scheduler Geliang Tang
2022-11-16 11:43 ` [PATCH mptcp-next v20 7/7] selftests/bpf: Add bpf_red test Geliang Tang
2022-11-18 21:42 ` [PATCH mptcp-next v20 0/7] BPF redundant scheduler, part 2 Mat Martineau
2022-11-18 22:20 ` Geliang Tang [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221118222028.GB3222@localhost \
--to=geliang.tang@suse.com \
--cc=mathew.j.martineau@linux.intel.com \
--cc=mptcp@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox