Re: [PATCH 03/10] soft-offline: use migrate_pages() instead ofmigrate_huge_page()

From: Michal Hocko
Date: Fri Mar 29 2013 - 05:36:32 EST


On Fri 29-03-13 10:56:00, Aneesh Kumar K.V wrote:
> Michal Hocko <mhocko@xxxxxxx> writes:
[...]
> > Little bit offtopic:
> > Btw. hugetlb migration breaks to charging even before this patchset
> > AFAICS. The above put_page should remove the last reference and then it
> > will uncharge it but I do not see anything that would charge a new page.
> > This is all because regula LRU pages are uncharged when they are
> > unmapped. But this a different story not related to this series.
>
>
> But when we call that put_page, we would have alreayd move the cgroup
> information to the new page. We have
>
> h_cg = hugetlb_cgroup_from_page(oldhpage);
> set_hugetlb_cgroup(oldhpage, NULL);
>
> /* move the h_cg details to new cgroup */
> set_hugetlb_cgroup(newhpage, h_cg);
>
>
> in hugetlb_cgroup_migrate

Yes but the res counter charge would be missing for the newpage after
put_page

--
Michal Hocko
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/