All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexei Starovoitov <ast@plumgrid.com>
To: Daniel Borkmann <daniel@iogearbox.net>,
	"David S. Miller" <davem@davemloft.net>
Cc: Michael Holzheu <holzheu@linux.vnet.ibm.com>,
	Fengguang Wu <fengguang.wu@intel.com>,
	netdev@vger.kernel.org
Subject: Re: [PATCH net-next] test_bpf: fix sparse warnings
Date: Thu, 14 May 2015 10:18:28 -0700	[thread overview]
Message-ID: <5554D8E4.50500@plumgrid.com> (raw)
In-Reply-To: <5554C8F7.5080002@iogearbox.net>

On 5/14/15 9:10 AM, Daniel Borkmann wrote:
> On 05/14/2015 05:40 AM, Alexei Starovoitov wrote:
>> From: Michael Holzheu <holzheu@linux.vnet.ibm.com>
>>
>> Fix several sparse warnings like:
>> lib/test_bpf.c:1824:25: sparse: constant 4294967295 is so big it is long
>> lib/test_bpf.c:1878:25: sparse: constant 0x0000ffffffff0000 is so big
>> it is long
>>
>> Fixes: cffc642d93f9 ("test_bpf: add 173 new testcases for eBPF")
>> Reported-by: Fengguang Wu <fengguang.wu@intel.com>
>> Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
>> Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
>> ---
>>   lib/test_bpf.c |  122
>> ++++++++++++++++++++++++++++----------------------------
>>   1 file changed, 61 insertions(+), 61 deletions(-)
>>
> ...
>>       {
>>           "ALU_MOV_K: 0x0000ffffffff0000 = 0x00000000ffffffff",
>>           .u.insns_int = {
>> -            BPF_LD_IMM64(R2, 0x0000ffffffff0000),
>> -            BPF_LD_IMM64(R3, 0x00000000ffffffff),
>> +            BPF_LD_IMM64(R2, 0x0000ffffffff0000LL),
>> +            BPF_LD_IMM64(R3, 0x00000000ffffffffLL),
>
> Should have been ULL, no?

why? The data type is derived from the value.
0xffff0000ffffffffLL is unsigned. GCC does the right thing. Here
we're just shutting up sparse.
I actually most of the time use LL as well since it's one character
shorter.

Ex:
  printf("%llx\n", 0xffff0000ffffffffLL >> 32);
  printf("%llx\n", 0xffff0000ffffffffULL >> 32);
  printf("%llx\n", ((long long)0xffff0000ffffffff) >> 32);
  printf("%llx\n", ((unsigned long long)0xffff0000ffffffff) >> 32);
will print:
  ffff0000
  ffff0000
  ffffffffffff0000
  ffff0000

I also think that sparse shouldn't be complaining about this.
The suffix is redundant.

> Anyway, the BPF_LD_IMM64() macro will cast it
> correctly anyway.

it's correct even without LL.
It's not a bugfix. It's 'mute the sparse' patch :)

> Other than that:
>
> Acked-by: Daniel Borkmann <daniel@iogearbox.net>

  reply	other threads:[~2015-05-14 17:18 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-14  3:40 [PATCH net-next] test_bpf: fix sparse warnings Alexei Starovoitov
2015-05-14 16:10 ` Daniel Borkmann
2015-05-14 17:18   ` Alexei Starovoitov [this message]
2015-05-14 18:17     ` Daniel Borkmann
2015-05-15  2:47 ` David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5554D8E4.50500@plumgrid.com \
    --to=ast@plumgrid.com \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=fengguang.wu@intel.com \
    --cc=holzheu@linux.vnet.ibm.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.