Commit 8557c86
committed
clocksource: Improve randomness in clocksource_verify_choose_cpus()
The current algorithm of picking a random CPU works OK for dense online
cpumask, but if cpumask is non-dense, the distribution of picked CPUs
is skewed.
For example, on 8-CPU board with CPUs 4-7 offlined, the probability of
selecting CPU 0 is 5/8. Accordingly, cpus 1, 2 and 3 are chosen with
probability 1/8 each. The proper algorithm should pick each online CPU
with probability 1/4.
Switch it to cpumask_random(), which has better statistical
characteristics.
CC: Andrew Morton <[email protected]>
Acked-by: John Stultz <[email protected]>
Reviewed-by: Thomas Gleixner <[email protected]>
Signed-off-by: "Yury Norov [NVIDIA]" <[email protected]>1 parent 012b104 commit 8557c86
1 file changed
+1
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
342 | 342 | | |
343 | 343 | | |
344 | 344 | | |
345 | | - | |
346 | | - | |
347 | | - | |
348 | | - | |
| 345 | + | |
349 | 346 | | |
350 | 347 | | |
351 | 348 | | |
| |||
0 commit comments