Subject: Re: [PATCH bpf-next v2 1/4] bpf: sockmap, add test for sk_msg prog pop msg helper

From: John Fastabend <[email-masked]>
Date: Fri, 26 Jan 2024 07:37:45 -0800

Jakub Sitnicki wrote:
> On Wed, Jan 24, 2024 at 10:54 AM -08, John Fastabend wrote:
> > For msg_pop sk_msg helpers we only have older tests in test_sockmap, but
> > these are showing their age. They don't use any of the newer style BPF
> > and also require running test_sockmap. Lets use the prog_test framework
> > and add a test for msg_pop.
> >
> > This is a much nicer test env using newer style BPF. We can
> > extend this to support all the other helpers shortly.
> >
> > The bpf program is a template that lets us run through all the helpers
> > so we can cover not just pop, but all the other helpers as well.
> >
> > Signed-off-by: John Fastabend <[email-masked]>
> > ---
> >  .../bpf/prog_tests/sockmap_helpers.h          |  10 +
> >  .../bpf/prog_tests/sockmap_msg_helpers.c      | 210 ++++++++++++++++++
> >  .../bpf/progs/test_sockmap_msg_helpers.c      |  52 +++++
> >  3 files changed, 272 insertions(+)
> >  create mode 100644 tools/testing/selftests/bpf/prog_tests/sockmap_msg_helpers.c
> >  create mode 100644 tools/testing/selftests/bpf/progs/test_sockmap_msg_helpers.c
> >
> 
> [...]
> 
> > diff --git a/tools/testing/selftests/bpf/prog_tests/sockmap_msg_helpers.c b/tools/testing/selftests/bpf/prog_tests/sockmap_msg_helpers.c
> > new file mode 100644
> > index 000000000000..9ffe02f45808
> > --- /dev/null
> > +++ b/tools/testing/selftests/bpf/prog_tests/sockmap_msg_helpers.c
> > @@ -0,0 +1,210 @@
> > +// SPDX-License-Identifier: GPL-2.0
> > +// Copyright (c) 2020 Cloudflare
> 
> Thanks, but we can't take the credit for this brand new file ;-)

Ah yep seems I cut'n'pasted it from one of your files. I'll
update it.

> 
> > +#include <error.h>
> > +#include <netinet/tcp.h>
> > +#include <sys/epoll.h>
> > +
> > +#include "test_progs.h"
> > +#include "test_sockmap_msg_helpers.skel.h"
> > +#include "sockmap_helpers.h"
> > +
> > +#define TCP_REPAIR		19	/* TCP sock is under repair right now */
> > +
> > +#define TCP_REPAIR_ON		1
> > +#define TCP_REPAIR_OFF_NO_WP	-1	/* Turn off without window probes */
> 
> These defines are not unused by this module. Copy-pasted by mistake?

Yep first iteration I used these will drop them. Thanks.

> 
> [...]
> 
> > diff --git a/tools/testing/selftests/bpf/progs/test_sockmap_msg_helpers.c b/tools/testing/selftests/bpf/progs/test_sockmap_msg_helpers.c
> > new file mode 100644
> > index 000000000000..c721a00b6001
> > --- /dev/null
> > +++ b/tools/testing/selftests/bpf/progs/test_sockmap_msg_helpers.c
> > @@ -0,0 +1,52 @@
> > +// SPDX-License-Identifier: GPL-2.0
> > +// Copyright (c) 2020 Cloudflare
> 
> ^ :-)
> 
> [...]