[PATCH mptcp-next v2 00/14] update bpf patches on export branch

Geliang Tang posted 14 patches 5 days, 3 hours ago
Failed in applying to current master (apply log)
Documentation/networking/mptcp-sysctl.rst     |   8 +
MAINTAINERS                                   |   1 +
include/linux/bpf.h                           |   1 +
include/linux/btf_ids.h                       |   3 +-
include/net/mptcp.h                           |  25 ++
include/uapi/linux/bpf.h                      |   7 +
kernel/bpf/bpf_struct_ops_types.h             |   4 +
kernel/bpf/verifier.c                         |   1 +
kernel/trace/bpf_trace.c                      |   2 +
net/core/filter.c                             |  18 +
net/mptcp/Makefile                            |   4 +-
net/mptcp/bpf.c                               | 175 ++++++++
net/mptcp/ctrl.c                              |  14 +
net/mptcp/protocol.c                          |  32 +-
net/mptcp/protocol.h                          |  12 +
net/mptcp/sched.c                             | 141 +++++++
scripts/bpf_doc.py                            |   2 +
tools/include/uapi/linux/bpf.h                |   7 +
tools/testing/selftests/bpf/bpf_tcp_helpers.h |  32 ++
tools/testing/selftests/bpf/config            |   3 +
tools/testing/selftests/bpf/network_helpers.c |  43 +-
tools/testing/selftests/bpf/network_helpers.h |   4 +
.../testing/selftests/bpf/prog_tests/mptcp.c  | 378 ++++++++++++++++++
.../selftests/bpf/progs/mptcp_bpf_first.c     |  32 ++
.../testing/selftests/bpf/progs/mptcp_sock.c  |  82 ++++
25 files changed, 1002 insertions(+), 29 deletions(-)
create mode 100644 net/mptcp/bpf.c
create mode 100644 net/mptcp/sched.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/mptcp.c
create mode 100644 tools/testing/selftests/bpf/progs/mptcp_bpf_first.c
create mode 100644 tools/testing/selftests/bpf/progs/mptcp_sock.c
[PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Geliang Tang 5 days, 3 hours ago
v2:
 - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
 - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)

base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
net-next-next") on export/20220510T054929

v1:
 - drop bpf_mptcp_helpers.h (Andrii)
 - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)

Geliang Tang (13):
  bpf: add bpf_skc_to_mptcp_sock_proto
  selftests/bpf: Enable CONFIG_IKCONFIG_PROC in config
  selftests/bpf: test bpf_skc_to_mptcp_sock
  selftests/bpf: verify token of struct mptcp_sock
  selftests/bpf: verify ca_name of struct mptcp_sock
  selftests/bpf: verify first of struct mptcp_sock
  mptcp: add struct mptcp_sched_ops
  mptcp: add a new sysctl scheduler
  mptcp: add sched in mptcp_sock
  mptcp: add get_subflow wrappers
  mptcp: add bpf_mptcp_sched_ops
  selftests/bpf: add bpf_first scheduler
  selftests/bpf: add bpf_first test

Nicolas Rybowski (1):
  selftests/bpf: add MPTCP test base

 Documentation/networking/mptcp-sysctl.rst     |   8 +
 MAINTAINERS                                   |   1 +
 include/linux/bpf.h                           |   1 +
 include/linux/btf_ids.h                       |   3 +-
 include/net/mptcp.h                           |  25 ++
 include/uapi/linux/bpf.h                      |   7 +
 kernel/bpf/bpf_struct_ops_types.h             |   4 +
 kernel/bpf/verifier.c                         |   1 +
 kernel/trace/bpf_trace.c                      |   2 +
 net/core/filter.c                             |  18 +
 net/mptcp/Makefile                            |   4 +-
 net/mptcp/bpf.c                               | 175 ++++++++
 net/mptcp/ctrl.c                              |  14 +
 net/mptcp/protocol.c                          |  32 +-
 net/mptcp/protocol.h                          |  12 +
 net/mptcp/sched.c                             | 141 +++++++
 scripts/bpf_doc.py                            |   2 +
 tools/include/uapi/linux/bpf.h                |   7 +
 tools/testing/selftests/bpf/bpf_tcp_helpers.h |  32 ++
 tools/testing/selftests/bpf/config            |   3 +
 tools/testing/selftests/bpf/network_helpers.c |  43 +-
 tools/testing/selftests/bpf/network_helpers.h |   4 +
 .../testing/selftests/bpf/prog_tests/mptcp.c  | 378 ++++++++++++++++++
 .../selftests/bpf/progs/mptcp_bpf_first.c     |  32 ++
 .../testing/selftests/bpf/progs/mptcp_sock.c  |  82 ++++
 25 files changed, 1002 insertions(+), 29 deletions(-)
 create mode 100644 net/mptcp/bpf.c
 create mode 100644 net/mptcp/sched.c
 create mode 100644 tools/testing/selftests/bpf/prog_tests/mptcp.c
 create mode 100644 tools/testing/selftests/bpf/progs/mptcp_bpf_first.c
 create mode 100644 tools/testing/selftests/bpf/progs/mptcp_sock.c

-- 
2.34.1


Re: [PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Matthieu Baerts 1 day, 23 hours ago
Hi Geliang, Mat

On 11/05/2022 09:56, Geliang Tang wrote:
> v2:
>  - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
>  - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)
> 
> base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
> net-next-next") on export/20220510T054929
> 
> v1:
>  - drop bpf_mptcp_helpers.h (Andrii)
>  - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)

Thank you for the patches.

I *think* everything is now sync in our tree but feel free to check
because I had to "manually" compare patches with what was in our tree.

But in theory, our tree is now ready for a v5.

- 82041505ae27: tg:msg: changelog v4
- a59272c197c5: selftests/bpf: add MPTCP test base
- e30677603c0a: Squash to "selftests/bpf: add MPTCP test base"
- 79399587d58f: tg:msg: changelog v4
- b0d947191559: selftests/bpf: verify token of struct mptcp_sock
- d84ab981b155: conflict in
t/selftests-bpf-verify-first-of-struct-mptcp_sock
- 0c8b3a796796: conflict in t/selftests-bpf-test-bpf_skc_to_mptcp_sock
- Results: 7809acd805cf..a4159e050cd2 (export)

Builds and tests are now in progress:

https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20220514T112122
https://github.com/multipath-tcp/mptcp_net-next/actions/workflows/build-validation.yml?query=branch:export

Cheers,
Matt
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net

Re: [PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Geliang Tang 1 day, 19 hours ago
On Sat, May 14, 2022 at 01:25:35PM +0200, Matthieu Baerts wrote:
> Hi Geliang, Mat
> 
> On 11/05/2022 09:56, Geliang Tang wrote:
> > v2:
> >  - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
> >  - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)
> > 
> > base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
> > net-next-next") on export/20220510T054929
> > 
> > v1:
> >  - drop bpf_mptcp_helpers.h (Andrii)
> >  - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)
> 
> Thank you for the patches.
> 
> I *think* everything is now sync in our tree but feel free to check
> because I had to "manually" compare patches with what was in our tree.
> 
> But in theory, our tree is now ready for a v5.

Thanks Matt, but three patches still need to be updated:

Patch #4, selftests/bpf: test bpf_skc_to_mptcp_sock

if (!tcp_sk->is_mptcp) {

->

if (!is_mptcp) {

Patch #10, mptcp: add sched in mptcp_sock

 struct mptcp_sock {
 	struct inet_connection_sock	sk;
 
-	__u32		token;
-	struct sock	*first;
-	char		ca_name[TCP_CA_NAME_MAX];
+	__u32			token;
+	struct sock		*first;
+	struct mptcp_sched_ops	*sched;
+	char			ca_name[TCP_CA_NAME_MAX];
 } __attribute__((preserve_access_index));
 
->

 	__u32		token;
 	struct sock	*first;
+	struct mptcp_sched_ops *sched;
 	char		ca_name[TCP_CA_NAME_MAX];
 } __attribute__((preserve_access_index));
 

Patch #13, selftests/bpf: add bpf_first scheduler

bpf_mptcp_helpers.h

->

bpf_tcp_helpers.h

Thanks,
-Geliang

> 
> - 82041505ae27: tg:msg: changelog v4
> - a59272c197c5: selftests/bpf: add MPTCP test base
> - e30677603c0a: Squash to "selftests/bpf: add MPTCP test base"
> - 79399587d58f: tg:msg: changelog v4
> - b0d947191559: selftests/bpf: verify token of struct mptcp_sock
> - d84ab981b155: conflict in
> t/selftests-bpf-verify-first-of-struct-mptcp_sock
> - 0c8b3a796796: conflict in t/selftests-bpf-test-bpf_skc_to_mptcp_sock
> - Results: 7809acd805cf..a4159e050cd2 (export)
> 
> Builds and tests are now in progress:
> 
> https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20220514T112122
> https://github.com/multipath-tcp/mptcp_net-next/actions/workflows/build-validation.yml?query=branch:export
> 
> Cheers,
> Matt
> -- 
> Tessares | Belgium | Hybrid Access Solutions
> www.tessares.net
> 


Re: [PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Matthieu Baerts 1 day, 18 hours ago
Hi Geliang,

On 14/05/2022 17:48, Geliang Tang wrote:
> On Sat, May 14, 2022 at 01:25:35PM +0200, Matthieu Baerts wrote:
>> Hi Geliang, Mat
>>
>> On 11/05/2022 09:56, Geliang Tang wrote:
>>> v2:
>>>  - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
>>>  - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)
>>>
>>> base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
>>> net-next-next") on export/20220510T054929
>>>
>>> v1:
>>>  - drop bpf_mptcp_helpers.h (Andrii)
>>>  - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)
>>
>> Thank you for the patches.
>>
>> I *think* everything is now sync in our tree but feel free to check
>> because I had to "manually" compare patches with what was in our tree.
>>
>> But in theory, our tree is now ready for a v5.
> 
> Thanks Matt, but three patches still need to be updated:
> 
> Patch #4, selftests/bpf: test bpf_skc_to_mptcp_sock
> 
> if (!tcp_sk->is_mptcp) {
> 
> ->
> 
> if (!is_mptcp) {

Thank you, I missed that!

- a973ee164a70 tg: fix wrong merge conflict resolution

> Patch #10, mptcp: add sched in mptcp_sock
> 
>  struct mptcp_sock {
>  	struct inet_connection_sock	sk;
>  
> -	__u32		token;
> -	struct sock	*first;
> -	char		ca_name[TCP_CA_NAME_MAX];
> +	__u32			token;
> +	struct sock		*first;
> +	struct mptcp_sched_ops	*sched;
> +	char			ca_name[TCP_CA_NAME_MAX];
>  } __attribute__((preserve_access_index));
>  
> ->
> 
>  	__u32		token;
>  	struct sock	*first;
> +	struct mptcp_sched_ops *sched;
>  	char		ca_name[TCP_CA_NAME_MAX];
>  } __attribute__((preserve_access_index));

I did that on purpose, I thought it was clearer to read after.

Do you prefer not to change the alignment?

> Patch #13, selftests/bpf: add bpf_first scheduler
> 
> bpf_mptcp_helpers.h
> 
> ->
> 
> bpf_tcp_helpers.h

Thanks!

- fc2aafca4737: bpf: use bpf_tcp_helpers.h instead of the mptcp one

Cheers,
Matt
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net

Re: [PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Geliang Tang 5 hours ago
Matthieu Baerts <matthieu.baerts@tessares.net> 于2022年5月15日周日 00:31写道:
>
> Hi Geliang,
>
> On 14/05/2022 17:48, Geliang Tang wrote:
> > On Sat, May 14, 2022 at 01:25:35PM +0200, Matthieu Baerts wrote:
> >> Hi Geliang, Mat
> >>
> >> On 11/05/2022 09:56, Geliang Tang wrote:
> >>> v2:
> >>>  - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
> >>>  - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)
> >>>
> >>> base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
> >>> net-next-next") on export/20220510T054929
> >>>
> >>> v1:
> >>>  - drop bpf_mptcp_helpers.h (Andrii)
> >>>  - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)
> >>
> >> Thank you for the patches.
> >>
> >> I *think* everything is now sync in our tree but feel free to check
> >> because I had to "manually" compare patches with what was in our tree.
> >>
> >> But in theory, our tree is now ready for a v5.
> >
> > Thanks Matt, but three patches still need to be updated:
> >
> > Patch #4, selftests/bpf: test bpf_skc_to_mptcp_sock
> >
> > if (!tcp_sk->is_mptcp) {
> >
> > ->
> >
> > if (!is_mptcp) {
>
> Thank you, I missed that!
>
> - a973ee164a70 tg: fix wrong merge conflict resolution

Hi Matt,

Here should be:
        if (!is_mptcp) {
not:
        if (is_mptcp) {

Otherwise, the mptcp bpf selftests failed.

I just sent a squash-to patch to fix this.

Thanks,
-Geliang

>
> > Patch #10, mptcp: add sched in mptcp_sock
> >
> >  struct mptcp_sock {
> >       struct inet_connection_sock     sk;
> >
> > -     __u32           token;
> > -     struct sock     *first;
> > -     char            ca_name[TCP_CA_NAME_MAX];
> > +     __u32                   token;
> > +     struct sock             *first;
> > +     struct mptcp_sched_ops  *sched;
> > +     char                    ca_name[TCP_CA_NAME_MAX];
> >  } __attribute__((preserve_access_index));
> >
> > ->
> >
> >       __u32           token;
> >       struct sock     *first;
> > +     struct mptcp_sched_ops *sched;
> >       char            ca_name[TCP_CA_NAME_MAX];
> >  } __attribute__((preserve_access_index));
>
> I did that on purpose, I thought it was clearer to read after.
>
> Do you prefer not to change the alignment?
>
> > Patch #13, selftests/bpf: add bpf_first scheduler
> >
> > bpf_mptcp_helpers.h
> >
> > ->
> >
> > bpf_tcp_helpers.h
>
> Thanks!
>
> - fc2aafca4737: bpf: use bpf_tcp_helpers.h instead of the mptcp one
>
> Cheers,
> Matt
> --
> Tessares | Belgium | Hybrid Access Solutions
> www.tessares.net
>

Re: [PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Geliang Tang 1 day, 18 hours ago
Hi Matt,

Matthieu Baerts <matthieu.baerts@tessares.net> 于2022年5月15日周日 00:31写道:
>
> Hi Geliang,
>
> On 14/05/2022 17:48, Geliang Tang wrote:
> > On Sat, May 14, 2022 at 01:25:35PM +0200, Matthieu Baerts wrote:
> >> Hi Geliang, Mat
> >>
> >> On 11/05/2022 09:56, Geliang Tang wrote:
> >>> v2:
> >>>  - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
> >>>  - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)
> >>>
> >>> base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
> >>> net-next-next") on export/20220510T054929
> >>>
> >>> v1:
> >>>  - drop bpf_mptcp_helpers.h (Andrii)
> >>>  - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)
> >>
> >> Thank you for the patches.
> >>
> >> I *think* everything is now sync in our tree but feel free to check
> >> because I had to "manually" compare patches with what was in our tree.
> >>
> >> But in theory, our tree is now ready for a v5.
> >
> > Thanks Matt, but three patches still need to be updated:
> >
> > Patch #4, selftests/bpf: test bpf_skc_to_mptcp_sock
> >
> > if (!tcp_sk->is_mptcp) {
> >
> > ->
> >
> > if (!is_mptcp) {
>
> Thank you, I missed that!
>
> - a973ee164a70 tg: fix wrong merge conflict resolution
>
> > Patch #10, mptcp: add sched in mptcp_sock
> >
> >  struct mptcp_sock {
> >       struct inet_connection_sock     sk;
> >
> > -     __u32           token;
> > -     struct sock     *first;
> > -     char            ca_name[TCP_CA_NAME_MAX];
> > +     __u32                   token;
> > +     struct sock             *first;
> > +     struct mptcp_sched_ops  *sched;
> > +     char                    ca_name[TCP_CA_NAME_MAX];
> >  } __attribute__((preserve_access_index));
> >
> > ->
> >
> >       __u32           token;
> >       struct sock     *first;
> > +     struct mptcp_sched_ops *sched;
> >       char            ca_name[TCP_CA_NAME_MAX];
> >  } __attribute__((preserve_access_index));
>
> I did that on purpose, I thought it was clearer to read after.
>
> Do you prefer not to change the alignment?

Yes, I prefer not to change the alignments, it's much easier. If we
want to change them, it's better to squash the changes into the
original patches.

Thanks,
-Geliang

>
> > Patch #13, selftests/bpf: add bpf_first scheduler
> >
> > bpf_mptcp_helpers.h
> >
> > ->
> >
> > bpf_tcp_helpers.h
>
> Thanks!
>
> - fc2aafca4737: bpf: use bpf_tcp_helpers.h instead of the mptcp one
>
> Cheers,
> Matt
> --
> Tessares | Belgium | Hybrid Access Solutions
> www.tessares.net
>

Re: [PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Geliang Tang 8 hours ago
Geliang Tang <geliangtang@gmail.com> 于2022年5月15日周日 00:46写道:
>
> Hi Matt,
>
> Matthieu Baerts <matthieu.baerts@tessares.net> 于2022年5月15日周日 00:31写道:
> >
> > Hi Geliang,
> >
> > On 14/05/2022 17:48, Geliang Tang wrote:
> > > On Sat, May 14, 2022 at 01:25:35PM +0200, Matthieu Baerts wrote:
> > >> Hi Geliang, Mat
> > >>
> > >> On 11/05/2022 09:56, Geliang Tang wrote:
> > >>> v2:
> > >>>  - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
> > >>>  - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)
> > >>>
> > >>> base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
> > >>> net-next-next") on export/20220510T054929
> > >>>
> > >>> v1:
> > >>>  - drop bpf_mptcp_helpers.h (Andrii)
> > >>>  - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)
> > >>
> > >> Thank you for the patches.
> > >>
> > >> I *think* everything is now sync in our tree but feel free to check
> > >> because I had to "manually" compare patches with what was in our tree.
> > >>
> > >> But in theory, our tree is now ready for a v5.
> > >
> > > Thanks Matt, but three patches still need to be updated:
> > >
> > > Patch #4, selftests/bpf: test bpf_skc_to_mptcp_sock
> > >
> > > if (!tcp_sk->is_mptcp) {
> > >
> > > ->
> > >
> > > if (!is_mptcp) {
> >
> > Thank you, I missed that!
> >
> > - a973ee164a70 tg: fix wrong merge conflict resolution
> >
> > > Patch #10, mptcp: add sched in mptcp_sock
> > >
> > >  struct mptcp_sock {
> > >       struct inet_connection_sock     sk;
> > >
> > > -     __u32           token;
> > > -     struct sock     *first;
> > > -     char            ca_name[TCP_CA_NAME_MAX];
> > > +     __u32                   token;
> > > +     struct sock             *first;
> > > +     struct mptcp_sched_ops  *sched;
> > > +     char                    ca_name[TCP_CA_NAME_MAX];
> > >  } __attribute__((preserve_access_index));
> > >
> > > ->
> > >
> > >       __u32           token;
> > >       struct sock     *first;
> > > +     struct mptcp_sched_ops *sched;
> > >       char            ca_name[TCP_CA_NAME_MAX];
> > >  } __attribute__((preserve_access_index));
> >
> > I did that on purpose, I thought it was clearer to read after.
> >
> > Do you prefer not to change the alignment?
>
> Yes, I prefer not to change the alignments, it's much easier. If we
> want to change them, it's better to squash the changes into the
> original patches.

Hi Matt & Mat,

I think it's better to keep the alignment of members of mptcp_sock in
bpf_tcp_helpers.h as the same as the alignment of mptcp_sock in
net/mptcp/protocol.h. So I just sent a squash-to patch in our ML to
fix this.

Anyway, bpf patches in our tree are now ready for a bpf-next v5.

Thanks,
-Geliang


>
> Thanks,
> -Geliang
>
> >
> > > Patch #13, selftests/bpf: add bpf_first scheduler
> > >
> > > bpf_mptcp_helpers.h
> > >
> > > ->
> > >
> > > bpf_tcp_helpers.h
> >
> > Thanks!
> >
> > - fc2aafca4737: bpf: use bpf_tcp_helpers.h instead of the mptcp one
> >
> > Cheers,
> > Matt
> > --
> > Tessares | Belgium | Hybrid Access Solutions
> > www.tessares.net
> >

Re: [PATCH mptcp-next v2 00/14] update bpf patches on export branch
Posted by Mat Martineau 4 days, 11 hours ago
On Wed, 11 May 2022, Geliang Tang wrote:

> v2:
> - drop "bpf: expose is_mptcp flag to bpf_tcp_sock" (Martin & Andrii)
> - patch 3, use is_mptcp in tcp_sock, instead of bpf_tcp_sock (Martin & Andrii)
>
> base-commit: bcf89bc9c28e ("DO-NOT-MERGE: git markup: features
> net-next-next") on export/20220510T054929
>

These look good to replace the equivalent patches in the export branch. 
Thanks Geliang.

- Mat

> v1:
> - drop bpf_mptcp_helpers.h (Andrii)
> - patch 6, skip the test if 'ip mptcp monitor' is not supported (Mat)
>
> Geliang Tang (13):
>  bpf: add bpf_skc_to_mptcp_sock_proto
>  selftests/bpf: Enable CONFIG_IKCONFIG_PROC in config
>  selftests/bpf: test bpf_skc_to_mptcp_sock
>  selftests/bpf: verify token of struct mptcp_sock
>  selftests/bpf: verify ca_name of struct mptcp_sock
>  selftests/bpf: verify first of struct mptcp_sock
>  mptcp: add struct mptcp_sched_ops
>  mptcp: add a new sysctl scheduler
>  mptcp: add sched in mptcp_sock
>  mptcp: add get_subflow wrappers
>  mptcp: add bpf_mptcp_sched_ops
>  selftests/bpf: add bpf_first scheduler
>  selftests/bpf: add bpf_first test
>
> Nicolas Rybowski (1):
>  selftests/bpf: add MPTCP test base
>
> Documentation/networking/mptcp-sysctl.rst     |   8 +
> MAINTAINERS                                   |   1 +
> include/linux/bpf.h                           |   1 +
> include/linux/btf_ids.h                       |   3 +-
> include/net/mptcp.h                           |  25 ++
> include/uapi/linux/bpf.h                      |   7 +
> kernel/bpf/bpf_struct_ops_types.h             |   4 +
> kernel/bpf/verifier.c                         |   1 +
> kernel/trace/bpf_trace.c                      |   2 +
> net/core/filter.c                             |  18 +
> net/mptcp/Makefile                            |   4 +-
> net/mptcp/bpf.c                               | 175 ++++++++
> net/mptcp/ctrl.c                              |  14 +
> net/mptcp/protocol.c                          |  32 +-
> net/mptcp/protocol.h                          |  12 +
> net/mptcp/sched.c                             | 141 +++++++
> scripts/bpf_doc.py                            |   2 +
> tools/include/uapi/linux/bpf.h                |   7 +
> tools/testing/selftests/bpf/bpf_tcp_helpers.h |  32 ++
> tools/testing/selftests/bpf/config            |   3 +
> tools/testing/selftests/bpf/network_helpers.c |  43 +-
> tools/testing/selftests/bpf/network_helpers.h |   4 +
> .../testing/selftests/bpf/prog_tests/mptcp.c  | 378 ++++++++++++++++++
> .../selftests/bpf/progs/mptcp_bpf_first.c     |  32 ++
> .../testing/selftests/bpf/progs/mptcp_sock.c  |  82 ++++
> 25 files changed, 1002 insertions(+), 29 deletions(-)
> create mode 100644 net/mptcp/bpf.c
> create mode 100644 net/mptcp/sched.c
> create mode 100644 tools/testing/selftests/bpf/prog_tests/mptcp.c
> create mode 100644 tools/testing/selftests/bpf/progs/mptcp_bpf_first.c
> create mode 100644 tools/testing/selftests/bpf/progs/mptcp_sock.c
>
> -- 
> 2.34.1
>
>
>

--
Mat Martineau
Intel