On Fri, Mar 13, 2020 at 4:53 PM Martin KaFai Lau <kafai@xxxxxx> wrote: > > On Fri, Mar 13, 2020 at 04:07:15PM -0700, Andrii Nakryiko wrote: > > Cast void * to long before casting to 32-bit __u32 to avoid compilation > > warning. > > > > Signed-off-by: Andrii Nakryiko <andriin@xxxxxx> > > --- > > tools/testing/selftests/bpf/progs/sockmap_parse_prog.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/tools/testing/selftests/bpf/progs/sockmap_parse_prog.c b/tools/testing/selftests/bpf/progs/sockmap_parse_prog.c > > index a5c6d5903b22..a9c2bdbd841e 100644 > > --- a/tools/testing/selftests/bpf/progs/sockmap_parse_prog.c > > +++ b/tools/testing/selftests/bpf/progs/sockmap_parse_prog.c > > @@ -12,7 +12,7 @@ int bpf_prog1(struct __sk_buff *skb) > > __u32 lport = skb->local_port; > > __u32 rport = skb->remote_port; > > __u8 *d = data; > > - __u32 len = (__u32) data_end - (__u32) data; > I think this line can be removed. "len" is not used. hm... never checked that, I assumed compiler will emit warning about unused variable... v2 without this line is coming... > > > + __u32 len = (__u32)(long)data_end - (__u32)(long)data; > > > int err; > > > > if (data + 10 > data_end) { > > -- > > 2.17.1 > >