From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753519AbcGVJrz (ORCPT ); Fri, 22 Jul 2016 05:47:55 -0400 Received: from mail-db5eur01on0091.outbound.protection.outlook.com ([104.47.2.91]:55992 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752550AbcGVJrw (ORCPT ); Fri, 22 Jul 2016 05:47:52 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=VDavydov@virtuozzo.com; Date: Fri, 22 Jul 2016 11:12:59 +0300 From: Vladimir Davydov To: Michal Hocko CC: Zhou Chengming , , , , , Subject: Re: [PATCH] update sc->nr_reclaimed after each shrink_slab Message-ID: <20160722081259.GE26049@esperanza> References: <1469159010-5636-1-git-send-email-zhouchengming1@huawei.com> <20160722074913.GD794@dhcp22.suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20160722074913.GD794@dhcp22.suse.cz> X-Originating-IP: [81.5.99.64] X-ClientProxiedBy: DB5PR06CA0006.eurprd06.prod.outlook.com (10.162.165.16) To AM5PR0801MB1857.eurprd08.prod.outlook.com (10.168.157.14) X-MS-Office365-Filtering-Correlation-Id: c4e8c874-7573-43d9-72d4-08d3b2080196 X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1857;2:AzTuv2PaWJis9da6RQITD25NGAUKl55bLO2fSG7wqx84O74AU54AzSSLHFjuL/l1ZPvbDNerj/4XB3K8q/F4MyQJWI51mYvN6TrE9xFedBey7aKfrF/F8skI4B2BnXxGvROeNUC727r3jGWj56D7FlD91ZU9wl4nT+GKbBFJsDOghgrzYbw3J3nUcAYt7hem;3:e8fSY+y1duTi7LlUekYf5/dQ8GWdbdGvhTXKhpcKmUQgIb1l55WyXULG64fHZ7IxRCHhjAsfYFiYI8ei2YVWfYhAfeJDA+q44hWqnHrqdm1DwbSbllp6sxPsbvIjLpYo X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0801MB1857; X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1857;25:zVO359zxvQZm3ELTJkdm3MDFLCoT80ba+ISLfrfmQghTDeUn5rMPIC56RpQWZvYsfKYGSBEkQNLW91d6dCe0UGveXlPMR4IfrHL7x+potpIDSfrx+2zipYxYbNpuuspbdoqvQ8eLz3X+YZvcUuLlwlNDdOd3VSGwLRy8L735jh7sEn9YG5ms54iyPDk6STcDeVGcUMDxCBTzcmdrzR0xxqA4b1trTdBoxlV9zrYPX5+WMaHzr501BwhOOLxKZagsT5HoLlK/65eWvi9Hc2rHLUbKAg9A6M3ABXD8aksTBdzSE8R4dix0pbrH/8jpm04A6vzDMkHj7Ql1vpIH9mB8EYxznxz7KgRIkefMp9iZX2uQwrMEZYQtG1uxePJ9zeF8uZnHuEtY4UlcIStGNIlYPfe8HUmqjCDGXewBmCcDA7+y3otqVsM1F9S6opXV7YSjsQqhOOGw+LXi2owJ/VO2SUd61xPEGw4Z/oq0EXZZdAppV8SQNqy9CPIdAgAs/aqbTYEHupshBP+rJHgLeLLY+JBXvKwoxEVqDzmPW24pcdcTlC2Rd5Pk1Oh5xZmyjn8L85C/h0IeoISVty35y8eDfSDXRSasyfJEwwTTUVzsI3hFQcy1rEW3sreHf0/4fEVQc2Nj6jhh5AM5q6acWuLweA+g/S1pcwIxSDNnodNoPWjJ5LUgHfZseujwBPAme0iWqk73XlSaJkeQsgyQYPfLdhlG6O/qsDTixm2k8w9INIJDr82PFSQKs4rvO2p1kwGjL8nggv5DxXcvSgY0Ach67NquJ3iz2Ul5+I2Z4fqDN00= X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1857;31:UCmJLvnVQwX1l7GAteyNjoKGaIjjvP3FK/s0YLJ3lNTxXmzNIp8gB242YDLIpYLBlXAWjYxXx2mpa9++95pNmPxqz2cEaBBcLKCTaNH6edGyxnoJ47Achqoc1e8HPo+c300cxvIqLDu348J/y7s1g6+lMPlELMI7nI398m3W5z/ATOSS2+moTgBnwGoL1nHJGOWCLpAWGwhcWvALLWPcmQ==;4:eX4gGYZji+D/6zXorPFj/2daLcBEKMaoPO3ozmd8mesZScJzCrr19JDuw4yM0ZBr0dTY5bNWJJ15q6UcudPGlInIKR1f4gwVLK6wvUCJg+ojyGwtynVuwuWSLxMqlpZgGh4gQuSCszO7dJAT9vOwAblR1DuJnav28wxrWR9slriGUhpJdRl1c+jp8Qp18oj147+fOXKYkrpeSB4vXBzLhCXBI9yzfrm/EqMxPQzZ+Ynv1r0KDNc3AJDY6gcPxKZhNdoaqZcM+nHFUq6eFLYORwGXp1DSLTToHUd1iD4K1U138VRkJ/QD3tfVxIKXvNLzMvrOabPFB5O0b6w168gRMzzoIU/ELI+2QrjVagdy8vdnirTqx+b8cfCMTl/5XHIqQ1HQny/BA/1vOfEqo+Y7LYz+GSTLeiJImLjEzC1qUr8= 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)(10201501046)(3002001)(6041072)(6043046);SRVR:AM5PR0801MB1857;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0801MB1857; X-Forefront-PRVS: 0011612A55 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(7916002)(209900001)(24454002)(199003)(377424004)(189002)(305945005)(7846002)(76176999)(105586002)(50986999)(92566002)(2906002)(1076002)(106356001)(68736007)(86362001)(46406003)(6116002)(110136002)(2950100001)(3846002)(10710500007)(77096005)(80792005)(586003)(7736002)(97736004)(81166006)(81156014)(101416001)(23726003)(50466002)(47776003)(15975445007)(54356999)(33716001)(97756001)(4326007)(42186005)(19580395003)(33656002)(2420400007)(15395725005)(66066001)(8676002)(7110500001)(189998001)(15650500001)(9686002)(6606295002);DIR:OUT;SFP:1102;SCL:1;SRVR:AM5PR0801MB1857;H:esperanza;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;AM5PR0801MB1857;23:XubXWIFr7+vq60Xnrcr5wnJKmSSylGPct2a/OPN?= =?us-ascii?Q?GYb3gBNieVwJtCTT5axnoVMzU7/kbGnH398s9SHcNaPyx1NIU1JERi6bQF1o?= =?us-ascii?Q?jkbpU+ePg5gZYLilm1IT8zqF1GRJKdP2iVhnCISWpu1RhS0TQvV1uaIEyI4F?= =?us-ascii?Q?aiI92NMdCJWZRvrQ5hXnxkYRdm0e058zuPMElN4NLXFsRJr3knoi9D56eueQ?= =?us-ascii?Q?nOASirvyCu59tjTsL00yFQNkbFqNr8ymCn85EXb1P9WYHLshmnFI2XpbPZvu?= =?us-ascii?Q?XSAYG8EG1Pcwqf4ZyGWIMwmoeejn9H4RsgcGPc3nZuwCJk7OC3ThFosxgcmP?= =?us-ascii?Q?12bM90Yj2Mlwz8xZ79AIj8aWnmRBUBSRmgM558zoe1+VzxAPti7QRwR2mTAR?= =?us-ascii?Q?cBk6n4G+thINJeV+bUkpqe9L8OLw/a1jpSRYmFNHN7PVy885I+fKNEUw+r3l?= =?us-ascii?Q?GLG3yFTJ7lAjtUl07Kr5jZn/HoKOYnQv4sZKmk+LXsTUX3yu/ouhNo1MVUP8?= =?us-ascii?Q?mrWagC7z65ohZr6DDBVJZosOr1wFUHaGlcBXHzU1Z96iSYYOG3Yy7SNeu2Zc?= =?us-ascii?Q?Mdla++YatMaz8V721mlln2b0DldDX7lZCjT29X0et9HGgWFYh4b5Uq8pd3T7?= =?us-ascii?Q?aOhh4mG2DNXpwmObjzYyGocRlz0QzwZupJzC4HNc20EbFOKHBBvYzuxTjiWL?= =?us-ascii?Q?DwYQ0uEE4Ocv4tVb8+/X9CYBbVC0DcLgnvU608vQe4kUqqvd56kJ5npDzBCr?= =?us-ascii?Q?wgpHn8sNWW1Zg3S5xQRrCxCFytw0l8eI92B0lfHOy5zgDxcLvChvjpG3MEKu?= =?us-ascii?Q?aS2nm+8z2J/n7vmmeLsE16KyDL9btiH1cvY+oHR5WtC3PymQ+baxtEMe9ZEO?= =?us-ascii?Q?iq8L6FZrzjBhr22Vp9nZxJ1p1o83iiX4MTqjWiG+ZPPeACRhCxNqO6Eex+8P?= =?us-ascii?Q?X0vNJccl/gENG0TGR4RJLHsxLm5tAXr6A5Gv+wwFatW2qK7zZE+Up5B0bb+E?= =?us-ascii?Q?C/VIAaA40UPt/BK79s2EYMaVBajyOYb+3o8PvhWCXHLTsvKeF7migNhqHBgm?= =?us-ascii?Q?f6g20YD267qbsQynxCh8KODI5eYF9aXcx8XzQ9MQb814SGTyqoyHvuUrzDRr?= =?us-ascii?Q?brOJSebKuXsAhvva+6+Oz48M8jWcnfrorxJjrs9/wJE6MSG13Kd2g4zDDrsf?= =?us-ascii?Q?fViFFjGoInhUCxbzdSIjWDOySFTv77y+mkWx7A/s5gOuCyUteO29IJno4U89?= =?us-ascii?Q?N3RZSg+bJjlTwClDkPolOc5Ni5/59SwwYLcxKQDTg2Fi8r53CDI2VNd43i1S?= =?us-ascii?Q?9u7+Y6JaYo8hada2iraWSf/1svIkYvQLD45JQ2L/ueJVg?= X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1857;6:mrnaJ4/c6xWsdCwhY+a6Qn5gktxdHvhKWyorDrmjFdYyvpkVJ/RkhpCokm6hQHbjKJQtDDjVRWnqo6bDXDUX8OzCIE3ViFWHB5yFz8B04b7w3NLk2OokKi1OSAn4OxWoJjscSPPmsavwUn3knut5jEcUxGgYfgTXpWMgD97KA3oyPM2mp+ldvtyxxMLgCOSs81XqkPd4UzT544WiuoeRP5cOzzFboXeqO6DxCNl6LfdJDzkZT1YoaqSCjqxeUCDlqZ3cCox4gWlJTqbtxc5Ox0tkJ99Dnfr/WMtaxPobAj0zKg4WA7Tg8Z4oUXU+tKFb;5:YNJKJlIXq5R8CnpALu+/6Q3QKdGI2rj4CMfQ8VAYMWT8L4S3LKPdfCDHYBPEVW5TYME4R4dQPZsepBPlbbEfGxea2CJXUm9qO3PNIBhGpn+CQ2s/E4LQdKLweeKOZ0e1EbjMryOaFsJ484qifQn1TQ==;24:7Ol3qFywHBgNE2LgKe70Nqmv5FyL46aKU07RBUoYligi8f/ha33P3lnIVlkHKHMddR4+ILUfZFhOxQGRMFeCFk5kxzNrjVImTBPuFLvHUWg=;7:79Thz74QabuNQ4Jmua/+Gj5vT73L+DKq4dt/gssHtpcuAkYV+PAdYfT3Bo0ZwlyoN7CfOmGbf1Zt/jCs9EoGkXN4JtkBlT61t1RRnALo0UfbBW05rtakdugyA5c1RbgQeZok8jO2c494/u0z0IIcLZ+8WqGdSh67ArD9eu7Xh1eZss5mVpiHMW2uahmV5wfT4aHkytDCjK5w7Yi3DyyARTpmpVDwSVGjAyhpWFgLSRThOtx9Si7UHJ0E9znqkuGX SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1857;20:m0lqcK2zRJnlh7DRGR9VzitTUZw54o2SOSt5Z0XK14NTXHR13ZUfMXYLENGjwrXl0UxzQRTZqRvh7V3F+0TjDTql8m5cysRtQ/2pwItgNOOA/d3ekKN7qJiRWRMl5vyiIvcjY0+9g09os/qFBMreHdjGROfg0gHElY5IjyCSXbg= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jul 2016 08:13:03.7164 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0801MB1857 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jul 22, 2016 at 09:49:13AM +0200, Michal Hocko wrote: > On Fri 22-07-16 11:43:30, Zhou Chengming wrote: > > In !global_reclaim(sc) case, we should update sc->nr_reclaimed after each > > shrink_slab in the loop. Because we need the correct sc->nr_reclaimed > > value to see if we can break out. > > Does this actually change anything? Maybe I am missing something but > try_to_free_mem_cgroup_pages which is the main entry for the memcg > reclaim doesn't set reclaim_state. I don't remember why... Vladimir? We don't set reclaim_state on memcg reclaim, because there might be a lot of unrelated slab objects freed from the interrupt context (e.g. RCU freed) while we're doing memcg reclaim. Obviously, we don't want them to contribute to nr_reclaimed. Link to the thread with the problem discussion: http://marc.info/?l=linux-kernel&m=142132698209680&w=2