* Srikar Dronamraju <sri...@linux.vnet.ibm.com> wrote:

> > > > Which in itself is confusing: WTH do we have a generic switch called 
> > > > 'NUMA' and 
> > > > then have it disabled?
> > > 
> > > NUMA feature gets enabled on multi-node boxes because of
> > > 
> > > start_kernel() -> numa_policy_init() -> check_numabalancing_enable() ->
> > >  set_numabalancing_state() -> sched_feat_set("NUMA");
> > 
> > Ugh, that is nonsensical!
> > 
> > If CONFIG_SCHED_DEBUG is disabled then sched_features is a constant value:
> > 
> >   # define const_debug const
> > 
> >   ...
> > 
> >   extern const_debug unsigned int sysctl_sched_features;
> > 
> > sched_features are _only_ meant for debugging. They turn into an 
> > unchangeable set 
> > of features when SCHED_DEBUG is disabled - and that is very much by design.
> > 
> > The whole set_numabalancing_state() muck needs to be fixed.
> 
> Would something like the below suffice. If yes I can send out a formal
> patch for the same. Here we are moving numabalancing_enabled variable to
> common i.e for both CONFIG_SCHED_DEBUG and !CONFIG_SCHED_DEBUG.
> 
> Also removing sched_feat_numa because its no more getting used.
> numabalancing_enabled is already being used similarly in task_tick_fair
> and task_numa_fault.
> 
> -------------->8------------------------------------------------------8<--------------
> 
>  kernel/sched/core.c  | 5 +++--
>  kernel/sched/fair.c  | 2 +-
>  kernel/sched/sched.h | 6 ------
>  3 files changed, 4 insertions(+), 9 deletions(-)
> 
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index 78b4bad10..69ccbda4 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -2059,17 +2059,18 @@ static void __sched_fork(unsigned long clone_flags, 
> struct task_struct *p)
>  }
>  
>  #ifdef CONFIG_NUMA_BALANCING
> +__read_mostly bool numabalancing_enabled;

s/numabalancing_enabled/sched_numa_balancing

Other than that this would be OK.

Thanks,

        Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to