On Sun 04-08-13 05:17:04, Kirill A. Shutemov wrote: > From: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx> > > mem_cgroup_cache_charge() has check for PageCompound(). The check > prevents charging huge cache pages. > > I don't see a reason why the check is present. Looks like it's just > legacy (introduced in 52d4b9a memcg: allocate all page_cgroup at boot). > > Let's just drop it. If the page cache charging path only sees THP as compound pages then OK. Can we keep at least VM_BUG_ON(PageCompound(page) && !PageTransHuge(page)) Otherwise mem_cgroup_charge_common would be confused and charge such a page as order-0 > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > Cc: Michal Hocko <mhocko@xxxxxxx> > Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> > Acked-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> Other than that, looks good to me. Acked-by: Michal Hocko <mhocko@xxxxxxx> > --- > mm/memcontrol.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index b6cd870..dc50c1a 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -3921,8 +3921,6 @@ int mem_cgroup_cache_charge(struct page *page, struct mm_struct *mm, > > if (mem_cgroup_disabled()) > return 0; > - if (PageCompound(page)) > - return 0; > > if (!PageSwapCache(page)) > ret = mem_cgroup_charge_common(page, mm, gfp_mask, type); > -- > 1.8.3.2 > -- Michal Hocko SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html