(2013/03/06 17:30), Glauber Costa wrote: > On 03/06/2013 04:27 AM, Kamezawa Hiroyuki wrote: >> (2013/03/05 22:10), Glauber Costa wrote: >>> + case _MEMSWAP: { >>> + struct sysinfo i; >>> + si_swapinfo(&i); >>> + >>> + return ((memcg_read_root_rss() + >>> + atomic_long_read(&vm_stat[NR_FILE_PAGES])) << PAGE_SHIFT) + >>> + i.totalswap - i.freeswap; >> >> How swapcache is handled ? ...and How kmem works with this calc ? >> > I am ignoring kmem, because we don't account kmem for the root cgroup > anyway. > > Setting the limit is invalid, and we don't account until the limit is > set. Then it will be 0, always. > > For swapcache, I am hoping that totalswap - freeswap will cover > everything swap related. If you think I am wrong, please enlighten me. > i.totalswap - i.freeswap = # of used swap entries. SwapCache can be rss and used swap entry at the same time. 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/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>