From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751318AbdBWRUJ (ORCPT ); Thu, 23 Feb 2017 12:20:09 -0500 Received: from mx0a-00082601.pphosted.com ([67.231.145.42]:47036 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751211AbdBWRUF (ORCPT ); Thu, 23 Feb 2017 12:20:05 -0500 Date: Thu, 23 Feb 2017 09:19:01 -0800 From: Shaohua Li To: Johannes Weiner CC: , , , , , , , , Subject: Re: [PATCH V4 4/6] mm: reclaim MADV_FREE pages Message-ID: <20170223171901.GA20444@shli-mbp.local> References: <94eccf0fcf927f31377a60d7a9f900b7e743fb06.1487788131.git.shli@fb.com> <20170223161342.GC4031@cmpxchg.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20170223161342.GC4031@cmpxchg.org> User-Agent: Mutt/1.6.1 (2016-04-27) X-Originating-IP: [2620:10d:c090:200::5:2185] X-ClientProxiedBy: DM5PR2201CA0045.namprd22.prod.outlook.com (10.174.180.162) To MWHPR15MB1648.namprd15.prod.outlook.com (10.175.139.151) X-MS-Office365-Filtering-Correlation-Id: cea7ee47-3ce1-4ab2-1694-08d45c101afa X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:MWHPR15MB1648; X-Microsoft-Exchange-Diagnostics: 1;MWHPR15MB1648;3:wSSr7EpJWKD6nZ8tmPENoi+sE+rz8O2s3rY+JCo4k0edtyEFBiJZC4N7aqMOoFiOAgw1uo+2sm+bH1X7fAF8S61pE+3icWeOlZ6LXEusookOcys/cYig9EDgBlo5CVuMZKIhj1h36ZbCcPthJahWgHZoLV/b1Y+3Ym8ww3HK5jXMQAjoan9EmpdP4Pvu19haJ00yABsnptdHTB+wrubpNhSFvDgWJsasKwQM/t+zw2v1iuijcz7UnptudhfY9fvBcxvOvV1qazwaMBfKgg6Z5w==;25:mNm2DCBvn3RcAytET8lW9cAaqyQyf2ESvYO40+3/2ux8hN5IMQTFzOuoAvaoSlZtnUaCLoMiXasYPfRIw5ahbO1WlHyeLrb4813/1+V4fAtW5XjN2YXeJpTkbEZ5PAUFHFYZrDAgk3FbKX34wOQhFAe3jP17DK8OyVpGrV+F41BMPimmdwoKJDc4a76ZqCJTYFL/74Pa20r4VqxU6QGhtUEE8nRv8L7vPjeAXPHDTh3JvUvWSjIoLfvYBxtVYC5tCybEuQiHbYYriM45oo6kwmEZtKkjMAVYH2H4ArE3slgA1fNfmkqxWF2HDY9TMrDnlFZTsK6IibSjHCpvwQ1VubX3IgfRD7aPOJ6bdIqLHut12xAHwKmRpj11OTuAoIbFGAMnkH2MdmbEtrRuPCLf6Q8zA+a8ZbT9hDWutHCDsFBy0uCEuf+ZhqXHuLfye3xram6qDtBW4tRB9WcFPhlCSw== X-Microsoft-Exchange-Diagnostics: 1;MWHPR15MB1648;31:rQqtXvCBYkgFj3YjP8+KHsHEH68aA61FigOPQ3F5d/YRNGlHVjHpWrHaP1qpZGA+7eJvwspxXVG5sd8DFfmONGOrJWtzl8FLlHc0djm9Y/AB15P/qgquQvoL1bURcQiegwBibGVDy4n5aBpx1I7s3rPGE165JGFVn6fEG95jrh+WTWH36o1yRX7updQhtEPjqSvWzqCEhbbiihBA4F55jBYZHMGK42Jw9keLBkRFKrhC02dRz5ITAnNeQNOZfSfN;20:YUeK1M5nIrfhuIOMdF2zZTMlTXTSinsHoihArp5x+xaRJIoOuMVUvx4AxsqiIyWKNMij3D2C7o4/PKP6O1g90koYqmrm1gZCbpBQjkSvLE7I376gVWWh/Kaju6CeqQAlLH7HY+w3vi/QMrzFe9IMtNmypSMRDnym/2h0wUdZtLihZxg3mH/I+sgPqPz8vpcPIIYGprYHyzeXfEXmst/tyHSQ0IOWauXLuCSet6kyq+W5+LkeRFTuXrtIh1PAkxMONvN/pcwmCz5oULRDDeaXSECoRgMGiZCLAZGq80noKLCzSLjgHd6aYQEPc3/CggvJTiuGHmrBRaqMx5iMF6ZEmUYP3yo6HvuQTdRfHUHs4/4B2MyOrip7uoExDVnnm1Q+CoSsxFseep6kpLBSZOZtkt87H5PlxiQqiffW5YFdHJKOvk9izSiwLV0PeXqWBWBK8fazO6Jl2WwYxo/8X2g9J/cwbQ8SE+H/ms6YtqJrmt0TX7Wjvw1sM5STlNPU5vo0 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6041248)(20161123558025)(20161123560025)(20161123564025)(20161123562025)(20161123555025)(6072148);SRVR:MWHPR15MB1648;BCL:0;PCL:0;RULEID:;SRVR:MWHPR15MB1648; X-Microsoft-Exchange-Diagnostics: 1;MWHPR15MB1648;4:4qgZ0kxzdciZFmF2QK/cvchcICtXs5FcyvUsF/4raWwjg7pIYZjS4ogJcOL1T0arXMoDClc1QsnZHAb9Vs9IAlbDRCWdDyu3g0nuHQuceaIe+YdJZyNgVYenDFO6AL46Biu7HiboBH/CtmQAMG0d0s5Jw/fQMSKXWM2ixIbozroTWN8/7JRWUI+9bM9WevJuuUAxvECArcRcj5t1E9IWdYFA5IecBO1UTkS1QNRGJklb/1W6Ig7YOhnMf9wVg9BiezDnFA6YHKkxo/YEHhvwBpyhyyqez7jFBup5eQygaBJlvOC21X1d7grJrI/GLuGR6MYE8lStn3gysz1aREV0wjBKV04Jk0xmGXh9uyUtz564nehZb7i4m8UmQxy1nxys5/aD471BL2PtwT5B/cCygOcJM6bgnedOAMeA6nmRVp25fYLC4fEayPdyfW5GDrn7rkmFLMj/pYitMTLot/cC+BKvBhivod7V1NrC7+C9R+n5cQbJiP/QTKtNfuwmDB3kcrRSFR4FluWaplKTy8Dw//cBGH6sGLNOhtJR2pfB6RgoyDX+stmCXiMzeEMBLhXYe4GEERmvdXlNgPNIoKbTsMus4IJlIu3K1NQkMExuiEs= X-Forefront-PRVS: 02272225C5 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(979002)(6009001)(7916002)(39450400003)(199003)(24454002)(189002)(50466002)(6506006)(97736004)(101416001)(50986999)(54356999)(189998001)(305945005)(42186005)(7736002)(106356001)(55016002)(76176999)(105586002)(53936002)(6116002)(229853002)(25786008)(6246003)(38730400002)(46406003)(54906002)(9686003)(110136004)(2906002)(33656002)(98436002)(1076002)(47776003)(92566002)(4001350100001)(4326007)(6916009)(81156014)(97756001)(86362001)(83506001)(68736007)(81166006)(23726003)(8676002)(6666003)(2950100002)(5660300001)(18370500001)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:MWHPR15MB1648;H:shli-mbp.local;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;MWHPR15MB1648;23:F4EdKchnmvLRpi+2fH4yYeYicP3lws7hMSIQt3XEW?= =?us-ascii?Q?4BqDOHvL1DVDwidm0yUsWHz8vYaVIBzryCP0Nw6BeLhp1HYVMROFg6qT89WP?= =?us-ascii?Q?XPvtv22ikcWOWUJ+v2CYvuzcxIJhczs+PnYRF4+mkcSadrCu22FPsfyGX4Zi?= =?us-ascii?Q?JLiLPdGwIGjt1XUnkauqE0j0aLpjClSQyvH/EvxHcGsKZshj62onimLPtZCJ?= =?us-ascii?Q?918YbgGwjx5QBo2a3etYknJOGueVF/KiGxJOweSgcF+CKkkKZXDH0Fevc6wU?= =?us-ascii?Q?83gEiEYsFyz+dwWS287TJUVWoBLyzg16/e4IUIFmboi7tD1bI2ULdKkMaTAU?= =?us-ascii?Q?+8VTGfI2S0m7acJ7+GTn6rwoSZ6KCZrTCBgVZv06ADwBsRWkvQPaF6F4YM9H?= =?us-ascii?Q?P0rTCy+2t2lRfr3vpFgCnA3r2iH90Yn13VXNS6CzJwn3Oo1zYbA9BH5C4oVB?= =?us-ascii?Q?HTV0yVN+rU+CMZtkgytJOF5Tz/rc7LwxSfr0Q3S3/RifNZ8XLSW91XIQCxU1?= =?us-ascii?Q?7Xv753OBe4rLrU37TNqFm99lxLISIVoryY/bk1Zo0yZYmqTOuNj43XdtQKeJ?= =?us-ascii?Q?TrM7PmUW5yZ1j3U5dpqC4XJVGFFodaFyiSHbJrhRANhrfKz8LvC8iAs2U2IJ?= =?us-ascii?Q?lcw/hhQg0RnmES7hkzOYBpcx024tEpIOfof0jvXcNBBicxs9xWXAbHUtVfFp?= =?us-ascii?Q?tuBn28J6ZVCd2D89MlIBJp8e01CYf2iAN0+yEoaYY07jkNxRS2wQOQ815Qh1?= =?us-ascii?Q?WPiZwqSREo8S86+YCinp5ZNkSxoOx9ase0jERo1mR1lTeQOqre/jPvU0Rzn1?= =?us-ascii?Q?n6LfVooqVAht/KKI9cUB1Ro+W8AD1w2KPxWuSeB8gcRM4OjTR9Oy2OTlLyiI?= =?us-ascii?Q?cVFR8DZh30YRuHJObq9b3cjXgQsDFIEeLRxu1vonXHOedVTqNswb2h69wZEE?= =?us-ascii?Q?5elsvIJwJsFjXRwrriustdj3bKKMyiOU4ZphbBnUA8/3Z1xZ3YTNYwby31gq?= =?us-ascii?Q?QVIN5XIpN9ox3E4PEvN7JufXruC7NtueZ2fG1IMBus4Q/ifiDhXOh5l64yJn?= =?us-ascii?Q?+NqbqSWIQRQtN6fjhmEbi+xgmNvoGUZTRU+VaLrETZ3DQc0gX2uTCPO7nh3K?= =?us-ascii?Q?QOln3hNj3En4wUnDDDzOdjfGahZxQmlSHqwSzGVakkhsEk2zDAvs1ppYtovK?= =?us-ascii?Q?rW+A4YUQN2PMnF4AbqxaevWGWOf5pY/LA+M0C/xAyq7j7umQfpq8dNImdhNN?= =?us-ascii?Q?ruqDqEBj+ZGZYBdxK3YC/YKJteUrt71UjN6tBClv635o2WsS8+tRXeorNhHH?= =?us-ascii?Q?1OkIPAG4FbqHgUYaWaLZ5jXR05DmuaVmIcGdToR42Km9O4D72To24BanutsY?= =?us-ascii?Q?vnuoQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR15MB1648;6:UgAD3c2l6cKnPfTywHY30pj1Mis/8y0IUv52YIpGAq153FlYqWhBmxv0jt2atUk3g4eQpQgH5zE5SXjYgA1/Sk8bkZxjjGW9fjLErJqlzNZ+iwndiUNR5QZXAXuC4roXTRsXlMFrxTCHWljefIUnDJlGMIiPQgfMYb0hlQPCC9AantiHLaVfkoNRFHbMwMtiUAAMVneO4Ku6TxEmlXcDO3u++BLZjYAX23VTcMxR119onr3NodO751BBBhDGHTzfcaqlPQCtME1D39+TZo9Z340Kl+97dGow3/roJEk+BS9119uIfteIs10A/hseVgqikhrncF9VXuFBF07UrCsgAwuDGNR0GcrysVAGkmOBevGeIeQH73th+Ij1EYLTJ2bRn2cx7byWDnZaYQESBwaQ0A==;5:Y34Sgj7y4iQYewpgfrfjd0MF04g9hva/2iY6zsGVkHscxyMF4gRbF6tBj0/1JcqZUqpKtPkLP7H4nUiMdf1fM9M+4dzglt8sw/NTADfXd2+5r1q+ULJGEsFfSHMCxUyIK8uJ0XUizD8SukEIq3CZ/6UPuT7XAutellUTzMO6ZTo=;24:tC2BdZlKjYDZHUFD1F0NUocOHRrq4BeBG7UqiJ3EbY8RqSQ/uHdQyQugnMMq6ehW7Pueu3sqOiLruMUwfUX8tl2S6VmTRZsQ1D/hU58z5Eg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;MWHPR15MB1648;7:co6bjcspL9dVhsQiKx0620wiMhsiegrd1NHm4SOaIkbX2gBl/ydXoolsR82Jo0v1Wz8y1UFepAzLgBRpQwIXDNEBeBmwkhMyXInCf7uFelo6+mWCDA8F99esOf9FnOBu3rLKdUlIO+4iZuIfhYJTbb4RFkJfgKxIHSBl5+oKDdVi8hW1ff+eNVm9QE7RphbzmWml2BsGwIcFDWWYZNyHPC4pUrblwzOkGuqJ3VAgYTVyriB/edgf+aAzg1OxDZki692L9AnNYsYqXvs8gfrtyXSVAlELC+xgMeHcBVrSoZB+Y4I8chLZ5Ya0a1fbZ/Tci3agvBENKrpxB5pQrddQIw==;20:4XJ5tJKOniK7Mtl6BxJP9opXUSDXZBZp3ozzQcTkK7G+kUAiVjOO4gy9aVCvbnaLfAMA9ssuf8fprCL04xUOTI2IkgFgWulmiyxBglSVa65PfiuZitlSinOC0KLT7sdIM0ERNLdryHBfIvOC+VV/LbRFwt6TZZw8K69D1RuB9WQ= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Feb 2017 17:19:19.1928 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR15MB1648 X-OriginatorOrg: fb.com X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-02-23_12:,, signatures=0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Feb 23, 2017 at 11:13:42AM -0500, Johannes Weiner wrote: > On Wed, Feb 22, 2017 at 10:50:42AM -0800, Shaohua Li wrote: > > @@ -1424,6 +1424,12 @@ static int try_to_unmap_one(struct page *page, struct vm_area_struct *vma, > > dec_mm_counter(mm, MM_ANONPAGES); > > rp->lazyfreed++; > > goto discard; > > + } else if (!PageSwapBacked(page)) { > > + /* dirty MADV_FREE page */ > > + set_pte_at(mm, address, pvmw.pte, pteval); > > + ret = SWAP_DIRTY; > > + page_vma_mapped_walk_done(&pvmw); > > + break; > > } > > > > if (swap_duplicate(entry) < 0) { > > @@ -1525,8 +1531,8 @@ int try_to_unmap(struct page *page, enum ttu_flags flags) > > > > if (ret != SWAP_MLOCK && !page_mapcount(page)) { > > ret = SWAP_SUCCESS; > > - if (rp.lazyfreed && !PageDirty(page)) > > - ret = SWAP_LZFREE; > > + if (rp.lazyfreed && PageDirty(page)) > > + ret = SWAP_DIRTY; > > Can this actually happen? If the page is dirty, ret should already be > SWAP_DIRTY, right? How would a dirty page get fully unmapped? > > It seems to me rp.lazyfreed can be removed entirely now that we don't > have to identify the lazyfree case anymore. The failure case is much > easier to identify - all it takes is a single pte to be dirty. ok, I get mixed up. Yes, this couldn't happen any more since we changed the behavior of try_to_unmap_one. Will delete this in next post. Thanks, Shaohua