Re: [Devel] [PATCH rh7] mm/filemap: fix potential memcg->cache charge leak
On 10/9/20 10:14 AM, Vasily Averin wrote: > vz8 is affected too, please cherry-pick > vz7 commit 79a5642e9d9a6bdbb56d9e0ee990fd96b7c8625c > vz8 is not affected ___ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel
Re: [Devel] [PATCH rh7] mm/filemap: fix potential memcg->cache charge leak
vz8 is affected too, please cherry-pick vz7 commit 79a5642e9d9a6bdbb56d9e0ee990fd96b7c8625c On 10/8/20 1:10 PM, Andrey Ryabinin wrote: > __add_to_page_cache_locked() after mem_cgroup_try_charge_cache() > uses mem_cgroup_cancel_charge() in one of the error paths. > This may lead to leaking a few memcg->cache charges. > > Use mem_cgroup_cancel_cache_charge() to fix this. > > https://jira.sw.ru/browse/PSBM-121046 > Signed-off-by: Andrey Ryabinin > --- > mm/filemap.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/filemap.c b/mm/filemap.c > index 53db13f236da..2bd5ca4e7528 100644 > --- a/mm/filemap.c > +++ b/mm/filemap.c > @@ -732,7 +732,7 @@ static int __add_to_page_cache_locked(struct page *page, > error = radix_tree_maybe_preload(gfp_mask & GFP_RECLAIM_MASK); > if (error) { > if (!huge) > - mem_cgroup_cancel_charge(page, memcg); > + mem_cgroup_cancel_cache_charge(page, memcg); > return error; > } > > ___ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel
[Devel] [PATCH rh7] mm/filemap: fix potential memcg->cache charge leak
__add_to_page_cache_locked() after mem_cgroup_try_charge_cache() uses mem_cgroup_cancel_charge() in one of the error paths. This may lead to leaking a few memcg->cache charges. Use mem_cgroup_cancel_cache_charge() to fix this. https://jira.sw.ru/browse/PSBM-121046 Signed-off-by: Andrey Ryabinin --- mm/filemap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/filemap.c b/mm/filemap.c index 53db13f236da..2bd5ca4e7528 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -732,7 +732,7 @@ static int __add_to_page_cache_locked(struct page *page, error = radix_tree_maybe_preload(gfp_mask & GFP_RECLAIM_MASK); if (error) { if (!huge) - mem_cgroup_cancel_charge(page, memcg); + mem_cgroup_cancel_cache_charge(page, memcg); return error; } -- 2.26.2 ___ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel