Re: [PATCH 1/1] rcu/tree: add emergency pool for headless case

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Apr 03, 2020 at 12:14:19PM -0700, Paul E. McKenney wrote:
> On Fri, Apr 03, 2020 at 07:30:51PM +0200, Uladzislau Rezki (Sony) wrote:
> > Maintain an emergency pool for each CPU with some
> > extra objects. There is read-only sysfs attribute,
> > the name is "rcu_nr_emergency_objs". It reflects
> > the size of the pool. As for now the default value
> > is 3.
> > 
> > The pool is populated when low memory condition is
> > detected. Please note it is only for headless case
> > it means when the regular SLAB is not able to serve
> > any request, the pool is used.
> > 
> > Signed-off-by: Uladzislau Rezki (Sony) <urezki@xxxxxxxxx>
> > ---
> >  kernel/rcu/tree.c | 133 +++++++++++++++++++++++++++++++++-------------
> >  1 file changed, 97 insertions(+), 36 deletions(-)
> > 
> > diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
> > index 5e26145e9ead..f9f1f935ab0b 100644
> > --- a/kernel/rcu/tree.c
> > +++ b/kernel/rcu/tree.c
> > @@ -114,6 +114,14 @@ int rcu_num_lvls __read_mostly = RCU_NUM_LVLS;
> >  int rcu_kfree_nowarn;
> >  module_param(rcu_kfree_nowarn, int, 0444);
> >  
> > +/*
> > + * For headless variant. Under memory pressure an
> > + * emergency pool can be used if the regular SLAB
> > + * is not able to serve some memory for us.
> > + */
> > +int rcu_nr_emergency_objs = 3;
> > +module_param(rcu_nr_emergency_objs, int, 0444);
> 
> Please document this in Documentation/admin-guide/kernel-parameters.txt.
> 
Will do that, Paul!

Thanks for good point :)

--
Vlad Rezki




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux