From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id F1022ECAAA1 for ; Tue, 30 Aug 2022 21:55:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9770E8D001A; Tue, 30 Aug 2022 17:55:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8FF8F8D0001; Tue, 30 Aug 2022 17:55:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 72BB08D001A; Tue, 30 Aug 2022 17:55:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 5B6878D0001 for ; Tue, 30 Aug 2022 17:55:10 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 3CE4E80C85 for ; Tue, 30 Aug 2022 21:55:10 +0000 (UTC) X-FDA: 79857615180.24.FEF4C04 Received: from mx0a-00082601.pphosted.com (mx0b-00082601.pphosted.com [67.231.153.30]) by imf02.hostedemail.com (Postfix) with ESMTP id A210180041 for ; Tue, 30 Aug 2022 21:55:09 +0000 (UTC) Received: from pps.filterd (m0001303.ppops.net [127.0.0.1]) by m0001303.ppops.net (8.17.1.5/8.17.1.5) with ESMTP id 27ULs4hu024172; Tue, 30 Aug 2022 14:54:57 -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=yyrBCCiwCSc5NVgyXK6f1wHPVEcHUfNaUY/9XOG47Og=; b=BGt4jo4HZviexDqOyHWy1P6bZaM18q84vSDiGBza6BgMcsn39dH1k/Vm6ztx4N/Uy7Aa Q6F8zg75L177JrqNd3MRMisYl6ZOYFHPZ8SU3p4miIk7AUTn3Gob2uWcWYsnt5e9QHUc hb6Em8UkVjdRfBiegfrNL59uMCvzV5pUfsI= Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2176.outbound.protection.outlook.com [104.47.55.176]) by m0001303.ppops.net (PPS) with ESMTPS id 3j9nkrtj9w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 30 Aug 2022 14:54:56 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FsiRJvWVh2kkbQkQ2f+B/Fc6/9sRbBpWSt6fvDQm6L5Jo9FKjjqnFk0wAiAC4dCvErXBNv/Xq3vgsl2SXWTNOch4NjyfyYy8DyHtw2qWxOYMb8qUNQTqoLHRkz4eijUt04Jcezh4P/5n1td8GpUnMbr5szKeuyNHyWWjc29aep0YoPt91PwtFzedlAp9lf41BS8VZc7wbp7ruIyZzcC2rS0ydFxmvRmBSXeI3/JQqxoMJbrC0c5RNm+1dU/GYqXHmUIfO8B+tAoAgS0NHDH6VxxF0gvdotdx7Lk3rMYD1nOQ+BjT7LgivXIfNymiOuMJtarxsU0RGDWuNVpN0//Kqg== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yyrBCCiwCSc5NVgyXK6f1wHPVEcHUfNaUY/9XOG47Og=; b=IAvAKnOFhwOL/PO1cU0sCzGfU3gwavthQR9NVBzO6+Elqw9+6WiD1tQihVFfF72TaaJ/2PA10oaxp+wsX1jAcjqhbIVmlB14rmDUzHWXvMtzMLIufNk7eAsiYuZr3YRdyjIVglU1TnCfVhLM3aupGoVKORCb5h0/CI0mvhOS9FuKjGjnZdDjKLqx+Qxx4kB9r+ATFSRCOXvn+MHG2GCFPHvBX0tK0Hf+FXf44aD71u7spxZlUzjb1eu55e6/Ov224xuWSHM8nU6J4iV/LKRyv18KIOY4nydvR3tHx4W9jac+dObh7Y5JyE1EKqZyG+cenyYlsOlJ3EoyL/b4+o5BOA== 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 Received: from SA1PR15MB5078.namprd15.prod.outlook.com (2603:10b6:806:1dd::16) by SA0PR15MB3838.namprd15.prod.outlook.com (2603:10b6:806:88::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5566.21; Tue, 30 Aug 2022 21:54:55 +0000 Received: from SA1PR15MB5078.namprd15.prod.outlook.com ([fe80::c82a:6d82:5e66:cdf9]) by SA1PR15MB5078.namprd15.prod.outlook.com ([fe80::c82a:6d82:5e66:cdf9%8]) with mapi id 15.20.5566.021; Tue, 30 Aug 2022 21:54:55 +0000 From: "Alex Zhu (Kernel)" To: David Hildenbrand CC: Rik van Riel , "linux-mm@kvack.org" , "willy@infradead.org" , "hannes@cmpxchg.org" , "akpm@linux-foundation.org" , Kernel Team , "linux-kernel@vger.kernel.org" Subject: Re: [RFC 2/3] mm: changes to split_huge_page() to free zero filled tail pages Thread-Topic: [RFC 2/3] mm: changes to split_huge_page() to free zero filled tail pages Thread-Index: AQHYuMfP12/URiDwn0CzT9+YyQULcK3A+PIAgAC4WwCAA/n0AIAANnWAgAGGNACAAJzMAA== Date: Tue, 30 Aug 2022 21:54:55 +0000 Message-ID: References: <490fcdd204ae129a2e43614a569a1cf4bdde9196.1661461643.git.alexlzhu@fb.com> <6448b9a8dba8ef39e42e56a3c0ce0633fff7c6a6.camel@surriel.com> <42c164c6-8c69-7b4b-d965-ac62d1607061@redhat.com> <37db29410990991555362154a371b58f47d3cb0c.camel@surriel.com> <00f2dee2-ebc1-e732-f230-bc5b17da9f80@redhat.com> In-Reply-To: <00f2dee2-ebc1-e732-f230-bc5b17da9f80@redhat.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a2508fff-311b-4b9e-0990-08da8ad24669 x-ms-traffictypediagnostic: SA0PR15MB3838:EE_ x-fb-source: Internal x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: m+kcNqqgQRvXD5pPsbQGvtuZ4TvRBUorlARlUf10FhZFZ4p72YpgaRrev7IcPpoyJc8Si2EL+Y3/6fSEYO20xN6ERZ6HR6k2FJFm7rDMjD1M9t5553Qkjl5KFiAz4EzpTjHXD/EBSl1TV2h3j+qn3xZL53DTJKEu1wNz1KPHqk00E0k02Ht3ccNVx55nVHWfPBUtB5MES/mSwLfBgmoGdh0WLDoxpsxKBTeeXEu80qF7MOeEWCAb6cTu/8SGO4UNZWxQQaXCPmiyZhWYTXG2gDLqSglbUOzWOmtKR3CDhR26zjUTh1YMqBo3nYF9ZjJbgTubnOTo/ZhjHRw3mx17RFAYJ/De7GJonc4ighsd+i2XduAozbCZXjyd0VR6nYmYLZc/dede9IjEdZ9XFDxGAMDyjgu8z11aELPKJ/4kJ7s0GF6aZ6wPwGGxHDKpey2sedT+KUq7keuqPBOyfTUhi/bgcamXApM+2Q62gza2YlH+F6s8guswPwlVHiOwR+hD7Q0nTJgQJCvMyps5GzJAkWaHptzVRjA+s9VrA4kxHqELGZqhW9AsenrzIzHPQjC7jtQ/qCWGWOvN4Le+aT7mD2NGqlobReU+R2chUSSIswcARzsuqzA+fhXaBBCGF6mG3SrIycZWow01hj+ys4oBNZxCNzhRKhS974k7rloLjpI+9iFmNdrCloytgHLYtXFLSmCbJZUnD7QUTO5DnNOyjrM41Qt1jxDDz6dBiUHQFkfGP6+Ap5qrHzcZXv0R1V6EpHkWz9XFHwCCNj7q+C+r039VO/JhdpXEck46nVJQnZ1hNi4bQft3vYb6pKyJY0nT2cByZjDd+UuVlELYkQdk4A== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR15MB5078.namprd15.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(396003)(376002)(366004)(136003)(346002)(39860400002)(6512007)(2906002)(4744005)(38100700002)(2616005)(122000001)(6506007)(33656002)(186003)(83380400001)(6916009)(66946007)(66446008)(4326008)(66476007)(66556008)(64756008)(76116006)(91956017)(8676002)(316002)(6486002)(71200400001)(38070700005)(86362001)(5660300002)(36756003)(8936002)(41300700001)(478600001)(54906003)(14583001)(45980500001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?NYLas8HEoejSSPfgFaLtIMyl9CDu/qH8Bi5WFg77+e1PzaihVSjCjA29X9ww?= =?us-ascii?Q?O4H3nS9ed0ogIzqiGJLH+TQqTxLNEorkLxwpu8JELr+PCnC6khbk6YkcU0WP?= =?us-ascii?Q?wqRJ7Q3A3uxX/TQEIZ4ERhnWEFm2G2Z4UxAAJvVwg+PFemeq7ns2urZ22n72?= =?us-ascii?Q?NxaHUblhpXwf4Do/uQQcGvivH4tV08PzTGL7RiT5XIansNDGVmH3HygnZBYz?= =?us-ascii?Q?MX5lsDI4YIBBBshLEtX/ad+Uq3VevjdXEVtNwpmsvG3vnnkdqtC56b1wvYq6?= =?us-ascii?Q?52SQ5hCS2MdYYHm/Vxr3YReeOaxLuIdyuApU3xwOtpRe+RsCT5nU/H1vUqaz?= =?us-ascii?Q?TIWzpxemmkAkmK5sb3l7Nub7S6QrWLibXgH0zZ055oeJELZ7hQ8ex7XQ76A2?= =?us-ascii?Q?HQBGg5yXAo8+O6ZY/4S3sHHYiu6JxefhTsxUhafzJL6WSMEoNlyn7jR1pv7M?= =?us-ascii?Q?yzrqvRd7vYd19w54NNc8831EJrDPsX/HRD39Oy807MoQkVy9QMkxRLEUhylN?= =?us-ascii?Q?JyEYaDGHWOZRfsFqWv63ao6DZu2T4sXlpgjKlxbTHH7wmxwAZpsEJt4tNPFx?= =?us-ascii?Q?IuaZdxrH6yYgltEwB5+nvNq/DWGRhThw2PLypEdSdZGdOtk/rJZ5Ebh7Z6Wn?= =?us-ascii?Q?Ef+QGOl7EqkWGqk9G3pKK7BAKQcLmeZ0sKwofcfeWY5E9lz3R5q4R+D5BIVV?= =?us-ascii?Q?3mEIVg3Kr/AW07KWyg+1rNRMuRs9Qa1pDkmgpP6BSRi6YaVDIxgtGNwuTW+d?= =?us-ascii?Q?G4KQLO1J6irotN+FHZS7yfcuYsFe6i7IFL1D+Vq4uiDOLpcDHrwLgio+e4nu?= =?us-ascii?Q?U73WpJYuTpb50lxHVHoRN6ZFOoDu889LT1HyIvJ//+f2Sh9U06xudVXmpiy9?= =?us-ascii?Q?D5uwbv7jX0mHTJ/qDJgh4Wg2EnrFhKnRRBP1zHxPwVP6dC7sU4ZAnYSlWWS3?= =?us-ascii?Q?SMwuFZiVLo3sz3z/lhqyiRVoVR2+AOx5RhWjHRdRxAo0TszJSqmybOdq7mHW?= =?us-ascii?Q?mWfwlA8MIUV2G1hwCB4gRGdMdzUngS8d1hodQ0LmLLnzfvm9fVtSCxkWKe7K?= =?us-ascii?Q?ekN+41f3bq9q6Fgl9U/cLGCy0PNknzNMRJSe60BSzoOtsTikyMwgO2u1Tp0D?= =?us-ascii?Q?FkPPX4M58JB1YB1lgQLfG/79WXmyUNXA1B7HYdKKLwRYofkGM5h+0iwT4l3y?= =?us-ascii?Q?0xPXNnpnA0M+Wvc6O9hPrsEQtexiFuo0QafKe8DkEpo2OLy5wE5tjk+HvuVU?= =?us-ascii?Q?0fkUbrQ53WVxFDvb+cpxP+AEVKh8+hNgaVWGhwToOHA0LgTGycMZiWrdH9y3?= =?us-ascii?Q?e0wyMmVVLe51fTF9yVfLxTCzgKdShmVP8lMtMeTi2qDEjM/ZkO4TUT6Gid20?= =?us-ascii?Q?iFMBrMxgjsIBOQUvejMbSiLYlyYyBNWw03JYRgnXm7sfhjz662ArqT37TgNb?= =?us-ascii?Q?jQq6LzjXrC2FBmVRQjvK+24rmu95odVfYzQx7TTS3dOzhzGdjSnP+Mc33vzL?= =?us-ascii?Q?tzZA77jlOYeB7poRMWkX+3JmBaxy4FS2qfZoi//MULhV8oxIuydtAXkiz+Xc?= =?us-ascii?Q?55xCov2jRDYHPXHccjBeA0FZ1oTh6mwE9Va93Jp5/V8MsPEsR1wojC4W/9IJ?= =?us-ascii?Q?fQ=3D=3D?= Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: fb.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA1PR15MB5078.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a2508fff-311b-4b9e-0990-08da8ad24669 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Aug 2022 21:54:55.5088 (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: o6iJ4+omEbQh0rT7TnOPz+c3XgKYsY3x2Axei9q0LJS8QYtvNYTUMrM3rD9bOqPl X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR15MB3838 X-Proofpoint-GUID: oFYAuxoZH_ySVM-Q9mq7RyQ22KRB01m6 X-Proofpoint-ORIG-GUID: oFYAuxoZH_ySVM-Q9mq7RyQ22KRB01m6 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-08-30_12,2022-08-30_01,2022-06-22_01 ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1661896509; a=rsa-sha256; cv=pass; b=IgJByjBmsrORMBQESg7O7/yBO4OTrTXpXbFjRkv++MXXoAqeB+LYEUrzzoQedErtgFDapO KkIdHWAJ2N0O0uKOCHX5n9LJ59B897L8hWoOnLsslIEV3hjOD3WdbKr/SAfQHc4hLjsfoV eQRAVHiVMudI0s2D31Jb4wkJU66pIwA= ARC-Authentication-Results: i=2; imf02.hostedemail.com; dkim=pass header.d=fb.com header.s=facebook header.b=BGt4jo4H; spf=pass (imf02.hostedemail.com: domain of "prvs=024175d1b5=alexlzhu@fb.com" designates 67.231.153.30 as permitted sender) smtp.mailfrom="prvs=024175d1b5=alexlzhu@fb.com"; dmarc=pass (policy=reject) header.from=fb.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1661896509; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=yyrBCCiwCSc5NVgyXK6f1wHPVEcHUfNaUY/9XOG47Og=; b=APWGCn/O9pbjD3NC24UZuLRk03PCKInCsLkHPbxjmON286tdzPmbvuJ2SaBG1NOS/pvDiQ +zxzCaWJmz8dpH9eZ/Cpf+yfwhmwRskjNyhSa9BtdJJyWtgKH+ntlbpu7MQP9X5eVTRc44 OouNxG/ZK2s55ahdJ3Lw0Cw22D5y+kk= X-Stat-Signature: fw6gxitcczx4o5qjikrakkbrs3nwguyp X-Rspamd-Queue-Id: A210180041 X-Rspamd-Server: rspam04 X-Rspam-User: Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=fb.com header.s=facebook header.b=BGt4jo4H; spf=pass (imf02.hostedemail.com: domain of "prvs=024175d1b5=alexlzhu@fb.com" designates 67.231.153.30 as permitted sender) smtp.mailfrom="prvs=024175d1b5=alexlzhu@fb.com"; dmarc=pass (policy=reject) header.from=fb.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") X-HE-Tag: 1661896509-242988 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: > If you unmap something (resulting in pte_none()) where previously > something used to be mapped in a page table, you might suddenly inform > the user space fault handler about a page fault that it doesn't expect, > because it previously placed a page and did not zap that page itself > (MADV_DONTNEED). >=20 > So at least with userfaultfd I think we have to be careful. Not sure if > there are other corner cases (again, KSM behavior is interesting) >=20 > --=20 > Thanks, >=20 > David / dhildenb We can implement it such that if userfaultfd is enabled on a VMA then inste= ad of unmapping the zero page,=20 we will map to a read only zero page. The original patch from Yu Zhao frees zero pages only on reclaim, I am not = sure it needs to be this restricted though. In use cases where immediately freei= ng zero pages does not work we can dedupe similar to how KSM does it. =