[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c6b2c864-985a-2565-95e7-3af9e3e015f8@yandex-team.ru>
Date: Tue, 6 Aug 2019 10:19:49 +0300
From: Konstantin Khlebnikov <khlebnikov@...dex-team.ru>
To: Michal Hocko <mhocko@...nel.org>
Cc: Johannes Weiner <hannes@...xchg.org>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, cgroups@...r.kernel.org,
Vladimir Davydov <vdavydov.dev@...il.com>
Subject: Re: [PATCH RFC] mm/memcontrol: reclaim severe usage over high limit
in get_user_pages loop
On 8/6/19 10:07 AM, Michal Hocko wrote:
> On Fri 02-08-19 13:44:38, Michal Hocko wrote:
> [...]
>>>> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
>>>> index ba9138a4a1de..53a35c526e43 100644
>>>> --- a/mm/memcontrol.c
>>>> +++ b/mm/memcontrol.c
>>>> @@ -2429,8 +2429,12 @@ static int try_charge(struct mem_cgroup *memcg, gfp_t gfp_mask,
>>>> schedule_work(&memcg->high_work);
>>>> break;
>>>> }
>>>> - current->memcg_nr_pages_over_high += batch;
>>>> - set_notify_resume(current);
>>>> + if (gfpflags_allow_blocking(gfp_mask)) {
>>>> + reclaim_high(memcg, nr_pages, GFP_KERNEL);
>>
>> ups, this should be s@..._KERNEL@..._mask@
>>
>>>> + } else {
>>>> + current->memcg_nr_pages_over_high += batch;
>>>> + set_notify_resume(current);
>>>> + }
>>>> break;
>>>> }
>>>> } while ((memcg = parent_mem_cgroup(memcg)));
>>>>
>
> Should I send an official patch for this?
>
I prefer to keep it as is while we have no better solution.
Powered by blists - more mailing lists