From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CB38FC2BBC7 for ; Mon, 13 Apr 2020 21:58:20 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 7AF072051A for ; Mon, 13 Apr 2020 21:58:20 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=magicleap.com header.i=@magicleap.com header.b="HdyBBN0y"; dkim=pass (1024-bit key) header.d=magicleap.com header.i=@magicleap.com header.b="GvwpjXIJ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7AF072051A Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=magicleap.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 499368E0001; Mon, 13 Apr 2020 17:58:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 449828E0005; Mon, 13 Apr 2020 17:58:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 310B28E0001; Mon, 13 Apr 2020 17:58:19 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0081.hostedemail.com [216.40.44.81]) by kanga.kvack.org (Postfix) with ESMTP id 1630E8E0005 for ; Mon, 13 Apr 2020 17:58:19 -0400 (EDT) Received: from smtpin09.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id CBF40824556B for ; Mon, 13 Apr 2020 21:58:18 +0000 (UTC) X-FDA: 76704195876.09.desk55_e50ca0b67a39 X-HE-Tag: desk55_e50ca0b67a39 X-Filterd-Recvd-Size: 7295 Received: from mx0b-001e9b01.pphosted.com (mx0b-001e9b01.pphosted.com [148.163.159.123]) by imf19.hostedemail.com (Postfix) with ESMTP for ; Mon, 13 Apr 2020 21:58:18 +0000 (UTC) Received: from pps.filterd (m0176109.ppops.net [127.0.0.1]) by mx0b-001e9b01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 03DLtEYL022044 for ; Mon, 13 Apr 2020 17:58:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=magicleap.com; h=from : to : cc : subject : date : message-id : in-reply-to : references; s=pp09042018; bh=2LYr+6fk9jc+ruNP83QWvUWdwCvITiOBEiV9JY3ziDQ=; b=HdyBBN0yThk4EXVbQ8mZ9GFO+jNAmUXwLvFiakVexr/O7ktaI5W/3W8oV6oCYWkSX2Jz 96RkDeO7DbtQ/DxE7fhfEAJiXvsnQEhiPukuUeODRtWThXaYpZmmr/isIoHJewfndGxd hjDXz2x7rVL1ohNrr4HENi2S9jRdeGZl6ILgh6HYaFlgCuC2OvudLWjs54qxaQDCDEXE gASj4OpRcnP1jygBJEqGCBMI8QMRhoC+CyULhcXufOl3F9EWtDtjITz1WejIqCcXdOvA oYDb35/KSmirbEyIR8R0Syket7hK8/RpfWEj6dlN0Bx/kAu2bQrZ6Hw/BRmqhb+k60ov 3Q== Received: from mail-ua1-f71.google.com (mail-ua1-f71.google.com [209.85.222.71]) by mx0b-001e9b01.pphosted.com with ESMTP id 30bapb9snq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=OK) for ; Mon, 13 Apr 2020 17:58:17 -0400 Received: by mail-ua1-f71.google.com with SMTP id u33so4723484uah.20 for ; Mon, 13 Apr 2020 14:58:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=magicleap.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=2LYr+6fk9jc+ruNP83QWvUWdwCvITiOBEiV9JY3ziDQ=; b=GvwpjXIJdz7nDkgPYrZZvtBfCeiGi2XORRj68alYd6piMcXloFazhQkh9L9tVlDzeA Wi2ToTlPJey7l6S8spMVnQDfD/JfFdR+6Ab+l1Gw1tFoZa6P3I4v6zD5e5GRp2kbGRG0 DwLJn7veoKFZI7kitdXi1SnmJRWB2keFHejko= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=2LYr+6fk9jc+ruNP83QWvUWdwCvITiOBEiV9JY3ziDQ=; b=LHcfVbPmgxyqf525Bw1s3nrmW0FzzUhYf6Zli+dufSKuOa+7iiFW7O32h0iku22qz/ cnCV5kud0xiyeE8eAfxRQIamoPsPEnzZwL04iiwY6t6l0ORlk9IHfhr+PYGxB67jkWQn qTqdAuGrh1NAE5R5ivy7/5EktheyHp+4/XRAqUhLjMai2bUzRgAg6D4T9EVmHunW+hny kX5zKSuhBR/r+niGL817ZNLX+bQYfIUaOAOBUrseB+gdtJr22v2PLt8NPnCcyxYz9up4 gxJWrIOEueeD8PZb6TQgcYn8jgxN1hWhfj1BeGNqUHFPz+DDM4XCrkP4NxmcNDUkhvdA FFvA== X-Gm-Message-State: AGi0PubQScAXiIIFls5eLSt1o5GuDruPuYcMnqzimzQKUJF1SZgoXgvh y2ZQwUh22i2pfzMeOscBJrHQVAG3rgxnoEQRlofY+zLaUznBvbKaLoen4LBMgS32M+zflLvl+qo mR6CuPtbH6Bc= X-Received: by 2002:a67:edd9:: with SMTP id e25mr13851045vsp.216.1586815096596; Mon, 13 Apr 2020 14:58:16 -0700 (PDT) X-Google-Smtp-Source: APiQypIMGPLZnRtmTVpXfPqtZWc18Gf0bs/HZgZPXoFUY/YUf9rKLxCXLVFVeGuWQy7Zgvj40mZklA== X-Received: by 2002:a67:edd9:: with SMTP id e25mr13851022vsp.216.1586815096308; Mon, 13 Apr 2020 14:58:16 -0700 (PDT) Received: from mldl2169.magicleap.ds ([162.246.139.210]) by smtp.gmail.com with ESMTPSA id 20sm2988529uaj.13.2020.04.13.14.58.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Apr 2020 14:58:15 -0700 (PDT) From: svc_lmoiseichuk@magicleap.com X-Google-Original-From: lmoiseichuk@magicleap.com To: hannes@cmpxchg.org, mhocko@kernel.org, vdavydov.dev@gmail.com, tj@kernel.org, lizefan@huawei.com, cgroups@vger.kernel.org Cc: akpm@linux-foundation.org, rientjes@google.com, minchan@kernel.org, vinmenon@codeaurora.org, andriy.shevchenko@linux.intel.com, anton.vorontsov@linaro.org, penberg@kernel.org, linux-mm@kvack.org, Leonid Moiseichuk Subject: [PATCH 1/2] memcg: expose vmpressure knobs Date: Mon, 13 Apr 2020 17:57:49 -0400 Message-Id: <20200413215750.7239-2-lmoiseichuk@magicleap.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200413215750.7239-1-lmoiseichuk@magicleap.com> References: <20200413215750.7239-1-lmoiseichuk@magicleap.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138,18.0.676 definitions=2020-04-13_11:2020-04-13,2020-04-13 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 priorityscore=1501 malwarescore=0 phishscore=0 impostorscore=0 mlxscore=0 lowpriorityscore=0 mlxlogscore=999 clxscore=1015 suspectscore=2 adultscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004130160 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: Leonid Moiseichuk Populating memcg vmpressure controls with legacy defaults: - memory.pressure_window (512 or SWAP_CLUSTER_MAX * 16) - memory.pressure_level_critical_prio (3) - memory.pressure_level_medium (60) - memory.pressure_level_critical (95) Signed-off-by: Leonid Moiseichuk --- Documentation/admin-guide/cgroup-v1/memory.rst | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Documentation/admin-guide/cgroup-v1/memory.rst b/Documentation/admin-guide/cgroup-v1/memory.rst index 0ae4f564c2d6..42508123a8e1 100644 --- a/Documentation/admin-guide/cgroup-v1/memory.rst +++ b/Documentation/admin-guide/cgroup-v1/memory.rst @@ -79,6 +79,12 @@ Brief summary of control files. memory.use_hierarchy set/show hierarchical account enabled memory.force_empty trigger forced page reclaim memory.pressure_level set memory pressure notifications + memory.pressure_window set window size for scanned pages, better + to perform it as vmscan reclaimer logic + in chunks in multiple SWAP_CLUSTER_MAX + memory.pressure_level_critical_prio vmscan priority for critical level + memory.pressure_level_medium medium level pressure percents + memory.pressure_level_critical critical level pressure percents memory.swappiness set/show swappiness parameter of vmscan (See sysctl's vm.swappiness) memory.move_charge_at_immigrate set/show controls of moving charges @@ -893,12 +899,16 @@ pressure, the system might be making swap, paging out active file caches, etc. Upon this event applications may decide to further analyze vmstat/zoneinfo/memcg or internal memory usage statistics and free any resources that can be easily reconstructed or re-read from a disk. +The level threshold could be tuned using memory.pressure_level_medium. The "critical" level means that the system is actively thrashing, it is about to out of memory (OOM) or even the in-kernel OOM killer is on its way to trigger. Applications should do whatever they can to help the system. It might be too late to consult with vmstat or any other -statistics, so it's advisable to take an immediate action. +statistics, so it's advisable to take an immediate action. The level +threshold could be tuned using memory.pressure_level_critical. Number +of pages and vmscan priority handled as memory.pressure_window and +memory.pressure_level_critical_prio. By default, events are propagated upward until the event is handled, i.e. the events are not pass-through. For example, you have three cgroups: A->B->C. Now -- 2.17.1