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

From: Shakeel Butt
Date: Thu Jun 18 2020 - 10:55:51 EST


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

On Mon, Jun 8, 2020 at 4:07 PM Roman Gushchin <guro@xxxxxx> wrote:
>
> From: Johannes Weiner <hannes@xxxxxxxxxxx>
>
[...]
> @@ -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 */
>