lkml.org 
[lkml]   [2009]   [Sep]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [mmotm][BUGFIX][PATCH] memcg: fix softlimit css refcnt handling(yet another one)
* KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> [2009-09-07 09:49:12]:

> > From: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
> >
> > refcount of the "victim" should be decremented before exiting the loop.
> >
> > Signed-off-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
> Nice!
>
> Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
>
> > ---
> > mm/memcontrol.c | 8 ++++++--
> > 1 files changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> > index ac51294..011aba6 100644
> > --- a/mm/memcontrol.c
> > +++ b/mm/memcontrol.c
> > @@ -1133,8 +1133,10 @@ static int mem_cgroup_hierarchical_reclaim(struct mem_cgroup *root_mem,
> > * anything, it might because there are
> > * no reclaimable pages under this hierarchy
> > */
> > - if (!check_soft || !total)
> > + if (!check_soft || !total) {
> > + css_put(&victim->css);
> > break;
> > + }
> > /*
> > * We want to do more targetted reclaim.
> > * excess >> 2 is not to excessive so as to
> > @@ -1142,8 +1144,10 @@ static int mem_cgroup_hierarchical_reclaim(struct mem_cgroup *root_mem,
> > * coming back to reclaim from this cgroup
> > */
> > if (total >= (excess >> 2) ||
> > - (loop > MEM_CGROUP_MAX_RECLAIM_LOOPS))
> > + (loop > MEM_CGROUP_MAX_RECLAIM_LOOPS)) {
> > + css_put(&victim->css);
> > break;
> > + }
> > }
> > }
> > if (!mem_cgroup_local_usage(&victim->stat)) {

Good catch! Sorry for the late response I've been away


Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com>


--
Balbir


\
 
 \ /
  Last update: 2009-09-07 06:55    [W:0.037 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site