lkml.org 
[lkml]   [2012]   [Jul]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 03/11] mm: shmem: do not try to uncharge known swapcache pages
On Mon, 9 Jul 2012, Michal Hocko wrote:
>
> Maybe I am missing something but who does the uncharge from:
> shmem_unuse
> mem_cgroup_cache_charge
> shmem_unuse_inode
> shmem_add_to_page_cache

There isn't any special uncharge for shmem_unuse(): once the swapcache
page is matched up with its memcg, it will get uncharged by one of the
usual routes to swapcache_free() when the page is freed: maybe in the
call from __remove_mapping(), maybe when free_page_and_swap_cache()
ends up calling it.

Perhaps you're worrying about error (or unfound) paths in shmem_unuse()?
By the time we make the charge, we know for sure that it's a shmem page,
and make the charge appropriately; in racy cases it might get uncharged
again in the delete_from_swap_cache(). Can the unfound case occur these
days? I'd have to think more deeply to answer that, but the charge will
not go missing.

Hugh


\
 
 \ /
  Last update: 2012-07-09 23:21    [W:1.421 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site