Re: [PATCH -mm -v7 2/9] mm, memcg: Support to charge/uncharge multiple swap entries

From: Johannes Weiner
Date: Fri Mar 31 2017 - 10:59:18 EST


On Thu, Mar 30, 2017 at 08:53:50AM +0800, Huang, Ying wrote:
> Johannes Weiner <hannes@xxxxxxxxxxx> writes:
> > but there doesn't seem to be a reason to
> > pass @nr_entries when we have the struct page. Why can't this function
> > just check PageTransHuge() by itself?
>
> Because sometimes we need to charge one swap entry for a THP. Please
> take a look at the original add_to_swap() implementation. For a THP,
> one swap entry will be allocated and charged to the mem cgroup before
> the THP is split. And I think it is not easy to change this, because we
> don't want to split THP if the mem cgroup for swap exceeds its limit.

I think we do. Let's continue this discussion in the 9/9 subthread.