Re: [patch 03/11] mm: shmem: do not try to uncharge known swapcache pages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon 09-07-12 13:37:39, Hugh Dickins wrote:
> 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()?

Yes that was exactly my concern.

> 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 cannot find a change that would prevent from that.

> I'd have to think more deeply to answer that, but the charge will
> not go missing.
> 
> Hugh

-- 
Michal Hocko
SUSE Labs
SUSE LINUX s.r.o.
Lihovarska 1060/12
190 00 Praha 9    
Czech Republic

--
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/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]