lkml.org 
[lkml]   [2014]   [Oct]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH tip/core/rcu 2/7] rcu: Move RCU_BOOST variable declarations, eliminating #ifdef
    Date
    From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>

    There are some RCU_BOOST-specific per-CPU variable declarations that
    are needlessly defined under #ifdef in kernel/rcu/tree.c. This commit
    therefore moves these declarations into a pre-existing #ifdef in
    kernel/rcu/tree_plugin.h.

    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
    ---
    kernel/rcu/tree.c | 13 -------------
    kernel/rcu/tree_plugin.h | 17 +++++++++++++++--
    2 files changed, 15 insertions(+), 15 deletions(-)

    diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
    index 9815447d22e0..7f73c5edf8cf 100644
    --- a/kernel/rcu/tree.c
    +++ b/kernel/rcu/tree.c
    @@ -152,19 +152,6 @@ EXPORT_SYMBOL_GPL(rcu_scheduler_active);
    */
    static int rcu_scheduler_fully_active __read_mostly;

    -#ifdef CONFIG_RCU_BOOST
    -
    -/*
    - * Control variables for per-CPU and per-rcu_node kthreads. These
    - * handle all flavors of RCU.
    - */
    -static DEFINE_PER_CPU(struct task_struct *, rcu_cpu_kthread_task);
    -DEFINE_PER_CPU(unsigned int, rcu_cpu_kthread_status);
    -DEFINE_PER_CPU(unsigned int, rcu_cpu_kthread_loops);
    -DEFINE_PER_CPU(char, rcu_cpu_has_work);
    -
    -#endif /* #ifdef CONFIG_RCU_BOOST */
    -
    static void rcu_boost_kthread_setaffinity(struct rcu_node *rnp, int outgoingcpu);
    static void invoke_rcu_core(void);
    static void invoke_rcu_callbacks(struct rcu_state *rsp, struct rcu_data *rdp);
    diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h
    index c1d7f27bd38f..357891104ea0 100644
    --- a/kernel/rcu/tree_plugin.h
    +++ b/kernel/rcu/tree_plugin.h
    @@ -33,11 +33,24 @@
    #define RCU_KTHREAD_PRIO 1

    #ifdef CONFIG_RCU_BOOST
    +
    #include "../locking/rtmutex_common.h"
    #define RCU_BOOST_PRIO CONFIG_RCU_BOOST_PRIO
    -#else
    +
    +/*
    + * Control variables for per-CPU and per-rcu_node kthreads. These
    + * handle all flavors of RCU.
    + */
    +static DEFINE_PER_CPU(struct task_struct *, rcu_cpu_kthread_task);
    +DEFINE_PER_CPU(unsigned int, rcu_cpu_kthread_status);
    +DEFINE_PER_CPU(unsigned int, rcu_cpu_kthread_loops);
    +DEFINE_PER_CPU(char, rcu_cpu_has_work);
    +
    +#else /* #ifdef CONFIG_RCU_BOOST */
    +
    #define RCU_BOOST_PRIO RCU_KTHREAD_PRIO
    -#endif
    +
    +#endif /* #else #ifdef CONFIG_RCU_BOOST */

    #ifdef CONFIG_RCU_NOCB_CPU
    static cpumask_var_t rcu_nocb_mask; /* CPUs to have callbacks offloaded. */
    --
    1.8.1.5


    \
     
     \ /
      Last update: 2014-10-28 23:41    [W:4.938 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site