• Paul E. McKenney's avatar
    rcu: Fix attempt to avoid unsolicited offloading of callbacks · f4579fc5
    Paul E. McKenney authored
    Commit b58cc46c (rcu: Don't offload callbacks unless specifically
    requested) failed to adjust the callback lists of the CPUs that are
    known to be no-CBs CPUs only because they are also nohz_full= CPUs.
    This failure can result in callbacks that are posted during early boot
    getting stranded on nxtlist for CPUs whose no-CBs property becomes
    apparent late, and there can also be spurious warnings about offline
    CPUs posting callbacks.
    
    This commit fixes these problems by adding an early-boot rcu_init_nohz()
    that properly initializes the no-CBs CPUs.
    
    Note that kernels built with CONFIG_RCU_NOCB_CPU_ALL=y or with
    CONFIG_RCU_NOCB_CPU=n do not exhibit this bug.  Neither do kernels
    booted without the nohz_full= boot parameter.
    Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    Reviewed-by: default avatarPranith Kumar <bobby.prani@gmail.com>
    Tested-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
    f4579fc5
Kconfig 62.5 KB