Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp1438013pxb; Wed, 20 Oct 2021 05:14:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx/h/3eL6BJJygKfmeT0QKgWeDpML1xuQpTMKAUr1J9ghbCobShlt/VwXYtk2OW1xkBdD9r X-Received: by 2002:a50:e0c3:: with SMTP id j3mr61610376edl.97.1634732098004; Wed, 20 Oct 2021 05:14:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634732097; cv=none; d=google.com; s=arc-20160816; b=O0Q2sy68zIYGzR2WzJYybH5Jqq/09qLoyeoN44JhuqJt63CZeiK5+8E57jzjZtErdY M+nL//PHQW7l06CT5IF/4pkwWQF3oNZTRp0Ob0hO+S06fw4zg8hQXlowFPf1HsGJw363 YsZrZBeJ7Su121IsZkMXT7bUpA8HWkYfyVCxwuM34DfjtaOUpvlDv9gLYl89ZdkqNnTh kzmKmZZLyMQH6r6+cRMHF4Go/m0fg31a+sudXH74vH51VnnpgAFN0MVEIa7Iu1L/cRzV i+dgZ65ic4d1dn4tMTaSZpJjI8rtP13k/5oaiYlSipHJaOK4Dj4J6fevW8NOcIV+IM7G 7yug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:references:cc :to:subject:from:dkim-signature; bh=Ogt0vQ4+gupep/lvDlFo1PXQW0DADnBHbHdATcZzm20=; b=a3TiG09oqqCC2jkDsWqEZNx2+2fLjZFlrmqO6vI+mp2sxfyGpik7kPpgHgKRJWR1oD 5ICBcXrVdcBbObAuT+Gq/A3nDQra5f6kciJS9wKN7NBykU0RIUB1LFDA2i9+9+aC0mWH fu1MYaTomNhLLlFzLT4X4Y2UP2UY+tA3U9tmyyRJ5r0C5BV9Aqr4UVPohEMJCM9y4wmX JrZV92UHBYBGmp6TEqIhh334eKr12n7FWhIWkeTzhE93rdja0Piodi2BS1yYRJdg50Xc mdaZeAahkIj5GfekmqKJ77jmYE9cRgJL2eh/n6cQuJ48y739tdxwjJSqiWqdI9i7IDaX TdDw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=bAVEJIxg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b40si2435105edf.229.2021.10.20.05.14.32; Wed, 20 Oct 2021 05:14:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=bAVEJIxg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230202AbhJTMOV (ORCPT + 99 others); Wed, 20 Oct 2021 08:14:21 -0400 Received: from relay.sw.ru ([185.231.240.75]:41610 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230209AbhJTMOR (ORCPT ); Wed, 20 Oct 2021 08:14:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=virtuozzo.com; s=relay; h=Content-Type:MIME-Version:Date:Message-ID:Subject :From; bh=Ogt0vQ4+gupep/lvDlFo1PXQW0DADnBHbHdATcZzm20=; b=bAVEJIxgSYk7Fvn45dl zabDL0FPXFzAupZNKZRT+F3njJTT6tY9TEmQJfiWXuyPNfiAgrA40jD02Ij0xywkyAmFyWwkgp9WE ArvtFI3nv6lb059uOy/T3Eck744pZCN7U6fYnWGjpyp72IRxDyJtspl6cWMLMCGZo3CyD2VdEsg=; Received: from [172.29.1.17] by relay.sw.ru with esmtp (Exim 4.94.2) (envelope-from ) id 1mdARo-006b83-7l; Wed, 20 Oct 2021 15:11:56 +0300 From: Vasily Averin Subject: [PATCH memcg RFC 0/3] memcg: prohibit unconditional exceeding the limit of dying tasks To: Michal Hocko , Johannes Weiner , Vladimir Davydov , Andrew Morton Cc: Roman Gushchin , Uladzislau Rezki , Vlastimil Babka , Shakeel Butt , Mel Gorman , Tetsuo Handa , cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel@openvz.org References: Message-ID: Date: Wed, 20 Oct 2021 15:11:35 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Dear Michal, as you requested, I splited v4 patch version into 3 separate parts. Let's discuss each of them. Open questions/ToDo: - Update patch descriptions (and add some comments) - in part 2 aka "memcg: remove charge forcinig for dying tasks": should we keep task_is_dying() in mem_cgroup_out_of_memory() ? - in part 3 aka "memcg: handle memcg oom failures" what is the best way to notify pagefault_out_of_memory() about mem_cgroup_out_of_memory failure ? - what is the best way to handle memcg failure doe to kmem limit, it can trigger false global OOM Vasily Averin (3): mm: do not firce global OOM from inside dying tasks memcg: remove charge forcinig for dying tasks memcg: handle memcg oom failures mm/memcontrol.c | 52 ++++++++++++++++++++++++++++--------------------- mm/oom_kill.c | 3 +++ 2 files changed, 33 insertions(+), 22 deletions(-) -- 2.32.0