On Tue, 20 Dec 2011 13:58:17 -0800 Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > On Mon, 19 Dec 2011 09:01:22 +0900 > KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote: > > > On Fri, 16 Dec 2011 14:28:14 -0800 > > Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > > > > > On Wed, 14 Dec 2011 16:49:22 +0900 > > > KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote: > > > > > > > Because of commit ef6a3c6311, FUSE uses replace_page_cache() instead > > > > of add_to_page_cache(). Then, mem_cgroup_cache_charge() is not > > > > called against FUSE's pages from splice. > > > > > > Speaking of ef6a3c6311 ("mm: add replace_page_cache_page() function"), > > > may I pathetically remind people that it's rather inefficient? > > > > > > http://lkml.indiana.edu/hypermail/linux/kernel/1109.1/00375.html > > > > > > > IIRC, people says inefficient because it uses memcg codes for page-migration > > for fixing up accounting. Now, We added replace-page-cache for memcg in > > memcg-add-mem_cgroup_replace_page_cache-to-fix-lru-issue.patch > > > > So, I think the problem originally mentioned is fixed. > > > > No, the inefficiency in replace_page_cache_page() is still there. Two > identical walks down the radix tree, a pointless decrement then > increment of mapping->nrpages, two writes to page->mapping, an often > pointless decrement then increment of NR_FILE_PAGES, and probably other things. > Hmm, then, replace_page_cache_page() itself has some problem. I'll look into that. Thanks, -Kame -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>