diff mbox series

selftests/bpf: Fix incorrect parameters in NULL pointer checking

Message ID 20240820023447.29002-1-hao.ge@linux.dev (mailing list archive)
State Accepted
Commit c264487e5410e5a72db8a414566ab7d144223e6c
Headers show
Series selftests/bpf: Fix incorrect parameters in NULL pointer checking | expand

Commit Message

Hao Ge Aug. 20, 2024, 2:34 a.m. UTC
From: Hao Ge <gehao@kylinos.cn>

Smatch reported the following warning:
    ./tools/testing/selftests/bpf/testing_helpers.c:455 get_xlated_program()
    warn: variable dereferenced before check 'buf' (see line 454)

It seems correct,so let's modify it based on it's suggestion.

Actually,commit b23ed4d74c4d ("selftests/bpf: Fix invalid pointer
check in get_xlated_program()") fixed an issue in the test_verifier.c
once,but it was reverted this time.

Let's solve this issue with the minimal changes possible.

Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/all/1eb3732f-605a-479d-ba64-cd14250cbf91@stanley.mountain/
Fixes: b4b7a4099b8c ("selftests/bpf: Factor out get_xlated_program() helper")
Signed-off-by: Hao Ge <gehao@kylinos.cn>
---
 tools/testing/selftests/bpf/testing_helpers.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Yonghong Song Aug. 21, 2024, 9:03 p.m. UTC | #1
On 8/19/24 7:34 PM, Hao Ge wrote:
> From: Hao Ge <gehao@kylinos.cn>
>
> Smatch reported the following warning:
>      ./tools/testing/selftests/bpf/testing_helpers.c:455 get_xlated_program()
>      warn: variable dereferenced before check 'buf' (see line 454)
>
> It seems correct,so let's modify it based on it's suggestion.
>
> Actually,commit b23ed4d74c4d ("selftests/bpf: Fix invalid pointer
> check in get_xlated_program()") fixed an issue in the test_verifier.c
> once,but it was reverted this time.
>
> Let's solve this issue with the minimal changes possible.
>
> Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
> Closes: https://lore.kernel.org/all/1eb3732f-605a-479d-ba64-cd14250cbf91@stanley.mountain/
> Fixes: b4b7a4099b8c ("selftests/bpf: Factor out get_xlated_program() helper")
> Signed-off-by: Hao Ge <gehao@kylinos.cn>

In the future, please change subject '[PATCH] ...' to '[PATCH bpf-next] ...'
so CI can properly test it.

Acked-by: Yonghong Song <yonghong.song@linux.dev>
Dan Carpenter Aug. 21, 2024, 9:50 p.m. UTC | #2
On Wed, Aug 21, 2024 at 02:03:17PM -0700, Yonghong Song wrote:
> 
> On 8/19/24 7:34 PM, Hao Ge wrote:
> > From: Hao Ge <gehao@kylinos.cn>
> > 
> > Smatch reported the following warning:
> >      ./tools/testing/selftests/bpf/testing_helpers.c:455 get_xlated_program()
> >      warn: variable dereferenced before check 'buf' (see line 454)
> > 
> > It seems correct,so let's modify it based on it's suggestion.
> > 
> > Actually,commit b23ed4d74c4d ("selftests/bpf: Fix invalid pointer
> > check in get_xlated_program()") fixed an issue in the test_verifier.c
> > once,but it was reverted this time.
> > 
> > Let's solve this issue with the minimal changes possible.
> > 
> > Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
> > Closes: https://lore.kernel.org/all/1eb3732f-605a-479d-ba64-cd14250cbf91@stanley.mountain/
> > Fixes: b4b7a4099b8c ("selftests/bpf: Factor out get_xlated_program() helper")
> > Signed-off-by: Hao Ge <gehao@kylinos.cn>
> 
> In the future, please change subject '[PATCH] ...' to '[PATCH bpf-next] ...'
> so CI can properly test it.

It feels like there should be a technical solution to this.  The CI system is
something on AWS and it's too expensive to just check every patch that's sent to
the bpf list?  My understanding is that there are only two bpf trees.

	if [ "$FIXES_HASH" == "" ] ; then
		TREE=next
	elif git merge-base --is-ancestor $FIXES_HASH origin/master ; then
		TREE=linus
	else
		TREE=next
	fi

These days the zero day bot people are checking around a thousand git trees.
They pull emails off the various lists and apply them to the right places.  It's
a doable thing.

regards,
dan carpenter
Alexei Starovoitov Aug. 21, 2024, 10:07 p.m. UTC | #3
On Wed, Aug 21, 2024 at 2:50 PM Dan Carpenter <dan.carpenter@linaro.org> wrote:
>
> On Wed, Aug 21, 2024 at 02:03:17PM -0700, Yonghong Song wrote:
> >
> > On 8/19/24 7:34 PM, Hao Ge wrote:
> > > From: Hao Ge <gehao@kylinos.cn>
> > >
> > > Smatch reported the following warning:
> > >      ./tools/testing/selftests/bpf/testing_helpers.c:455 get_xlated_program()
> > >      warn: variable dereferenced before check 'buf' (see line 454)
> > >
> > > It seems correct,so let's modify it based on it's suggestion.
> > >
> > > Actually,commit b23ed4d74c4d ("selftests/bpf: Fix invalid pointer
> > > check in get_xlated_program()") fixed an issue in the test_verifier.c
> > > once,but it was reverted this time.
> > >
> > > Let's solve this issue with the minimal changes possible.
> > >
> > > Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
> > > Closes: https://lore.kernel.org/all/1eb3732f-605a-479d-ba64-cd14250cbf91@stanley.mountain/
> > > Fixes: b4b7a4099b8c ("selftests/bpf: Factor out get_xlated_program() helper")
> > > Signed-off-by: Hao Ge <gehao@kylinos.cn>
> >
> > In the future, please change subject '[PATCH] ...' to '[PATCH bpf-next] ...'
> > so CI can properly test it.
>
> It feels like there should be a technical solution to this.  The CI system is
> something on AWS and it's too expensive to just check every patch that's sent to
> the bpf list?  My understanding is that there are only two bpf trees.
>
>         if [ "$FIXES_HASH" == "" ] ; then
>                 TREE=next
>         elif git merge-base --is-ancestor $FIXES_HASH origin/master ; then
>                 TREE=linus
>         else
>                 TREE=next
>         fi
>
> These days the zero day bot people are checking around a thousand git trees.
> They pull emails off the various lists and apply them to the right places.  It's
> a doable thing.

Dan,

Various people pointed out that you need to use the proper subject in
the patches.
You clearly knew that rule and yet you ignored it,
and worse still you keep coming up with these excuses.
Don't be surprised that people who are supposed to review your patches
will take a long time to reply or "forget" about them as you "forget"
about patch submission rules.
Dan Carpenter Aug. 21, 2024, 10:31 p.m. UTC | #4
On Wed, Aug 21, 2024 at 03:07:27PM -0700, Alexei Starovoitov wrote:
> On Wed, Aug 21, 2024 at 2:50 PM Dan Carpenter <dan.carpenter@linaro.org> wrote:
> >
> > On Wed, Aug 21, 2024 at 02:03:17PM -0700, Yonghong Song wrote:
> > >
> > > On 8/19/24 7:34 PM, Hao Ge wrote:
> > > > From: Hao Ge <gehao@kylinos.cn>
> > > >
> > > > Smatch reported the following warning:
> > > >      ./tools/testing/selftests/bpf/testing_helpers.c:455 get_xlated_program()
> > > >      warn: variable dereferenced before check 'buf' (see line 454)
> > > >
> > > > It seems correct,so let's modify it based on it's suggestion.
> > > >
> > > > Actually,commit b23ed4d74c4d ("selftests/bpf: Fix invalid pointer
> > > > check in get_xlated_program()") fixed an issue in the test_verifier.c
> > > > once,but it was reverted this time.
> > > >
> > > > Let's solve this issue with the minimal changes possible.
> > > >
> > > > Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
> > > > Closes: https://lore.kernel.org/all/1eb3732f-605a-479d-ba64-cd14250cbf91@stanley.mountain/
> > > > Fixes: b4b7a4099b8c ("selftests/bpf: Factor out get_xlated_program() helper")
> > > > Signed-off-by: Hao Ge <gehao@kylinos.cn>
> > >
> > > In the future, please change subject '[PATCH] ...' to '[PATCH bpf-next] ...'
> > > so CI can properly test it.
> >
> > It feels like there should be a technical solution to this.  The CI system is
> > something on AWS and it's too expensive to just check every patch that's sent to
> > the bpf list?  My understanding is that there are only two bpf trees.
> >
> >         if [ "$FIXES_HASH" == "" ] ; then
> >                 TREE=next
> >         elif git merge-base --is-ancestor $FIXES_HASH origin/master ; then
> >                 TREE=linus
> >         else
> >                 TREE=next
> >         fi
> >
> > These days the zero day bot people are checking around a thousand git trees.
> > They pull emails off the various lists and apply them to the right places.  It's
> > a doable thing.
> 
> Dan,
> 
> Various people pointed out that you need to use the proper subject in
> the patches.
> You clearly knew that rule and yet you ignored it,
> and worse still you keep coming up with these excuses.
> Don't be surprised that people who are supposed to review your patches
> will take a long time to reply or "forget" about them as you "forget"
> about patch submission rules.

You're emailing the wrong person.  This isn't my patch.  I don't send BPF
patches.

regards,
dan carpenter
Hao Ge Aug. 23, 2024, 7:04 a.m. UTC | #5
Hi Yonghong


Thank you very much for taking the time to review my patch.


On 8/22/24 05:03, Yonghong Song wrote:
>
> On 8/19/24 7:34 PM, Hao Ge wrote:
>> From: Hao Ge <gehao@kylinos.cn>
>>
>> Smatch reported the following warning:
>>      ./tools/testing/selftests/bpf/testing_helpers.c:455 
>> get_xlated_program()
>>      warn: variable dereferenced before check 'buf' (see line 454)
>>
>> It seems correct,so let's modify it based on it's suggestion.
>>
>> Actually,commit b23ed4d74c4d ("selftests/bpf: Fix invalid pointer
>> check in get_xlated_program()") fixed an issue in the test_verifier.c
>> once,but it was reverted this time.
>>
>> Let's solve this issue with the minimal changes possible.
>>
>> Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
>> Closes: 
>> https://lore.kernel.org/all/1eb3732f-605a-479d-ba64-cd14250cbf91@stanley.mountain/
>> Fixes: b4b7a4099b8c ("selftests/bpf: Factor out get_xlated_program() 
>> helper")
>> Signed-off-by: Hao Ge <gehao@kylinos.cn>
>
> In the future, please change subject '[PATCH] ...' to '[PATCH 
> bpf-next] ...'
> so CI can properly test it.
>

OK, I understand. I will follow this rule in the future.


> Acked-by: Yonghong Song <yonghong.song@linux.dev>
>
Hao Ge Aug. 23, 2024, 7:12 a.m. UTC | #6
Hi Dan and Alexei


I apologize for any inconvenience my mistake may have caused to both of you.


On 8/22/24 06:31, Dan Carpenter wrote:
> On Wed, Aug 21, 2024 at 03:07:27PM -0700, Alexei Starovoitov wrote:
>> On Wed, Aug 21, 2024 at 2:50 PM Dan Carpenter <dan.carpenter@linaro.org> wrote:
>>> On Wed, Aug 21, 2024 at 02:03:17PM -0700, Yonghong Song wrote:
>>>> On 8/19/24 7:34 PM, Hao Ge wrote:
>>>>> From: Hao Ge <gehao@kylinos.cn>
>>>>>
>>>>> Smatch reported the following warning:
>>>>>       ./tools/testing/selftests/bpf/testing_helpers.c:455 get_xlated_program()
>>>>>       warn: variable dereferenced before check 'buf' (see line 454)
>>>>>
>>>>> It seems correct,so let's modify it based on it's suggestion.
>>>>>
>>>>> Actually,commit b23ed4d74c4d ("selftests/bpf: Fix invalid pointer
>>>>> check in get_xlated_program()") fixed an issue in the test_verifier.c
>>>>> once,but it was reverted this time.
>>>>>
>>>>> Let's solve this issue with the minimal changes possible.
>>>>>
>>>>> Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
>>>>> Closes: https://lore.kernel.org/all/1eb3732f-605a-479d-ba64-cd14250cbf91@stanley.mountain/
>>>>> Fixes: b4b7a4099b8c ("selftests/bpf: Factor out get_xlated_program() helper")
>>>>> Signed-off-by: Hao Ge <gehao@kylinos.cn>
>>>> In the future, please change subject '[PATCH] ...' to '[PATCH bpf-next] ...'
>>>> so CI can properly test it.
>>> It feels like there should be a technical solution to this.  The CI system is
>>> something on AWS and it's too expensive to just check every patch that's sent to
>>> the bpf list?  My understanding is that there are only two bpf trees.
>>>
>>>          if [ "$FIXES_HASH" == "" ] ; then
>>>                  TREE=next
>>>          elif git merge-base --is-ancestor $FIXES_HASH origin/master ; then
>>>                  TREE=linus
>>>          else
>>>                  TREE=next
>>>          fi
>>>
>>> These days the zero day bot people are checking around a thousand git trees.
>>> They pull emails off the various lists and apply them to the right places.  It's
>>> a doable thing.
>> Dan,
>>
>> Various people pointed out that you need to use the proper subject in
>> the patches.
>> You clearly knew that rule and yet you ignored it,
>> and worse still you keep coming up with these excuses.
>> Don't be surprised that people who are supposed to review your patches
>> will take a long time to reply or "forget" about them as you "forget"
>> about patch submission rules.


Perhaps it was referring to me? Regardless, I will reflect on myself and 
make improvements.


> You're emailing the wrong person.  This isn't my patch.  I don't send BPF
> patches.
>
> regards,
> dan carpenter
diff mbox series

Patch

diff --git a/tools/testing/selftests/bpf/testing_helpers.c b/tools/testing/selftests/bpf/testing_helpers.c
index d5379a0e6da8..34dfea295c8e 100644
--- a/tools/testing/selftests/bpf/testing_helpers.c
+++ b/tools/testing/selftests/bpf/testing_helpers.c
@@ -451,7 +451,7 @@  int get_xlated_program(int fd_prog, struct bpf_insn **buf, __u32 *cnt)
 
 	*cnt = xlated_prog_len / buf_element_size;
 	*buf = calloc(*cnt, buf_element_size);
-	if (!buf) {
+	if (!*buf) {
 		perror("can't allocate xlated program buffer");
 		return -ENOMEM;
 	}