Re: [RFC][PATCH] memcg remove css_get/put per pages v2

From: KAMEZAWA Hiroyuki
Date: Fri Jun 11 2010 - 02:26:23 EST


On Fri, 11 Jun 2010 11:41:02 +0530
Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:

> * KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> [2010-06-09 15:59:40]:
>
> > + if (consume_stock(mem)) {
> > + /*
> > + * It seems dagerous to access memcg without css_get().
> > + * But considering how consume_stok works, it's not
> > + * necessary. If consume_stock success, some charges
> > + * from this memcg are cached on this cpu. So, we
> > + * don't need to call css_get()/css_tryget() before
> > + * calling consume_stock().
> > + */
> > + rcu_read_unlock();
> > + goto done;
> > + }
> > + if (!css_tryget(&mem->css)) {
>
> If tryget fails, can one assume that this due to a race and the mem is
> about to be freed?
>
Yes. it's due to a race and "mem" will be no longer used.
This does the same thing which try_get_mem_cgrou_from_mm() does now.

Thanks,
-Kame

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