Re: [PATCH mmotm 2.5/4] memcg: disable irq at page cgroup lock (Re:[PATCH -mmotm 3/4] memcg: dirty pages accounting and limitinginfrastructure)
From: KAMEZAWA Hiroyuki
Date: Thu Mar 11 2010 - 00:16:51 EST
On Thu, 11 Mar 2010 13:58:47 +0900
Daisuke Nishimura <nishimura@xxxxxxxxxxxxxxxxx> wrote:
> > I'll consider yet another fix for race in account migration if I can.
> >
> me too.
>
How about this ? Assume that the race is very rare.
1. use trylock when updating statistics.
If trylock fails, don't account it.
2. add PCG_FLAG for all status as
+ PCG_ACCT_FILE_MAPPED, /* page is accounted as file rss*/
+ PCG_ACCT_DIRTY, /* page is dirty */
+ PCG_ACCT_WRITEBACK, /* page is being written back to disk */
+ PCG_ACCT_WRITEBACK_TEMP, /* page is used as temporary buffer for FUSE */
+ PCG_ACCT_UNSTABLE_NFS, /* NFS page not yet committed to the server */
3. At reducing counter, check PCG_xxx flags by
TESTCLEARPCGFLAG()
This is similar to an _used_ method of LRU accounting. And We can think this
method's error-range never go too bad number.
I think this kind of fuzzy accounting is enough for writeback status.
Does anyone need strict accounting ?
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/