[PATCH bpf-next] selftests/bpf: Fix const qualifier warning in fexit_bpf2bpf.c

Varun R Mallya posted 1 patch 1 month ago
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH bpf-next] selftests/bpf: Fix const qualifier warning in fexit_bpf2bpf.c
Posted by Varun R Mallya 1 month ago
Building selftests with
clang 23.0.0 (6fae863eba8a72cdd82f37e7111a46a70be525e0) triggers
the following error:

  tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c:117:12:
  error: assigning to 'char *' from 'const char *' discards qualifiers
  [-Werror,-Wincompatible-pointer-types-discards-qualifiers]

The variable `tgt_name` is declared as `char *`, but it stores the
result of strstr(prog_name[i], "/"). Since `prog_name[i]` is a
`const char *`, the returned pointer should also be treated as
const-qualified.

Update `tgt_name` to `const char *` to match the type of the underlying
string and silence the compiler warning.

Signed-off-by: Varun R Mallya <varunrmallya@gmail.com>
---
 tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
index 23d933f1aec6..92c20803ea76 100644
--- a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
+++ b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
@@ -111,7 +111,7 @@ static void test_fexit_bpf2bpf_common(const char *obj_file,
 		struct bpf_link_info link_info;
 		struct bpf_program *pos;
 		const char *pos_sec_name;
-		char *tgt_name;
+		const char *tgt_name;
 		__s32 btf_id;
 
 		tgt_name = strstr(prog_name[i], "/");
-- 
2.53.0
Re: [PATCH bpf-next] selftests/bpf: Fix const qualifier warning in fexit_bpf2bpf.c
Posted by Varun R Mallya 1 month ago
Looks like the CI failed on this:
> CI has tested the following submission:
> Status:     FAILURE
> Name:       [bpf-next] selftests/bpf: Fix const qualifier warning in fexit_bpf2bpf.c
> Patchwork:  https://patchwork.kernel.org/project/netdevbpf/list/?series=1062212&state=*
> Matrix:     https://github.com/kernel-patches/bpf/actions/runs/22741682920
> 
> Failed jobs:
> test_progs_parallel-x86_64-gcc-15: https://github.com/kernel-patches/bpf/actions/runs/22741682920/job/65957069283
> 
>

The CI Failure seems to be unrelated, though:

```
With the provided path, there will be 109 files uploaded

Artifact name is valid!
Root directory input is valid!
Error: The path for one of the files in artifact is not valid:
/packets-135-10-net_timestamping__INET4:_bpf_timestamping-net_timestamping_ns.log.
Contains the following character:  Colon :

Invalid characters include:  Double quote ", Colon :, Less than <, Greater than >,
Vertical bar |, Asterisk *, Question mark ?, Carriage return \r, Line feed \n

The following characters are not allowed in files that are uploaded due to
limitations with certain file systems such as NTFS. To maintain file system
agnostic behavior, these characters are intentionally not allowed to prevent
potential problems with downloads on different file systems.
```
The selftests did pass.
Re: [PATCH bpf-next] selftests/bpf: Fix const qualifier warning in fexit_bpf2bpf.c
Posted by Menglong Dong 1 month ago
On 2026/3/6 06:21 Varun R Mallya <varunrmallya@gmail.com> write:
> Building selftests with
> clang 23.0.0 (6fae863eba8a72cdd82f37e7111a46a70be525e0) triggers
> the following error:
> 
>   tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c:117:12:
>   error: assigning to 'char *' from 'const char *' discards qualifiers
>   [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
> 
> The variable `tgt_name` is declared as `char *`, but it stores the
> result of strstr(prog_name[i], "/"). Since `prog_name[i]` is a
> `const char *`, the returned pointer should also be treated as
> const-qualified.
> 
> Update `tgt_name` to `const char *` to match the type of the underlying
> string and silence the compiler warning.
> 
> Signed-off-by: Varun R Mallya <varunrmallya@gmail.com>
> ---
>  tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> index 23d933f1aec6..92c20803ea76 100644
> --- a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> +++ b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> @@ -111,7 +111,7 @@ static void test_fexit_bpf2bpf_common(const char *obj_file,
>  		struct bpf_link_info link_info;
>  		struct bpf_program *pos;
>  		const char *pos_sec_name;
> -		char *tgt_name;
> +		const char *tgt_name;

I have been suffering from this build error too. So,

Acked-by: Menglong Dong <menglong.dong@linux.dev>

>  		__s32 btf_id;
>  
>  		tgt_name = strstr(prog_name[i], "/");
> -- 
> 2.53.0
> 
> 
>
Re: [PATCH bpf-next] selftests/bpf: Fix const qualifier warning in fexit_bpf2bpf.c
Posted by Alexei Starovoitov 1 month ago
On Thu, Mar 5, 2026 at 5:16 PM Menglong Dong <menglong.dong@linux.dev> wrote:
>
> On 2026/3/6 06:21 Varun R Mallya <varunrmallya@gmail.com> write:
> > Building selftests with
> > clang 23.0.0 (6fae863eba8a72cdd82f37e7111a46a70be525e0) triggers
> > the following error:
> >
> >   tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c:117:12:
> >   error: assigning to 'char *' from 'const char *' discards qualifiers
> >   [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
> >
> > The variable `tgt_name` is declared as `char *`, but it stores the
> > result of strstr(prog_name[i], "/"). Since `prog_name[i]` is a
> > `const char *`, the returned pointer should also be treated as
> > const-qualified.
> >
> > Update `tgt_name` to `const char *` to match the type of the underlying
> > string and silence the compiler warning.
> >
> > Signed-off-by: Varun R Mallya <varunrmallya@gmail.com>
> > ---
> >  tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> > index 23d933f1aec6..92c20803ea76 100644
> > --- a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> > +++ b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> > @@ -111,7 +111,7 @@ static void test_fexit_bpf2bpf_common(const char *obj_file,
> >               struct bpf_link_info link_info;
> >               struct bpf_program *pos;
> >               const char *pos_sec_name;
> > -             char *tgt_name;
> > +             const char *tgt_name;
>
> I have been suffering from this build error too. So,
>
> Acked-by: Menglong Dong <menglong.dong@linux.dev>

Looks like this patch was lost. Pls resend.
Re: [PATCH bpf-next] selftests/bpf: Fix const qualifier warning in fexit_bpf2bpf.c
Posted by Alexei Starovoitov 1 month ago
On Thu, Mar 5, 2026 at 5:40 PM Alexei Starovoitov
<alexei.starovoitov@gmail.com> wrote:
>
> On Thu, Mar 5, 2026 at 5:16 PM Menglong Dong <menglong.dong@linux.dev> wrote:
> >
> > On 2026/3/6 06:21 Varun R Mallya <varunrmallya@gmail.com> write:
> > > Building selftests with
> > > clang 23.0.0 (6fae863eba8a72cdd82f37e7111a46a70be525e0) triggers
> > > the following error:
> > >
> > >   tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c:117:12:
> > >   error: assigning to 'char *' from 'const char *' discards qualifiers
> > >   [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
> > >
> > > The variable `tgt_name` is declared as `char *`, but it stores the
> > > result of strstr(prog_name[i], "/"). Since `prog_name[i]` is a
> > > `const char *`, the returned pointer should also be treated as
> > > const-qualified.
> > >
> > > Update `tgt_name` to `const char *` to match the type of the underlying
> > > string and silence the compiler warning.
> > >
> > > Signed-off-by: Varun R Mallya <varunrmallya@gmail.com>
> > > ---
> > >  tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> > > index 23d933f1aec6..92c20803ea76 100644
> > > --- a/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> > > +++ b/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
> > > @@ -111,7 +111,7 @@ static void test_fexit_bpf2bpf_common(const char *obj_file,
> > >               struct bpf_link_info link_info;
> > >               struct bpf_program *pos;
> > >               const char *pos_sec_name;
> > > -             char *tgt_name;
> > > +             const char *tgt_name;
> >
> > I have been suffering from this build error too. So,
> >
> > Acked-by: Menglong Dong <menglong.dong@linux.dev>
>
> Looks like this patch was lost. Pls resend.

Ohh. I see it now. Your reply got delivered before the patch itself
and the patch went to spam.
No need to resend.