samples/bpf: silence shift wrapping warning
Subsystems (4)
PATCH 1/1 samples/bpf: silence shift wrapping warning
max_key is a value in the 0-63 range, so on 32 bit systems the shift could wrap.
samples/bpf/lwt_len_hist_user.c +1 -1
@@ -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); }
Quoted 4 lines · Dan Carpenter
max_keyis a value in the 0-63 range, so on 32 bit systems the shift could wrap.Signed-off-by Dan Carpenter <[email protected]>
Looks fine. I think 'net-next' is ok.
Quoted 13 lines
samples/bpf/lwt_len_hist_user.c +1
-1@@ -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); }
Em Sun, Jan 22, 2017 at 02:51:25PM -0800, Alexei Starovoitov escreveu:
Quoted 7 lines · Dan Carpenter
Quoted 4 lines
max_keyis a value in the 0-63 range, so on 32 bit systems the shift could wrap.Signed-off-by Dan Carpenter <[email protected]>Looks fine. I think 'net-next' is ok.
I could process these patches, if that would help,
- Arnaldo
Quoted 15 lines
Quoted 13 lines
samples/bpf/lwt_len_hist_user.c +1
-1@@ -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); }
From: Alexei Starovoitov
Quoted 11 lines
Sent: 22 January 2017 22:51
Quoted 4 lines · Dan Carpenter
max_keyis a value in the 0-63 range, so on 32 bit systems the shift could wrap.Signed-off-by Dan Carpenter <[email protected]>Looks fine. I think 'net-next' is ok.
Quoted 12 lines
samples/bpf/lwt_len_hist_user.c int main(int argc, char **argv) · line 73
Quoted 12 lines
samples/bpf/lwt_len_hist_user.c +1
-1@@ -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