Re: [PATCH v6 05/19] mm: memcontrol: decouple reference counting from page accounting

Shakeel Butt
2020-06-18T14:55:51Z

Not sure if my email went through, so, re-sending.

On Mon, Jun 8, 2020 at 4:07 PM Roman Gushchin <guro@fb.com> wrote:
>
> From: Johannes Weiner <hannes@cmpxchg.org>
>
[...]
> @@ -3003,13 +3004,16 @@ void __memcg_kmem_uncharge_page(struct page *page, int order)
> */
> void mem_cgroup_split_huge_fixup(struct page *head)
> {
> + struct mem_cgroup *memcg = head->mem_cgroup;
> int i;
>
> if (mem_cgroup_disabled())
> return;
>

A memcg NULL check is needed here.

> - for (i = 1; i < HPAGE_PMD_NR; i++)
> - head[i].mem_cgroup = head->mem_cgroup;
> + for (i = 1; i < HPAGE_PMD_NR; i++) {
> + css_get(&memcg->css);
> + head[i].mem_cgroup = memcg;
> + }
> }
> #endif /* CONFIG_TRANSPARENT_HUGEPAGE */
>