diff options
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2014-07-16 07:37:06 -0700 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2014-07-16 10:44:46 -0700 |
commit | 187497fa5e9e9383820d33e48b87f8200a747c2a (patch) | |
tree | 7941e912b1a123cf2213797ca49a70bdfa550778 /lib/idr.c | |
parent | 1823172ab582eb54456fd1354869bb850a1196ba (diff) | |
download | linux-187497fa5e9e9383820d33e48b87f8200a747c2a.tar.bz2 |
rcu: Allow for NULL tick_nohz_full_mask when nohz_full= missing
If there isn't a nohz_full= kernel parameter specified, then
tick_nohz_full_mask can legitimately be NULL. This can cause
problems when RCU's boot code tries to cpumask_or() this value into
rcu_nocb_mask. In addition, if NO_HZ_FULL_ALL=y, there is no point
in doing the cpumask_or() in the first place because this will cause
RCU_NOCB_CPU_ALL=y, which in turn will have all bits already set in
rcu_nocb_mask.
This commit therefore avoids the cpumask_or() if NO_HZ_FULL_ALL=y
and checks for !tick_nohz_full_running otherwise, this latter check
catching cases when there was no nohz_full= kernel parameter specified.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'lib/idr.c')
0 files changed, 0 insertions, 0 deletions