Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp1273581ybl; Fri, 23 Aug 2019 16:41:15 -0700 (PDT) X-Google-Smtp-Source: APXvYqzxtal/EOXTiqEAlc/ZTDHKqSmkBoUXrKkIUws5T8XNyJChggl1dGZX2ItTnNVFYaV0Pnc7 X-Received: by 2002:a17:90a:30ad:: with SMTP id h42mr7676819pjb.31.1566603675507; Fri, 23 Aug 2019 16:41:15 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1566603675; cv=pass; d=google.com; s=arc-20160816; b=se61qrZmb7C65IBrkLb6/0jSpLh7NjAAdN8SSb/NHRil7syFlOnESn8P89jmd31wHK 5CKoNuUfuVqZCEORcV3bGoNplsj8KOJfVP2Jou6FahYqrM2cgIPexzwfKsw68vI799jp /TFUAZqwMz1a/g2gxn/YDWdvMOE/c+X2miVoRdTEirCOj0Is2/ou+jFaX3d7QVAK1y4j EHK8G/SXCmQZC8yLtxuZfIhWDKYGd5OwqTmtZbTBRuFB9D9QiIbKatijjbWvRBJOlzi5 umz1apnxXu05BDicH0GPMRrFMHYepZ+Aq0wh1Aa7zpbC0Botew2UbYtU4fd/v6gJ8/Wo wlBw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature:dkim-signature; bh=lUetpbmexGZAW6qb5NvlTVkNwWoKvxtNjCFJWeC419E=; b=bxEqtoXLtLAvXwJGFPXzNp3IGTNOuSkyQ2PpgPLfr44qDgsK2KG+ChiYHx4nkL9hkh sb7yvlGACDATGaiHYPmhhUqjYl2Qs+Si9fOSiRzmNb5Dsb+CAteuc6/Lo/ZnpWg7v990 wWlJnuvvDjtxUiR0MwJLc+VjLO31LF6LLPpQl3pyIaN+lf35fjxFo4+t7mghj8M4opEy Yd0v0OOc8s6lv15E9gRxQguBUr4YHFgbVpkWJIDjluL75N73n3OulEo+oSrk8iVsd1TK IV3kDZqeOmwqhtDry9hg1B5rjzbrwQ/RZTt/PAk1tDGMnNzYtRpJzF4gF51cFGEIekIC V2tQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@fb.com header.s=facebook header.b=GJ7PT3GP; dkim=pass header.i=@fb.onmicrosoft.com header.s=selector2-fb-onmicrosoft-com header.b="bfF7/nVK"; arc=pass (i=1 spf=pass spfdomain=fb.com dkim=pass dkdomain=fb.com dmarc=pass fromdomain=fb.com); spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=fb.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b74si3951135pfb.281.2019.08.23.16.41.00; Fri, 23 Aug 2019 16:41:15 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@fb.com header.s=facebook header.b=GJ7PT3GP; dkim=pass header.i=@fb.onmicrosoft.com header.s=selector2-fb-onmicrosoft-com header.b="bfF7/nVK"; arc=pass (i=1 spf=pass spfdomain=fb.com dkim=pass dkdomain=fb.com dmarc=pass fromdomain=fb.com); spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=fb.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726586AbfHWX3U (ORCPT + 99 others); Fri, 23 Aug 2019 19:29:20 -0400 Received: from mx0a-00082601.pphosted.com ([67.231.145.42]:51316 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726063AbfHWX3U (ORCPT ); Fri, 23 Aug 2019 19:29:20 -0400 Received: from pps.filterd (m0109333.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x7NMKCLe008316; Fri, 23 Aug 2019 15:33:04 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=facebook; bh=lUetpbmexGZAW6qb5NvlTVkNwWoKvxtNjCFJWeC419E=; b=GJ7PT3GPyrwchQMWjvBgFAYdEaD01j3P/tGm9ovNRE17hveM/f0c9Ba538Cd+kRJCAvn CcrLcbEGW7XtG3YHzuG2wrX6yAh7m0PiiXFad0mxelXQTELJQNa+HAE5ZXz3wz5ozpO7 ev/CALUuzE6uzpmnS9CbKS3Kvf2XRM2oWSk= Received: from mail.thefacebook.com (mailout.thefacebook.com [199.201.64.23]) by mx0a-00082601.pphosted.com with ESMTP id 2ujmw3h5qs-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Fri, 23 Aug 2019 15:33:03 -0700 Received: from prn-mbx03.TheFacebook.com (2620:10d:c081:6::17) by prn-hub04.TheFacebook.com (2620:10d:c081:35::128) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.1.1713.5; Fri, 23 Aug 2019 15:33:02 -0700 Received: from prn-hub03.TheFacebook.com (2620:10d:c081:35::127) by prn-mbx03.TheFacebook.com (2620:10d:c081:6::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.1.1713.5; Fri, 23 Aug 2019 15:33:02 -0700 Received: from NAM05-DM3-obe.outbound.protection.outlook.com (192.168.54.28) by o365-in.thefacebook.com (192.168.16.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.1.1713.5 via Frontend Transport; Fri, 23 Aug 2019 15:33:02 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cwbIeez2B5jzuL9tQtOSnsvyQ0IFrVnHJrviEcEUoArAbE2TV/gcSDV8Ircb7Op/ke81FMIaz6bloqoXw6v873JRrC0+W5U7A0vyc1zprQ69TTBOP47QWvH9DDM8VA8jyWyrzii5V3sVxx71uPtgCVLQl0HutL4i2HnyU8mPCLUy76L8MskcKcuP4LBrQxrxC+yEq2Tr1XanQqvDzBf96xM5/gEF4DqioxEVoLMWHeD01XZM13i7xiLXI6R4AlZ4pNXBq9F+Rgeyjih2NUHZ+QsLoPAFDHq+mJflKWeWysppbY7/m9OFWKfGBb1zembVhicXcA9TwTS5SsyAX+yc+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lUetpbmexGZAW6qb5NvlTVkNwWoKvxtNjCFJWeC419E=; b=oRVImUNfkOjeKvHrMLdS3eTwmYfL5h6OuUA4PD++aZDgSGGwyT/Ast+xZX/zLszQRir0QxN71QAYkC/J03QiFCwGjpsXTWEuagBs/9kUMZy2KhRXgFMfCvWIK9yoZQmr2jpDl4KctVhP2kMouSbZWk/NjoWgplsHzu9gVrDd6bs8bEm3lK/hmV0EQd1sDL5OkvFlIJMTSSd9AMJ9szWcY959tMn29NbAcJKxSS+OSjfoWBAnrVJdWtPE1Mb8lPD31HmZgY0hS3LtUcCk8/+RXxvvok+u28LRuHlFB4uWMpkflzSC88xGOFI13c2J/zPpfK2JwPF5yPcIcFhAAAXOUQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fb.com; dmarc=pass action=none header.from=fb.com; dkim=pass header.d=fb.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.onmicrosoft.com; s=selector2-fb-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lUetpbmexGZAW6qb5NvlTVkNwWoKvxtNjCFJWeC419E=; b=bfF7/nVKJXaXPDiyshrZcSGXaApDbq+ikIy3XwO5hwr8FSdZduoZnf3v6YMES6SYQBZ32Sn0GITGLhoNMaRgak6E+l6VDvWeDmhyGASoxgvA5+S3+FPiX7/0T2PEmNvwP7DnBqA0JZHkB4NAMthe+DP7cEkdBb1M20dRw0AlcxA= Received: from DM6PR15MB2635.namprd15.prod.outlook.com (20.179.161.152) by DM6PR15MB2745.namprd15.prod.outlook.com (20.179.163.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2157.21; Fri, 23 Aug 2019 22:33:01 +0000 Received: from DM6PR15MB2635.namprd15.prod.outlook.com ([fe80::d1fc:b5c5:59a1:bd7e]) by DM6PR15MB2635.namprd15.prod.outlook.com ([fe80::d1fc:b5c5:59a1:bd7e%3]) with mapi id 15.20.2178.020; Fri, 23 Aug 2019 22:33:01 +0000 From: Roman Gushchin To: Andrew Morton , "linux-mm@kvack.org" CC: Michal Hocko , Johannes Weiner , "linux-kernel@vger.kernel.org" , Kernel Team , Yafang Shao Subject: Re: [PATCH] Partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones" Thread-Topic: [PATCH] Partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones" Thread-Index: AQHVVJVnJCTepTfXpE2m8ikuyJkTSKcJXEGA Date: Fri, 23 Aug 2019 22:33:01 +0000 Message-ID: <20190823223257.GA22200@tower.DHCP.thefacebook.com> References: <20190817004726.2530670-1-guro@fb.com> In-Reply-To: <20190817004726.2530670-1-guro@fb.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: BYAPR21CA0008.namprd21.prod.outlook.com (2603:10b6:a03:114::18) To DM6PR15MB2635.namprd15.prod.outlook.com (2603:10b6:5:1a6::24) x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [2620:10d:c090:200::1:a7ed] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c905d369-4a39-45ea-8c19-08d72819db19 x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(5600166)(711020)(4605104)(1401327)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020);SRVR:DM6PR15MB2745; x-ms-traffictypediagnostic: DM6PR15MB2745: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0138CD935C x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(979002)(136003)(396003)(346002)(366004)(39860400002)(376002)(199004)(189003)(486006)(1076003)(76176011)(71200400001)(229853002)(8936002)(81166006)(316002)(6486002)(5660300002)(99286004)(4326008)(11346002)(2501003)(6246003)(476003)(33656002)(102836004)(446003)(52116002)(66946007)(66556008)(256004)(66476007)(7736002)(305945005)(386003)(64756008)(2906002)(6512007)(9686003)(25786009)(6116002)(81156014)(186003)(110136005)(14454004)(54906003)(478600001)(46003)(53936002)(71190400001)(8676002)(6436002)(86362001)(6506007)(66446008)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:DM6PR15MB2745;H:DM6PR15MB2635.namprd15.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: fb.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: dMVyv4pQNaGQyc88hF9G59a9d3p+SuMh0jQlyjAikJ5/2Tl8qPMq3i3GebJ3ydAOdB9wOiUNf9kZl6OthJu8VIWnu5hYyFuIP0QHRe/al7GEAm745ElQKYIcv61bNEyBzN1qVCCKoR9Bis4NukUzXm7hjNfyhv6mRDh0W1+qipCXfA5m0ZYzgA76v1EIjLabk7mPMjnBmnGbzxgsvVksSgvHnUxUDmKZXsbNn43sn3ZeRl6roOs6LCvHdgFD8Ji/D44px7B52ofDmVPfQCkC/DtG02ZtkXUx0Cj0XaRDc74S2RuvoybvOmoNLgRNwLDxsVBIpIIiBcXuHNxuNmprjyGzEX26Ns/yv14R5HbJ9GT9DkFVoPeUUMik9AFJgREOvSVHRMF/Y1axIoDeIFgWYGfH+LBvQolOouVXL2vwQPo= Content-Type: text/plain; charset="us-ascii" Content-ID: <8DAE87D3646DAB46AC49BFB584993A74@namprd15.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: c905d369-4a39-45ea-8c19-08d72819db19 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Aug 2019 22:33:01.2931 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 8ae927fe-1255-47a7-a2af-5f3a069daaa2 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: fJdLFisKEouwkubPfC/rHJuoNJRM606PMkHM4PHcP6boNv8FdQ5cnuPl8jINPh09 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR15MB2745 X-OriginatorOrg: fb.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-08-23_10:,, signatures=0 X-Proofpoint-Spam-Details: rule=fb_default_notspam policy=fb_default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=851 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1906280000 definitions=main-1908230211 X-FB-Internal: deliver Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Aug 16, 2019 at 05:47:26PM -0700, Roman Gushchin wrote: > Commit 766a4c19d880 ("mm/memcontrol.c: keep local VM counters in sync > with the hierarchical ones") effectively decreased the precision of > per-memcg vmstats_local and per-memcg-per-node lruvec percpu counters. >=20 > That's good for displaying in memory.stat, but brings a serious regressio= n > into the reclaim process. >=20 > One issue I've discovered and debugged is the following: > lruvec_lru_size() can return 0 instead of the actual number of pages > in the lru list, preventing the kernel to reclaim last remaining > pages. Result is yet another dying memory cgroups flooding. > The opposite is also happening: scanning an empty lru list > is the waste of cpu time. >=20 > Also, inactive_list_is_low() can return incorrect values, preventing > the active lru from being scanned and freed. It can fail both because > the size of active and inactive lists are inaccurate, and because > the number of workingset refaults isn't precise. In other words, > the result is pretty random. >=20 > I'm not sure, if using the approximate number of slab pages in > count_shadow_number() is acceptable, but issues described above > are enough to partially revert the patch. >=20 > Let's keep per-memcg vmstat_local batched (they are only used for > displaying stats to the userspace), but keep lruvec stats precise. > This change fixes the dead memcg flooding on my setup. >=20 > Fixes: 766a4c19d880 ("mm/memcontrol.c: keep local VM counters in sync wit= h the hierarchical ones") > Signed-off-by: Roman Gushchin > Cc: Yafang Shao > Cc: Johannes Weiner Any other concerns/comments here? I'd prefer to fix the regression: we're likely leaking several pages of memory for each created and destroyed memory cgroup. Plus all internal structures, which are measured in hundreds of kb. Thanks!