Message ID | 201709061641.v86GfpE0027858@finist_ce7.work |
---|---|
State | New |
Series | "mm/memcg: sleep if mem_cgroup_force_empty_list() stumped on busy page" |
Headers | show
Delivered-To: criupatchwork@gmail.com Received: from gmail-imap.l.google.com [209.85.233.108] by patchwork.criu.org with IMAP (fetchmail-6.3.26) for <root@localhost> (single-drop); Wed, 06 Sep 2017 18:44:10 +0200 (CEST) Received: by 10.100.163.81 with SMTP id f75csp994652pje; Wed, 6 Sep 2017 09:44:03 -0700 (PDT) X-Google-Smtp-Source: ADKCNb6t4GfkRGuALXzr8c7kASboVatKimP2vGs/V8lwXAyrJcOjsabGVRx/mS7tnV0QLlZPobPn X-Received: by 10.25.24.231 with SMTP id 100mr1029817lfy.241.1504716243251; Wed, 06 Sep 2017 09:44:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1504716243; cv=none; d=google.com; s=arc-20160816; b=jrh+jkIeoSTa7nFdrnr9NXZCv/e8Wl14KCaT5aovlCmc7xzctvCdYgCxbJrQYiDpNG +KKOXR3s2tLVm/55rIc0h3vaa9DTQMjF9MSj88XaiAdqsauv3FrENphRABjC+6bFOXtP zpKwgK4ZvJ/04d41OLFyK4VyG+WyQMLJ4LwkQI5oaFUG92IUJEt9TJB8U/Jbg5Yrh0RP TR3CE9vABOayLc+G1y59+Z17MhIFZKKuRIFp36T0bM1Y02zAei7G8ZnGqHqGmon74ZAa pmV3f4Hdtji/e9PMVlSSChvFcXmq7jKJn9bXD2GWdjti3tUe5AnXzEqiayPJApv+doxy 4Dkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:list-subscribe:list-help :list-post:list-archive:list-unsubscribe:list-id:precedence:subject :cc:spamdiagnosticmetadata:spamdiagnosticoutput:mime-version :in-reply-to:to:from:message-id:date:arc-authentication-results; bh=Wi1JBEfeX+Sa/Zx8/eGdIFC4Nz2ukdlOa70vTsT8hII=; b=fSjG1MnwvOk/TbXtnqDhDTjfqVh7080++Wjs74CVOQzTrhnl1WqsITCPlENbLij/1m x1NxtcoThT2/c5IeaL0t/NRRyaNU1p7pcHzwfM+fw9d1A1pF2HZgrt1GfTr73XLst7r1 z8XFem9nXwj7hFvR0n0/fw0zGlufZQVHFoJKS5fyt4u6wbJwkzlTYv3/NEZHCGFMcy4t TcUZuDHv07AnkXIEnj/D1y+gisSn4x3gke+2FCtH37qatz1sGcCISaF1HD7kO7ZCOl4r 8NB2t8gmLVJfjxb/qYfpLmPJZfB5gbzWorDmgeMTVnH/rZxnCuzWZJg6sETSquw3omQ7 rRvQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of devel-bounces@openvz.org designates 195.214.232.140 as permitted sender) smtp.mailfrom=devel-bounces@openvz.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Return-Path: <devel-bounces@openvz.org> Received: from mail.openvz.org (mail.openvz.org. [195.214.232.140]) by mx.google.com with ESMTPS id n193si75040lfb.671.2017.09.06.09.43.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 06 Sep 2017 09:44:03 -0700 (PDT) Received-SPF: pass (google.com: domain of devel-bounces@openvz.org designates 195.214.232.140 as permitted sender) client-ip=195.214.232.140; Authentication-Results: mx.google.com; spf=pass (google.com: domain of devel-bounces@openvz.org designates 195.214.232.140 as permitted sender) smtp.mailfrom=devel-bounces@openvz.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Received: from mail.openvz.org (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id v86Gg6ge020869; Wed, 6 Sep 2017 19:42:07 +0300 Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-ve1eur03lp0149.outbound.protection.outlook.com [213.199.154.149]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id v86Gg4vt020866 for <devel@openvz.org>; Wed, 6 Sep 2017 19:42:04 +0300 Received: from HE1PR0801CA0015.eurprd08.prod.outlook.com (2603:10a6:3:6::25) by HE1PR0802MB2217.eurprd08.prod.outlook.com (2603:10a6:3:c3::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.10; Wed, 6 Sep 2017 16:41:53 +0000 Received: from DB5EUR01FT003.eop-EUR01.prod.protection.outlook.com (2a01:111:f400:7e02::203) by HE1PR0801CA0015.outlook.office365.com (2603:10a6:3:6::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.10 via Frontend Transport; Wed, 6 Sep 2017 16:41:53 +0000 Authentication-Results: spf=pass (sender IP is 195.214.232.6) smtp.mailfrom=virtuozzo.com; openvz.org; dkim=none (message not signed) header.d=none; openvz.org; dmarc=pass action=none header.from=virtuozzo.com; Received-SPF: Pass (protection.outlook.com: domain of virtuozzo.com designates 195.214.232.6 as permitted sender) receiver=protection.outlook.com; client-ip=195.214.232.6; helo=finist_ce7.work; Received: from finist_ce7.work (195.214.232.6) by DB5EUR01FT003.mail.protection.outlook.com (10.152.4.101) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.1385.11 via Frontend Transport; Wed, 6 Sep 2017 16:41:53 +0000 Received: from finist_ce7.work (localhost [127.0.0.1]) by finist_ce7.work (8.14.7/8.14.7) with ESMTP id v86GfpTR027859; Wed, 6 Sep 2017 19:41:51 +0300 Received: (from khorenko@localhost) by finist_ce7.work (8.14.7/8.14.7/Submit) id v86GfpE0027858; Wed, 6 Sep 2017 19:41:51 +0300 Date: Wed, 6 Sep 2017 19:41:51 +0300 Message-ID: <201709061641.v86GfpE0027858@finist_ce7.work> X-Authentication-Warning: finist_ce7.work: khorenko set sender to khorenko@virtuozzo.com using -f From: Konstantin Khorenko <khorenko@virtuozzo.com> To: Andrey Ryabinin <aryabinin@virtuozzo.com> In-Reply-To: <20170905155306.19073-1-aryabinin@virtuozzo.com> X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:195.214.232.6; IPV:CAL; CTRY:RU; EFV:NLI; SFV:NSPM; SFS:(6009001)(2980300002)(438002)(199003)(189002)(106466001)(86362001)(87636003)(8936002)(5660300001)(50466002)(1096003)(48376002)(26826003)(966005)(626005)(189998001)(69596002)(4477795004)(36756003)(54356999)(47776003)(5003940100001)(6862004)(4326008)(107886003)(110136004)(50986999)(305945005)(8676002)(81166006)(81156014)(54906002)(356003)(42186005)(6306002)(9686003)(1076002)(8276002)(2950100002)(6636002)(40036005)(4000290100002); DIR:INB; SFP:; SCL:1; SRVR:HE1PR0802MB2217; H:finist_ce7.work; FPR:; SPF:Pass; PTR:msk-vpn.virtuozzo.com; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB5EUR01FT003; 1:nXwsCuhREil+ucGA9+tniAuDKa1Ett56OttzO83irYrMsEvSNqK5ZX0Ggga9PovaywHiL2G1UUK0RrBEbsSUP0J0M8sQuMfhPL0BOkc8apxChf/Jv6I+8mfExGzCJDDZ MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6e5aae8f-3021-43a3-ee98-08d4f5462dfc X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(8251501002)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:HE1PR0802MB2217; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2217; 3:ts9S85yt9pmDIJSAjDcTlrThQwTYwgaMPyA/2m3mS0ZDbWDIo4hVz5R+zdMeASHLeKS1wkxNmhGBNBbcDPL1v+6DtQV4Jc+aPAuhcjVCJPkeGBPo6sw8ozIrdMgqEP/M5Sby5w/Ir+DZE/MvfmZ4xj2lr7ma5UUX3XAuErEEjtUs8IfWL1B/SGW67SPHuHQMMl0gQfxfZf9dP/fscaPE5lIJguJ515eex6fVDxATT1Lkoib4vkXLTADW8QIOATFERe/Cm5mMV/fg7e3W2kSB1qlIjwpJzgYeS5oJrupB74DMRPZ1Rr2yzLKisj/vfZ95s3BkSra5ixa6SkKLcX7tBmKijisLa4kfjKWaBZ4Yrng=; 25:Gsn37XUtJnkSPrBsvZunq9TPsxYJz853FEIWAPSF8iq1erInz915tWMioDSlCZQMWkfaxBGMMd4PnwVD8XrTBQ09woaxVggOTJDfU6RThe10RcYbkZ/thn6LBa3s9yJDbHNlBvkOk0vNyGKvfb5SfZJ8mQa4s1afWMQ+ufCBjFMVKt0DGvhZ3t3tNDS8wMfYyxOR4yUYDinrQzLtM3OEUHDi9NlOMH2etyCz7NAcQTDkG6nbjiPSHV42PMZredbNCL9rfSf82PP7usuz1hqFev+B9ZCAsO4fV2xPP/EoO/9tfel/7pHLU5DMT44iBL4G/BGu84qHbVok3CWPqtS9pA== X-MS-TrafficTypeDiagnostic: HE1PR0802MB2217: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2217; 31:wCW37wmdCf27PLAgbzoGwngguaJHntpZoRB63wZR25R5gPsYx545gBhcMQzPs6JXEyxfJ+FXlYw2hGxozPAfSdRSWa1Z/j22I811p0wa9VZquPxi2XimvSwOrIt8ITBHwXDPbfyTuiV4oBCd4BePGsz78APgGzGYO7QcF2XnFrmtfeE7sZ0IAKFSCTcTDOW2RtfEZqsw13qnmILofeFPKvdYnZhnGbeRWiL+0X9EdLE=; 20:yc1oEfGAzoHy5+73VikipF/nv0IxbDz/1Ao2NGS5GV3j+k47ljpCOQg9eU9PWY6m9Dv60oZl+A671A7eg57jv3I9iPoVSRRK9F2fa8tpcP32TNup9Qs54aGPVLLWTqCZBNC76Nv4F5q8iv4GjyDfGVTYq6yXjmka50vzpz269hD1lCJUyOcQC0x1YzWK8VJIat9rDfk70OIKBEYD0mtyIaT8J+6J/1LfYPm08ItiF2vpod14lJpSMGbhmop4Tpt976d5R0D4fW5CZTsAAUXI3SJ0tJ8MsF/Q70G3EUru93ibhEzVv6Vvrpaojt/NzKrkI9zmzuz1cRLKIWhBFsS22SfEU/ou7t23TUQFoKRnPW2Ft3RlSkCYbPAIsA1lj/N22TJCt+tQq60Hzr5YeBpH2hlYyYCgZ/GuPre5mBZkk5Y= X-Exchange-Antispam-Report-Test: UriScan:(215187933766430); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(9101521199)(2401047)(8121501046)(3002001)(93006095)(93004095)(100000703101)(100105400095)(10201501046)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:HE1PR0802MB2217; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:HE1PR0802MB2217; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2217; 4:vF1QIMPq5qwVnLvzWAZxUSNnn/jhprbCWND9ihw64TTXMseZ6YZt5AWhJzvjokooB5DDf3C1GehroYEAjAqI/gIMZa8/7xAVOB1sZ/yx3CYmZzP8+S6TNjx+ySoF0YMIpCArWWOpVgxERTW4Qdveb0nUinjRC9Ue1+X/lk+DsfB/e+WtOZeDH4dKoV7j9pRuFGpUNU9uV8bhZBCkPaHIADtVjcvlNxh2cU3+ozyRuJxtx9qQVKim6z2bS+axtFWEkEWwCbTEUaolejURN5nzg7BOXcb5SKWP4S7l+XIgdFI= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2217; 23:M/H+z+C5mFmtovupETOH1zh9e9DZ8qanVhn50Tl?= =?us-ascii?Q?J1X0p5LbICprSBk43Igzp3pRTkL/WRo0edFSvyAFSUcSWiGQZgSa9Qw3IoK/?= =?us-ascii?Q?XQN/IKXFMfpsvcp4eze4AUjnm/85dXo4Bdn62gCSZvOTt/1CqC0tOtIEEz2R?= =?us-ascii?Q?90U1IfKSFOLIJ7E8aaXWyjarDuWTOpVt8rLCeDHxb/qCbn0kCWy01NSUB/ST?= =?us-ascii?Q?jQEyQLav+x15BD2k48/PmfnqHwB7/T8+4/rCNCqO6uSV4YyhuYqYCwy7fYaO?= =?us-ascii?Q?azKsa76j53UOH1B4Twktl7zSXe16TYGjqtAYADVlZ6aBRhE8YRoTHrSqVQu9?= =?us-ascii?Q?MQs5yhSsuGFnWQWuQaOHKT7/cLbg3U9KYL/4NZOql5ks71I025rVsrXhvPu4?= =?us-ascii?Q?FJ35iEDxbHy1GVQr/qleyU37hr/cSDpKJPqqzTA9YaYl+98PpXhUFLcIbv+E?= =?us-ascii?Q?Z82mJ3WGgJ/vL/OCysqQ3tyytE8padyhsq3mxtEYomMCrjGVg5cHTGBqr9hL?= =?us-ascii?Q?/b9zT/qakuDcD01KEyhoWOVNLCi0sMIWVoRj2Q+8CBv8BTHmMsh0CglYtweg?= =?us-ascii?Q?N/rvTmpPlg/AD1YFc5nLr7/f7ZUkDBHbs686lzPkTGI9hhxJwDlklHoeFumf?= =?us-ascii?Q?rKHNHGOiWBHkGCPtO3L5FHaxPvBwLCvgLBoc3YLVOjWiTN+9FJqYXfZYiir+?= =?us-ascii?Q?62z0zZzqwII35tVtqtvQE4S5y4uA5nDIVwsM39uatYyERsNBuVlOP9cvRdXN?= =?us-ascii?Q?flwSUnBYzu6QY/9wV2K049xpYmk50N20hV/JDn231MV6ZlTYXw+TamuRZxzA?= =?us-ascii?Q?6zv8ScM4lRdtdpeETr1GdZBYHEeqn8B8zlux4ffudj3unjkyAiD7esVN2nYM?= =?us-ascii?Q?6Xak60DsQEmxfi7cVih7bPd6sqEGCYIYxyusJZTtpGKq9aCmjXkvSrtYb542?= =?us-ascii?Q?pJqyqFeycu2gZQ6+LGviGdWCwaCQstjUW+CcD5czW/UaR+fzMXXTl8UA0Wlk?= =?us-ascii?Q?t4sNi9y/ZgUHJVaVltm+vq3Ut6iPbI0q/JDJIH/44BCldjg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2217; 6:JJP2QVONmT/hUxHTVgPFZIzl7OUVsZpJ9piThfH3y5j23OvbFXBfNEIvbUTW1jUXsCZSxG1ROwWOrj/mmWNo7PFjms3fTgcTz9Oqx0TEiJg9nakXePLNJlTg7DO+Mrp30LZo0D5dp7V1DhTAgAGBC9uPizngfcXJbGLLQrcfUcCiCg39ZoiSkad4Rfp7DRtx8uwiH/I7l1JvhdEn1ZttAaEXnmvt+0ANGvoqfk9tVID/quh+0I/YYmERnFb4q2MyblJAxSdqXZma9HJHIlDJ+KVfYxgizu51vYSD/fdKcX6S6yuMQJTtXQid6MIS1RBU+FstYZwwBUr7HjcrW+I00A==; 5:eKse0WJzRDhuDM9tcCIkgu3Y+Br3uiJ6gWqdwSOjs7DOEC4oL9u1bl11ZZOOlb0UwnJ8n2iSVb5oLf2OODHEYst4Qo7axyP67yKej/M9D88/4IOmvFQ8Jxgd7XFO72MRyixVhzoszeStrs6jaN236Q==; 24:zVu7+2PS+qhI5OliWTkvG3Ue/ewDp/6DlSqNz9VkkCoZSbwHNwuOMRi70UVGJ7zj29Da5qws4lg7Zg7jXIBASY5xLbh0QINR+LYTO0nOnw8=; 7:4vtbSV9Lde/689pS52ur643sQmMQ8lDHlKZASxDEC77fALAGlwWPk4lIqJ0IKfjPX6DBMNwsv9mmFMXFeziLIeAwC9f1FvMLyOkFio3NgGy+4g05AdE12wigStHyvRT0P7HLU7smU+sdFW3I+RKU07621gnVW88Ca1QCi3DvKapzXINZ1UC9IISMKab1pGwK0b9O+E9wDP1h4WltqK3/HB6PfclltxTSat3ic2+t8MQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2217; 20:ngLwV/RSAZTLTkW6V61IuzNme2XdVNcViLh+mjsMSsvtvYsXgEgqwL90HNrNQkFkSE5SkTOP6bHpGuN0RoiIfAkjviYOPcJHUd2bSK65P3dpdZwdoI2ZX7ROxTmaTYLWgSziwktHwMfWD/gOJizBLZPdx6UYG+/2Flwty5lBXI8= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2017 16:41:53.1649 (UTC) X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=0bc7f26d-0264-416e-a6fc-8352af79c58f; Ip=[195.214.232.6]; Helo=[finist_ce7.work] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2217 X-MS-Exchange-CrossPremises-OriginalClientIPAddress: 195.214.232.6 X-MS-Exchange-CrossPremises-AuthSource: DB5EUR01FT003.eop-EUR01.prod.protection.outlook.com X-MS-Exchange-CrossPremises-AuthAs: Anonymous X-MS-Exchange-CrossPremises-TransportTrafficType: Email X-MS-Exchange-CrossPremises-TransportTrafficSubType: X-MS-Exchange-CrossPremises-SCL: 1 X-MS-Exchange-CrossPremises-Antispam-ScanContext: DIR:Originating; SFV:NSPM; SKIP:0; X-MS-Exchange-CrossPremises-Processed-By-Journaling: Journal Agent X-OrganizationHeadersPreserved: HE1PR0802MB2217.eurprd08.prod.outlook.com Cc: OpenVZ devel <devel@openvz.org> Subject: [Devel] [PATCH RHEL7 COMMIT] mm/memcg: sleep if mem_cgroup_force_empty_list() stumped on busy page X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development <devel.openvz.org> List-Unsubscribe: <https://lists.openvz.org/mailman/options/devel>, <mailto:devel-request@openvz.org?subject=unsubscribe> List-Archive: <http://lists.openvz.org/pipermail/devel/> List-Post: <mailto:devel@openvz.org> List-Help: <mailto:devel-request@openvz.org?subject=help> List-Subscribe: <https://lists.openvz.org/mailman/listinfo/devel>, <mailto:devel-request@openvz.org?subject=subscribe> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org |
diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 5372151..0ddcfd5 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -4039,7 +4039,7 @@ static void mem_cgroup_force_empty_list(struct mem_cgroup *memcg, if (mem_cgroup_move_parent(page, pc, memcg)) { /* found lock contention or "pc" is obsolete. */ busy = page; - cond_resched(); + schedule_timeout_uninterruptible(1); } else busy = NULL; } while (!list_empty(list));
The commit is pushed to "branch-rh7-3.10.0-514.26.1.vz7.35.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git after rh7-3.10.0-514.26.1.vz7.35.7 ------> commit e05136b00c77d9391045d556c8884d9e985af708 Author: Andrey Ryabinin <aryabinin@virtuozzo.com> Date: Wed Sep 6 19:41:51 2017 +0300 mm/memcg: sleep if mem_cgroup_force_empty_list() stumped on busy page mem_cgroup_force_empty_list() executed in workqueue context. If work doesn't go to sleep the workqueue engine thinks that this work is making progress, so there is no need to start more workers to execute other works. So, if we need other works to be executed to unlock those pages we might have a deadlock. I think this easy might happen with fuse, something like this: fuse: cgroup_destroy work: mem_cgroup_force_empty_list() //busy wait for fuse to unlock pages. queue_work() //this may have to wait //for mem_cgroup_force_empty_list //to finish flush_work() read pages and unlock them. The solution to this problem is to put mem_cgroup_force_empty_list() in short sleep() instead of cond_resched(). This will allow other works to make progress if mem_cgroup_force_empty_list() is stuck. https://jira.sw.ru/browse/PSBM-70021 Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com> --- mm/memcontrol.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)