From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966717AbcHBPAM (ORCPT ); Tue, 2 Aug 2016 11:00:12 -0400 Received: from mail-he1eur01on0099.outbound.protection.outlook.com ([104.47.0.99]:59776 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S966481AbcHBO7t (ORCPT ); Tue, 2 Aug 2016 10:59:49 -0400 X-Greylist: delayed 89114 seconds by postgrey-1.27 at vger.kernel.org; Tue, 02 Aug 2016 10:59:11 EDT Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=VDavydov@virtuozzo.com; Date: Tue, 2 Aug 2016 16:22:00 +0300 From: Vladimir Davydov To: Michal Hocko CC: Andrew Morton , Johannes Weiner , , Subject: Re: [PATCH 1/3] mm: memcontrol: fix swap counter leak on swapout from offline cgroup Message-ID: <20160802132200.GE13263@esperanza> References: <01cbe4d1a9fd9bbd42c95e91694d8ed9c9fc2208.1470057819.git.vdavydov@virtuozzo.com> <20160802124231.GJ12403@dhcp22.suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20160802124231.GJ12403@dhcp22.suse.cz> X-Originating-IP: [195.214.232.10] X-ClientProxiedBy: HE1PR0801CA0023.eurprd08.prod.outlook.com (10.167.184.33) To HE1PR0801MB1865.eurprd08.prod.outlook.com (10.168.94.8) X-MS-Office365-Filtering-Correlation-Id: 81347d94-973f-4c7e-b4e7-08d3bad7ff00 X-Microsoft-Exchange-Diagnostics: 1;HE1PR0801MB1865;2:n/dWomwqeGqfJFuLR9YY2BLUvEo4YcOUDeY48i7hqdFFjApFMuhrbXHGRrhPnNnougp+8MX6LD2p05pBXhpcCwZC3+XDwvm0Cj7yv2+i13IYOTeWef++REGTghmRG1o0gEb6Fbn9rrFEevLGfUavpe9j/UdSw/u1P1yt+ECPLEaHr/QUw4gA0kEqfEmpMMh2;3:jA2f2oGeojek4gas5LHHZP2ymcpXhIUh6ZzjO3/sOc1B8UD7WMtdFY9N8t9KaMAPnzAI+jAgiLrUJwl0H5ZS+kppFmvj7L3oN6WfM/YYGDHPd0/TD3aWe/8DrHQnv50w;25:6SZUN29NXOq/n/knkLQyRr7vyb2RDB6T0vt8xexGaWafjmE/+hP1p3FJKQBPq4HGCVkVK2qHNFq9/vXi6nyAuW58F9k/QJxblkQKNIIYZbLN2tN3dXS+hRn6r6g4Qt5mVNA12ZNeayeEc1eQJMlEsswfdLMCMyKEQGoFVhwsyhaOyzXwn6uk3VGiQOuOxzIaQIAs1sygbuO+/gnPGg8gOWjsuuKB7W8W1WmmfNeJmSD2tUsWmPJ+YU0HQDq48+DZkAsZhuQZ5bCcrL/8tVFeR8ETCjk1trdsudVIAfI0mjvnlV9fxbq10YV0dvyYvrhzkqr1y9Yd/DvhbrHns0KEJz+GoooYbhzbjcYQ/Nt5k4mqeEECGy+/E10jZnnrxMq5rinPrUTYmPsH2vsMpcmhB/J3JRUm+KXn57mkUafO3hs= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HE1PR0801MB1865; X-Microsoft-Exchange-Diagnostics: 1;HE1PR0801MB1865;31:tbYazSjGADXCR0eEX/EdZwa5oeGC0Q1DJ809ePHcAkrd57NsdBTYEY4sORZE05X/in8Yri4PfvFRAKNxswNaPM0Kz529Sm+SIB5mXGLpmyqpHXJyOJHR1djOz8NlA3SkCkQSJas4yEs1OtrH6nlHC8+dSNTO35pYXsh6i2NuXxnudT+xnsuv8+gc0JIHrUueYfUE5XKuLLfhLqu0kcZFYA==;4:0/rojocjJyozbcad3wiRIz5YU1CYZ5RqrrcgSZKu2pC/HfS/gDmCtkPEb7MCG2pWsQxylDuAv5PrRbkU5mP9AWnzFv5yQWnZQRx8qWSlS7YP+4DK+KAJpryD/ppGtyaOPT5WHHxUAB+L4u4tEnmh/4efvHIZADokMmydNPOXNLO/ngN0kliSdLttYQMCXm69rlHfOSuOaM4XU/fN2ylnfsy/JRTZUgi7OcG/3xgkxDTOaHYZK0K7Ad2r677/e/9K5x5a8O5o9CjDtsUW7e3KycvZrckWA0gENon78p9ReS2F6rQ4ZzxF2t8RH+eHVfGBzPDNfjyNRQGEFkFxbu0vu/5uz14CbN3JZN9wkanWPmEpIfVgFEQbp8ePVxItBy1ZWfxzo/uEGDtJAbnrv1gNDxDZeiAw0eUnxYCgbIff8FI= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040130)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041072)(6043046);SRVR:HE1PR0801MB1865;BCL:0;PCL:0;RULEID:;SRVR:HE1PR0801MB1865; X-Forefront-PRVS: 0022134A87 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(7916002)(377424004)(24454002)(199003)(189002)(77096005)(97736004)(66066001)(105586002)(50986999)(76176999)(50466002)(189998001)(46406003)(4326007)(92566002)(110136002)(2950100001)(81166006)(54356999)(42186005)(8676002)(81156014)(47776003)(33656002)(2906002)(80792005)(586003)(68736007)(3846002)(9686002)(86362001)(305945005)(6116002)(7736002)(23726003)(106356001)(101416001)(97756001)(1076002)(33716001)(19580395003)(7846002);DIR:OUT;SFP:1102;SCL:1;SRVR:HE1PR0801MB1865;H:esperanza;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR0801MB1865;23:EKaLHIouz63X90Ce1YAK2GnMm+p3y552hFbN8lf?= =?us-ascii?Q?ITeKgJIhvcmDqoL+ExwEXJJgTtxhmDzARYvUssPwGUdDsyUJwyhBea79NfFP?= =?us-ascii?Q?w2uIcjj0hv//9ayitgWBL/n4sKcdC9pQjO9iboMCAETHdNnyN7fKGi23ya0T?= =?us-ascii?Q?R7T2rxCvuVgXn+FjN3h13R85jynPWJkL/U22/41JGkHAhmWHYczNXHc17WCJ?= =?us-ascii?Q?W9oJ4p4r+FMYDdys9U4e7JcYpvK41/v4UThnOAhf4r9yrQh6/VTHpaRAOUjp?= =?us-ascii?Q?GxlPwMmXj9lcz3xGed4/MU094Vt/uqyOLyO+eY50QIFuHKjX5QliJtFuv4Fg?= =?us-ascii?Q?URKZz/QQqLQO8vqbCcabLLFW7ZgqLPNaFQHLqkEOuKJOLyKjXDA+W+BpCRl5?= =?us-ascii?Q?Eqp6RsA7BH4ZQyq3f7wkeBKMqg4r9+fpfrvS42L4TRZjGhT14ioBhdnq3SMg?= =?us-ascii?Q?7VkDMphQKCBRo+lhaHdOAaTBqBhJyfINC6f0E6tpQ+ZE0f766XCOv6qbj6L0?= =?us-ascii?Q?2mvT00JD+az0Bq7q2Vf8nWc8M3CBVj6lM9nSmZ7OKJ5JjFlplZxGTjlzvW9p?= =?us-ascii?Q?XBvjEdhYoyvOvQ3oZEJqlOh3ilaO7oDle3uO+cLZBchTHgAmaY2pFK5k6nGl?= =?us-ascii?Q?fVfgLJZYom/pgrtKbK2ACiAn4eXd0R3IQZImnRNPfez8y73bQdalnLq96fDJ?= =?us-ascii?Q?B8DTzQgoLvx3ETmiWX+IxPmUP3+hF4evG7CxM7cxnsW2sXmnY7MCb/ejru7U?= =?us-ascii?Q?1M39g11vBnWgLJiBPRa+v8Ulkx32O+ldkbBugil+xDtF/PhCNh3aUvEyhh3j?= =?us-ascii?Q?yBLZrACckzs/MTp3arcGVK8HEppsc3ZtttbpjB6Y7BF1fcpgPySiKr31kajd?= =?us-ascii?Q?h+2sUIlOq1/vr/16gxLlAVZaz6nZ1EZh9DYWNOrOnjoBR3mbjOGkJDFnsvm9?= =?us-ascii?Q?32AomGW45riMmyZvEbnGJT1pZ/aBB6fGaIkyAIym+0Lugyc7DRF1O6N+uPHt?= =?us-ascii?Q?cW7MCkRP9TkAM726RxZ2Y8sZsci64/pIjsFiSP/bpeALbEiuIPyazNS/J7Ss?= =?us-ascii?Q?/BPYfQAIu/ODvPnvXKtOkGln+hXtYHHhB0NFZYxojFwKFndelgv42BCHhkZa?= =?us-ascii?Q?Bryg0Y9NKSV8=3D?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR0801MB1865;6:gTXeYsErypki8L9GWUmflNfMp0bUZzTJUMzaAPUfJlIJSbtyB99xREx4/X8Wp5Pwbluoz919MonmE37vCNfeldI9ZStjimmmopG0qAFh0eE3RZczOSo0TfW4UU6tOwbT2aBFsOlE6Hb32NmrV+DigfTun9oqR5u+M+Q1Vu8Zlr1YtsCtSXZfdreazAiDElTW/rY8u9cJrTHvM/I9TwbpInl+iKGjRidFzYwXOqQzYQnR19dDnL3VKsG77WQLhIn5QKjYSZed6iWCGPk/fh5+UceHo3MXgatxzq5Fz8K7lRJU6EEqh7jyG1eVKrQP5t5r;5:5ap72dmHEgbpYRQeD4SNUEnCf9r7dFgrLTHIJ1eILn2maCGgfBAw0H0iqWHcEUaOtLQpoqd3XlQD9FWYCeNIBp2DcTU7V5z3feiqix3lM8WWHfgZzPPxWnw6E6UclOrKNJHVbCt4OTu7XiuEGtrBAA==;24:Yv5iWwhv+qhM/I1c6BJDPfmgWmBagw42wSPorjhjEQTwDQzhZVjXTscGYj59xitXHpTRnVZRBO/DyeqcubiJ7Z1ONlMnrCde9rRr7SHGFag=;7:i7EDjg/lX/8NWkKfXHa0Sa0HYi7hqYwKlHjhntJN/jTypAplTSVAVK3WA4kZg+VxJ8CCf+028q6Yf9w5Tic5c4sfvXmdVqE6RSl5fyZJ4CPJU2CzXJgMJGsvtxeaJJUWu2uhhtdtcdgFQG17zBNCHKqdDwW+K3YtXVz2E++2wrNMkxZfqdL5z+hU7wzWYAy8kUSZ/KMDTzypmuqG0RIZVEf77WrlKSAORNPcvXMVW5v9OlSy5FPwHJS30S+AqfXA SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;HE1PR0801MB1865;20:yvRCnl/XREy+BxH+i1HmCVzYfScROjj6srW+FEc4eXmGKD9DR8lfa/feP3X9jhb+R0JYtdhlko81GGnY+gR+qOpSqkWKyHwkNnEJCuAUtX9LtY4guctLYLK/Fm0+Hs8p+uosVaa4JTD6aTGM3YjggJtLrJ5zPJLrRvqSeLNezjA= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2016 13:22:04.2078 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1865 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Aug 02, 2016 at 02:42:32PM +0200, Michal Hocko wrote: > > On Mon 01-08-16 16:26:24, Vladimir Davydov wrote: > [...] > > +static struct mem_cgroup *mem_cgroup_id_get_active(struct mem_cgroup *memcg) > > +{ > > + while (!atomic_inc_not_zero(&memcg->id.ref)) > > + memcg = parent_mem_cgroup(memcg); > > + return memcg; > > +} > > Does this actually work properly? Say we have root -> A so parent is > NULL if root (use_hierarchy == false). Yeah, I completely forgot about the !use_hierarchy case. Thanks for catching this. I'll fix and resend.