[PATCH] perf kwork: Remove unreachable judgments

Feng Yang posted 1 patch 11 months ago
tools/perf/util/bpf_skel/kwork_trace.bpf.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] perf kwork: Remove unreachable judgments
Posted by Feng Yang 11 months ago
From: Feng Yang <yangfeng@kylinos.cn>

When s2[i] = '\0', if s1[i] != '\0', it will be judged by ret,
and if s1[i] = '\0', it will be judegd by !s1[i].
So in reality, s2 [i] will never make a judgment

Signed-off-by: Feng Yang <yangfeng@kylinos.cn>
---
 tools/perf/util/bpf_skel/kwork_trace.bpf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/bpf_skel/kwork_trace.bpf.c b/tools/perf/util/bpf_skel/kwork_trace.bpf.c
index cbd79bc4b330..9ce9c8dddc4b 100644
--- a/tools/perf/util/bpf_skel/kwork_trace.bpf.c
+++ b/tools/perf/util/bpf_skel/kwork_trace.bpf.c
@@ -80,7 +80,7 @@ static __always_inline int local_strncmp(const char *s1,
 
 	for (i = 0; i < sz; i++) {
 		ret = (unsigned char)s1[i] - (unsigned char)s2[i];
-		if (ret || !s1[i] || !s2[i])
+		if (ret || !s1[i])
 			break;
 	}
 
-- 
2.43.0
Re: [PATCH] perf kwork: Remove unreachable judgments
Posted by Namhyung Kim 10 months, 3 weeks ago
On Fri, 14 Mar 2025 11:10:13 +0800, Feng Yang wrote:
> When s2[i] = '\0', if s1[i] != '\0', it will be judged by ret,
> and if s1[i] = '\0', it will be judegd by !s1[i].
> So in reality, s2 [i] will never make a judgment
> 
> 
Applied to perf-tools-next, thanks!

Best regards,
Namhyung
Re: [PATCH] perf kwork: Remove unreachable judgments
Posted by Ian Rogers 10 months, 3 weeks ago
On Thu, Mar 13, 2025 at 8:10 PM Feng Yang <yangfeng59949@163.com> wrote:
>
> From: Feng Yang <yangfeng@kylinos.cn>
>
> When s2[i] = '\0', if s1[i] != '\0', it will be judged by ret,
> and if s1[i] = '\0', it will be judegd by !s1[i].
> So in reality, s2 [i] will never make a judgment

Sgtm. Out of curiosity, was this tripping a compiler warning? If so,
could you provide the details?

Thanks,
Ian

> Signed-off-by: Feng Yang <yangfeng@kylinos.cn>
> ---
>  tools/perf/util/bpf_skel/kwork_trace.bpf.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/bpf_skel/kwork_trace.bpf.c b/tools/perf/util/bpf_skel/kwork_trace.bpf.c
> index cbd79bc4b330..9ce9c8dddc4b 100644
> --- a/tools/perf/util/bpf_skel/kwork_trace.bpf.c
> +++ b/tools/perf/util/bpf_skel/kwork_trace.bpf.c
> @@ -80,7 +80,7 @@ static __always_inline int local_strncmp(const char *s1,
>
>         for (i = 0; i < sz; i++) {
>                 ret = (unsigned char)s1[i] - (unsigned char)s2[i];
> -               if (ret || !s1[i] || !s2[i])
> +               if (ret || !s1[i])
>                         break;
>         }
>
> --
> 2.43.0
>
Re: [PATCH] perf kwork: Remove unreachable judgments
Posted by Feng Yang 10 months, 3 weeks ago
On Mon, 17 Mar 2025 08:44:45 -0700 Ian Rogers <irogers@google.com> wrote:
> 
> On Thu, Mar 13, 2025 at 8:10 PM Feng Yang <yangfeng59949@163.com> wrote:
> >
> > From: Feng Yang <yangfeng@kylinos.cn>
> >
> > When s2[i] = '\0', if s1[i] != '\0', it will be judged by ret,
> > and if s1[i] = '\0', it will be judegd by !s1[i].
> > So in reality, s2 [i] will never make a judgment
> 
> Sgtm. Out of curiosity, was this tripping a compiler warning? If so,
> could you provide the details?
> 
> Thanks,
> Ian

There was no warning during compilation,
I just accidentally discovered it while testing and analyzing this code.

Feng
Re: [PATCH] perf kwork: Remove unreachable judgments
Posted by Ian Rogers 10 months, 3 weeks ago
On Mon, Mar 17, 2025 at 7:17 PM Feng Yang <yangfeng59949@163.com> wrote:
>
> On Mon, 17 Mar 2025 08:44:45 -0700 Ian Rogers <irogers@google.com> wrote:
> >
> > On Thu, Mar 13, 2025 at 8:10 PM Feng Yang <yangfeng59949@163.com> wrote:
> > >
> > > From: Feng Yang <yangfeng@kylinos.cn>
> > >
> > > When s2[i] = '\0', if s1[i] != '\0', it will be judged by ret,
> > > and if s1[i] = '\0', it will be judegd by !s1[i].
> > > So in reality, s2 [i] will never make a judgment
> >
> > Sgtm. Out of curiosity, was this tripping a compiler warning? If so,
> > could you provide the details?
> >
> > Thanks,
> > Ian
>
> There was no warning during compilation,
> I just accidentally discovered it while testing and analyzing this code.

Thanks!
Reviewed-by: Ian Rogers <irogers@google.com>

Ian