[v2] selftests/bpf: Fix unsigned expression compared with zero

Message ID 20221105102552.80052-1-tegongkang@gmail.com
State New
Headers
Series [v2] selftests/bpf: Fix unsigned expression compared with zero |

Commit Message

Kang Minchul Nov. 5, 2022, 10:25 a.m. UTC
  Variable ret is compared with zero even though it was set as u32.
So u32 to int conversion is needed.

Signed-off-by: Kang Minchul <tegongkang@gmail.com>
---
 tools/testing/selftests/bpf/xskxceiver.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Comments

Randy Dunlap Nov. 5, 2022, 4:16 p.m. UTC | #1
Hi--

On 11/5/22 03:25, Kang Minchul wrote:
> Variable ret is compared with zero even though it was set as u32.

It's OK to compare a u32 == to zero, but 'ret' is compared to < 0,
which it cannot be. Better explanation here would be good.
Thanks.

> So u32 to int conversion is needed.
> 
> Signed-off-by: Kang Minchul <tegongkang@gmail.com>
> ---
>  tools/testing/selftests/bpf/xskxceiver.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/testing/selftests/bpf/xskxceiver.c b/tools/testing/selftests/bpf/xskxceiver.c
> index 681a5db80dae..162d3a516f2c 100644
> --- a/tools/testing/selftests/bpf/xskxceiver.c
> +++ b/tools/testing/selftests/bpf/xskxceiver.c
> @@ -1006,7 +1006,8 @@ static int __send_pkts(struct ifobject *ifobject, u32 *pkt_nb, struct pollfd *fd
>  {
>  	struct xsk_socket_info *xsk = ifobject->xsk;
>  	bool use_poll = ifobject->use_poll;
> -	u32 i, idx = 0, ret, valid_pkts = 0;
> +	u32 i, idx = 0, valid_pkts = 0;
> +	int ret;
>  
>  	while (xsk_ring_prod__reserve(&xsk->tx, BATCH_SIZE, &idx) < BATCH_SIZE) {
>  		if (use_poll) {
  
Kang Minchul Nov. 5, 2022, 4:21 p.m. UTC | #2
2022년 11월 6일 (일) 오전 1:16, Randy Dunlap <rdunlap@infradead.org>님이 작성:
>
> Hi--
>
> On 11/5/22 03:25, Kang Minchul wrote:
> > Variable ret is compared with zero even though it was set as u32.
>
> It's OK to compare a u32 == to zero, but 'ret' is compared to < 0,
> which it cannot be. Better explanation here would be good.
> Thanks.
> ~Randy

Thanks for your kind feedback!
I guess I have to change the message more precisely.
I'll send the amended patch (PATCH v3) as you mentioned.

Regards,

Kang Minchul
  

Patch

diff --git a/tools/testing/selftests/bpf/xskxceiver.c b/tools/testing/selftests/bpf/xskxceiver.c
index 681a5db80dae..162d3a516f2c 100644
--- a/tools/testing/selftests/bpf/xskxceiver.c
+++ b/tools/testing/selftests/bpf/xskxceiver.c
@@ -1006,7 +1006,8 @@  static int __send_pkts(struct ifobject *ifobject, u32 *pkt_nb, struct pollfd *fd
 {
 	struct xsk_socket_info *xsk = ifobject->xsk;
 	bool use_poll = ifobject->use_poll;
-	u32 i, idx = 0, ret, valid_pkts = 0;
+	u32 i, idx = 0, valid_pkts = 0;
+	int ret;
 
 	while (xsk_ring_prod__reserve(&xsk->tx, BATCH_SIZE, &idx) < BATCH_SIZE) {
 		if (use_poll) {