RE: [patch] samples/bpf: silence shift wrapping warning

David Laight
2017-01-25T11:08:51Z

From: Alexei Starovoitov
> Sent: 22 January 2017 22:51
> On Sat, Jan 21, 2017 at 07:51:43AM +0300, Dan Carpenter wrote:
> > max_key is a value in the 0-63 range, so on 32 bit systems the shift
> > could wrap.
> >
> > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> Looks fine. I think 'net-next' is ok.
>
> Acked-by: Alexei Starovoitov <ast@kernel.org>
>
> > diff --git a/samples/bpf/lwt_len_hist_user.c b/samples/bpf/lwt_len_hist_user.c
> > index ec8f3bb..bd06eef 100644
> > --- a/samples/bpf/lwt_len_hist_user.c
> > +++ b/samples/bpf/lwt_len_hist_user.c
> > @@ -68,7 +68,7 @@ int main(int argc, char **argv)
> > for (i = 1; i <= max_key + 1; i++) {
> > stars(starstr, data[i - 1], max_value, MAX_STARS);
> > printf("%8ld -> %-8ld : %-8ld |%-*s|\n",
> > - (1l << i) >> 1, (1l << i) - 1, data[i - 1],
> > + (1ULL << i) >> 1, (1ULL << i) - 1, data[i - 1],
> > MAX_STARS, starstr);
> > }

The format effectors are wrong on 32bit systems.

David