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 CB414C54EBE for ; Thu, 12 Jan 2023 17:40:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 069F48E0002; Thu, 12 Jan 2023 12:40:47 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 018668E0001; Thu, 12 Jan 2023 12:40:46 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DADE08E0002; Thu, 12 Jan 2023 12:40:46 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id C727D8E0001 for ; Thu, 12 Jan 2023 12:40:46 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 939AFC0725 for ; Thu, 12 Jan 2023 17:40:46 +0000 (UTC) X-FDA: 80346862092.15.737EA8E Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf29.hostedemail.com (Postfix) with ESMTP id CED8D120019 for ; Thu, 12 Jan 2023 17:40:42 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=UCA4qckG; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=Qcs6DUMA; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf29.hostedemail.com: domain of william.kucharski@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=william.kucharski@oracle.com; dmarc=pass (policy=none) header.from=oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1673545243; 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=RJ2swOaXRPC5rILAOMAy5Sk4xRqZOjnJ1QGpVoQ+SxQ=; b=pqC5CCc7LgtrxfCeaUBolShkbuwxbsbXDZ68EHxNndgAOJwJOmcbR9wxhgAAZrpP2st5RY 4YRH3SbnK/d82UqXcN6OzYxNef2cVhBoypTGmJ4YHojXez/YOs4OAsMB4ilhJKyOUyO3uP 9OxJT05f5Ojn3Au9RXbv1mN3juss+Ys= ARC-Authentication-Results: i=2; imf29.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=UCA4qckG; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=Qcs6DUMA; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf29.hostedemail.com: domain of william.kucharski@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=william.kucharski@oracle.com; dmarc=pass (policy=none) header.from=oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1673545243; a=rsa-sha256; cv=pass; b=Hx9eY2LUHe5GkZEko3b2S/t55CviXyjm47+n68+d1H6C5/zjMnfLZe2nfRnJsD0d3TIux4 comovsty+OLXoWXOPk6wbc7bUS2VQffBBbMseC40hjrQPnAr80Ih1IeEBXd6pCm0pVCqVz JSQtSxeFDpp3v4QnuahUYVO0YoULOVk= Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 30CHWaqq019484; Thu, 12 Jan 2023 17:40:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2022-7-12; bh=RJ2swOaXRPC5rILAOMAy5Sk4xRqZOjnJ1QGpVoQ+SxQ=; b=UCA4qckGfEQ5+Y/6PBWeyVZhDFTr7UksO+KfXYVNApbTVHjzQYTGaoDKYvuwmmW3b0+R l0dY/RQlcEQXvy/lh7Kj4DPojFg7HiGPnaPJWrl6t5vUsqOICorbZ3VTzk64tker53yG heJuwRry+tF4ZVASUNDlcF/pX9NiUxMwoPVdFLCw1hxzRTocUSdgrOvAqfht1yUnFzhM V0Gi9nROxmawkKUpGpRX+oKdkmTOvIUgLf1hIEHzvSfLGnRTIY9fsnJIrsaEEQZ4RurS BQJjKHioGdYUAVwXoTlOkcgOs5P7usKa3fKgkWt7SO385MABkoeKUzerMdxCJOc6eCaK /w== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3n2pm500xf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 12 Jan 2023 17:40:33 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 30CGbc2V016041; Thu, 12 Jan 2023 17:40:25 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2106.outbound.protection.outlook.com [104.47.70.106]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3n1k4r2etu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 12 Jan 2023 17:40:25 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ihHctYeOawd5cglv25wKDJKMfg31T0vfm3iF5IpxbXQ1PkptH06aVsMAOFozdBxus8GVPUnlDvaMmkbhtFz5mIoREF4DkNDtySjIG6dye+eMS1LZplzI+8zLFeutuPk6Q12mnUtBRfGvfhNcm8EBjwbT0Tke6N4cQLa9/m95dqEAfonvsMVjFAy7hpIiobAsgS2DFjFk1qBCrWOFtkdjHt2+e9ufeoZ4tF5wQirwG0Zh1rFAo8ragPBCExswo4FAWOo63GgYNiXba7OdT1OqLUcLKr3h9mSVVMRNipwXuuRo8RVKFcD7n6rte1ZrIXnfRw42keESOGq445jpWxehrQ== 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=RJ2swOaXRPC5rILAOMAy5Sk4xRqZOjnJ1QGpVoQ+SxQ=; b=RQxkhit9Gvt2lW2LeoHZuDe5vPa7uD1A9ZTQknFUYCrFWWSexdbeWuKEss0YpQVyzmbd1KhD2XAJo/tflGeGyzo0HpxRgL53MT7ukTCThNbCXmPoYPGLquQ0aQzNcKvZEGn81hErxnO0+Eljg6zp4pooYxhIgwd4A9BBpBJrfDPH7YIebqo/GaxEqvj/VQY1wrihfk8z112Hn/mcAiRqnqNDvCNMFMVdxd3036JHV7BZ0w5G6TI/zGPtqGqBHxoGcxOLH3qXFM1JU2R3J0l1hnQ4QD8q+nFRkXkyQ/tnHBzqYE7lvIAwQb1NEi3pky/FeRX+9whl/ylF0qmErjDtDQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RJ2swOaXRPC5rILAOMAy5Sk4xRqZOjnJ1QGpVoQ+SxQ=; b=Qcs6DUMAp0P0W9AxPngmKUf6+BPMxknluXZy5DWRwkEE7Hi/2E47t7mkLMVp8NSWlnO2bQCgztf5hdpbj2VeZxM1N4ZzZFNzQ6chSvXuHGwhVgLUCpCyrMXu/FMpZKNHpV6n/yhxGEyrgrPjUvwaKME88qZMGnIJezRgqZbrbPY= Received: from SN4PR10MB5559.namprd10.prod.outlook.com (2603:10b6:806:202::16) by CH0PR10MB4890.namprd10.prod.outlook.com (2603:10b6:610:c9::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.12; Thu, 12 Jan 2023 17:40:24 +0000 Received: from SN4PR10MB5559.namprd10.prod.outlook.com ([fe80::93d2:106b:2fc:4811]) by SN4PR10MB5559.namprd10.prod.outlook.com ([fe80::93d2:106b:2fc:4811%4]) with mapi id 15.20.6002.012; Thu, 12 Jan 2023 17:40:23 +0000 From: William Kucharski To: "Matthew Wilcox (Oracle)" CC: Hugh Dickins , Andrew Morton , "linux-mm@kvack.org" Subject: Re: [PATCH] shmem: Convert shmem_write_end() to use a folio Thread-Topic: [PATCH] shmem: Convert shmem_write_end() to use a folio Thread-Index: AQHZJp+ZYNPBihiDPkO7pcl0eXdYV66bDJqA Date: Thu, 12 Jan 2023 17:40:23 +0000 Message-ID: <591F1120-DA6B-44D6-B88D-3F5D8E7E6839@oracle.com> References: <20230112131031.1209553-1-willy@infradead.org> In-Reply-To: <20230112131031.1209553-1-willy@infradead.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.400.42.1.1) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN4PR10MB5559:EE_|CH0PR10MB4890:EE_ x-ms-office365-filtering-correlation-id: e6ad4c4b-2348-4d9f-79db-08daf4c41591 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 53bL5nchQQHKC8PCFF4l2tx1aU3cOU6Etka/vphE2mGOqbcZ0RLiagxXGyrmpkTJeKyDpcwuc+SPwAIcyIikW+wxeXphPrbHzqCkhXjPwSrfQyolsvBltMO6bxfXk8LWUFYiPB3UcSk/EtVU9NLpL6nZLOr3s/2ZHlhqfcIngYrNHFyKTMJy8L8JVRED+c8GQ2nxYiRmbmmZHVAzGzmIr9TSghMBwXt8ri8kAOYFt94OidquyF4n26xZNYeOjalL/cCG3kD0jM1XqlYZLcH9hpjSg73IjBUps08h/LhxCGjHc9AdpKUNXxqRN4L8Us37kOm7GTl7tDoENUi5IAt8y2zmqdnGEDsQW36NzbV6naozdjV/whgmmL+exfdY4bPLoUuk2aTlZ79eMpK3biBn8m/H6+5spvDUJ9JDcw/XzYDvPGGsdTJocbFDkdaBF007XeoPPfJt7mOn0cfFuf7VwqXi1YK37jJ/bvJS1VZVB3Tif7kf6HAy7T32kEGw0ClAzHGZxH4ivQAndz1a9hqwoXoW38FynX+O5AS4lU5qJ1P5jYa08tYGl90Xs5wgYzeKcvkm+2oK2IJYDvDsxxwjb7rvYvEgC10ArOIv2JyArOMT7hfGoLKHisqjjYFx7F5EKtWgLhFc2E8veW/ml8ESs4hCF9j6vVQi48YeXjuMjIVCbwLtGYd9ILVc5ssZ6Oyl9xPhOHUZDi/tk3ODbeyW42XEu3EhPWBDzWStIIsWtXA= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN4PR10MB5559.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(396003)(136003)(39860400002)(346002)(366004)(376002)(451199015)(6506007)(6916009)(5660300002)(2906002)(64756008)(36756003)(66446008)(53546011)(83380400001)(8936002)(122000001)(44832011)(8676002)(66476007)(6512007)(38100700002)(38070700005)(4326008)(33656002)(41300700001)(478600001)(6486002)(91956017)(66946007)(186003)(76116006)(66556008)(71200400001)(86362001)(2616005)(316002)(54906003)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?Snc3A+nmMN/yljB+Ru7bwpRyKJFjH7HRlKm/jQ/3qb4+tjBsgKJirzF1FwxT?= =?us-ascii?Q?k24Z+otJiiXY8iy+OwDAk4I+fEabZGUAYRr5RwTbtzA7kUv8SpZJ5BXDhGaA?= =?us-ascii?Q?lRU1MwuTo3NYr9VLyjN6+U7Kg1+CqyRqnD4JKFuERb5hehc5t4B3F5aJxFbw?= =?us-ascii?Q?NS4drjeiyxNP/WS8XeL1tq54S0TAsa9kY78jmZCi8bOeNihyLgBqHZA4BwiE?= =?us-ascii?Q?8GQVriD+/scZg8GaMTiqf7mJCBPTOqVMq9ik36JuKaItIoTuRYOWF/Ikfssz?= =?us-ascii?Q?7pC1WGdzCe1/GiIXrah6zHAX4n2pBsdemqPNbD7/dOKpM/cYn+whcTOGmayr?= =?us-ascii?Q?YvsP0djhcSJg4K6zc+qeSHYzTxVAwnu3H16zYkkWLr9hp3zpbl0sWEfrmGcG?= =?us-ascii?Q?tWlEDRiIXik/LddE88JfGj2FcpVa4waJKndasyBH3ikjufbK8YK9w+na1VHA?= =?us-ascii?Q?ynx0kMgB9AA34LDiXTTZqP8Fp6ts3Rh+PiEg9zqBPTx59FqJ4yLufR2TAV2l?= =?us-ascii?Q?NgAIsuV48NrVWn2OuLFX9KrTyRy5FfcMgj6iu0cVO03w5sqUWdVGtwiqLzUq?= =?us-ascii?Q?msj1NOZHG8g5ecDJjjGXTQGXKPpv3OdM1tBcUshMLK2sIPedZSyZ5/G1Fx7o?= =?us-ascii?Q?Lz8XSruSPDhH4zKN0b6klkPfUhsVF3eyLYd4ewqDSmlElNIIn1/8ZUtK2hFu?= =?us-ascii?Q?FfWQ7SaJfjAHc3bqOvKId3m9PsZxjSZAdgUOnaCRD5v8xq+8iJ8ggED05cUT?= =?us-ascii?Q?RvS9xt7pc1SKb7hCYy5IiKvtX5ju+5q1UWQAVbI1ffaIAC9ZUNSu3tOi1DtR?= =?us-ascii?Q?zm8FxDq7f5KrDLw+ZtaAWJV8fSiR1NVI1mrDfbbklFfMtw639ZueU2OrJKzH?= =?us-ascii?Q?6bJo9PqqlhgJlXkwvj0ueV9IemGVrBn5cGbR+kCkXpUCOWtiM/t2qI59Duo6?= =?us-ascii?Q?bcEzoIKVFJ3d1VhYIdXv207v8yMK+kc8dye+Rqo7TcLeaXl9bfIvPCTY+G4i?= =?us-ascii?Q?ogdAD0QtHrSdjpwCihiJ3w1VKl/wcN8kruDaDq9/ksEM3S5NYryXN70rvS7Y?= =?us-ascii?Q?ZNU7eRGmy1mMSBqCFutXRxD9/L9nQTu+nIRETcoYfV1j1W/Wf/7xB0hwA7bo?= =?us-ascii?Q?4CqFHxUAZ0osniL3U1OBkQQUvEOq4fMWzAgkSC5iiAKa1PvW9V9GDrF4E+fm?= =?us-ascii?Q?vXB9Quc6t058x+6p69uP7sYFpRJguMoL9pt1OBFcBqQhM96zCV/FiLkp3p7o?= =?us-ascii?Q?300bSDQ6kAT642YLh2BKr6zofHOYnVkiQHlrB205M/Oen/YWYJH2wwgy7g2Z?= =?us-ascii?Q?GfOpKbxlnl7YB4eCm91LADGjn8CKcVuPRdD5SirOk2dkq8f0bBYQxDxYeOMZ?= =?us-ascii?Q?h0Whqu7l7Xf3MiuVMY8ZsrMnz98x0qlG++x4GHnuOJPuaOt8QPpAp7LG1mAx?= =?us-ascii?Q?9MikMKCOdWPkOLy6JxBMf0OKqQewT9KBqkyy/5KeLa5bxVp0l5sF3Izkb9Q/?= =?us-ascii?Q?vmvUVR5y/UcuULB5HYP9XW0aWEQCWZ059pfnyJLA5duR1Pn2E5zKbCFAePHl?= =?us-ascii?Q?cCL2FYhVdn/+w0LBDyj/NyIxKu755CDJqUEQ9JsXvSDxfPvpy1opP4fW+Eun?= =?us-ascii?Q?hPuDKFVXE82l5p+Hwo6LvoK1ZRy5ljnSZgfu+1gKfeAf?= Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Suztt1PIAPUtUPdVOw9te7IKSB+W01ZF5DG6fAtt+XtEtH+Wmjj8wEd6bATugsS0/T09saOO+bmBi3lFJNOY8CK3L0Vede9Ph5hv2k/7JU+FEYCCjuibAP7G1kNTOONg8xVgPR0H+AJesiMUM6QVAH0uW1Tk0PJjmI/wDqvwGA22ZLAtAXDB4d8zmMl6iO+ffrH6vx8sgz4LhUuK+d70ebqIxw6IZmdDHUGa5qQoMTr5IGZU3rVxfqdRh++mhKFblMBLqFh4okmut+m7elmDyagUu5FNq2kiWLkm+8uCSqGJvYAvLQLhFpoQKMNU3QdQaaYK8VS5RTj8YRe75sYGS5ys98BcxZtFER5n1ge8xYBm/vXT4zpFOeykJmyW0Lio22go9cdgR3iopUqj3ZzdgPVT2lmkrpyRlc0kFD/S9Y+Wexorb3IGvJkhTfxqn6CYwt09340wai3gAxYaujnDwJHkeWYZC2bEBqvH938/a2cf+h8wrzDAkFzAC6PTdkc6FbT1aMG9m+M+M+JMF4/ZF/+N6dPotNVGgvb6yQQmk2O/7PTi4uvAO0+HxAqNq6w+eD3priu5w7e2Oww88v58L5ZAR1EqfBAdSgpgHaOjS5WijJLNeuc9wmt79oLRg1lQnTXcmfz/kA/fclPk0cQxS8gfN8meP0Iqo8KUdSL8npA5uJGi300l/+CM1POhT/JewPiDv/Am3twWl+Ij2nzygqgyoNjXS6octZI+5RPmHQO+v0CXBnEyw0pBG3OjBp7XTn6yZMQH5PntxHIeL7KXGtdeX9oUZ0x+gdN9OQtdTp85YqNKJTvnBr7Vg67DFTmSezsIMsIWBXmlVATJxOq2+FiOfAJVUSZmJ4Sl0O5aPdkz0dB71PvbPlMz5PtEP8j7 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN4PR10MB5559.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e6ad4c4b-2348-4d9f-79db-08daf4c41591 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jan 2023 17:40:23.8500 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Dpyc3Z4z1IwCRR7MJ5qtl7TJF372gXP9SGI1L1R+l5r41KC3w/OmWu8rlUSWfOxGlPAFXMmmjHKRN87P5EgqCjpVZI0Ao07zHAj2alfdQu4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB4890 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2023-01-12_08,2023-01-12_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 adultscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 phishscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2301120127 X-Proofpoint-GUID: c6J-m-Z4WXWp7UBHoDq26xIRWRxz5t3l X-Proofpoint-ORIG-GUID: c6J-m-Z4WXWp7UBHoDq26xIRWRxz5t3l X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: CED8D120019 X-Stat-Signature: gwgz63uuuxn4i3r3sbaj4o9z9ij8pojw X-Rspam-User: X-HE-Tag: 1673545242-55254 X-HE-Meta: U2FsdGVkX1/UcK+lSNm7/terXVnY6310+n0wLZY9niX4JO7jNnrdOePodqayFXhv7K9IcY3ptmjljJU4gn8Ptzp/iClIk89ZDmYGvg1L21tXIISYLnneKFFx0gMDp1b0LQmQ8nfggtlFgmy2CHbce3tAmOG2kmYjuZh9+Gy0c2RhtftYImDXxOOCFQ/PNrVAGnEBcwfEDZGmEdvt8Mm8IjuMwyd2Hf1GgS7qsCN79hO5dNcY0VA9hLsH1PrKzP+4A488PztnQliaV2xmsBPZdmhuP+K2JEealcU0s9IksZ52biLbg/TDUyYTY3s0EDvxamNdEJ7zEt+hjB8rZfK+OftimOXweXyYnMvuESazhnbcbCFlGew35GLjrcx2/p1eBiMsaQpx6+YhYfqqSFuLIaDkb1RJMSWZW+HTpR0QFPXy4NK68ptVywfpcQprpzG3hVdHPcBvMV4lHT0xmL/LquWnr7ojEfBsscFCiyEYTbNjBA9wL1P50NJzkFTW7DQLiHCG/dZisLwNkaKWuGKWkUH8QM7R3gLQIxrt2xg/X9Zex2Xqx9aM41l4ysWPaUceazgrJgrEfVNFblwvZ6y2Y/oEyKpTspkm0dPEFJ8XKZNDxsSF9VE/T1bRZLc6D2GSWc5jFPGRDATpFPBmbIxpnuohZ+fMUvfnfyxGm0VuMXlUK/LTo4mYx9cfagQXU33yaWSV++bC7xf68v3cryuf7Vkqdp9RNirSuJQw6WM4zEC45oRtFHgiNh9vT6GvopIvb4JHbho24RRrBXjC9RiLRuIwY/EGivG097aRrrF4HrjWf5tMDohCKkdyrSWd+EqLkMLEdw5/XgerpIB2yVbUqH/GB/4zScHwhcTOVQ++vIXMiEz92TJ1rQ2Q26tldAGjDP4vZQmcv0XFpnAmrS+DGLQ5VBcr3Rd5bO+oNOZMXDSD3mqdPLqH8t/tptYMOODxOeVs5+v8O1RQ8kE0Thq 5FE84K+R Huht8DMFdtcGHBkMuYomqh5KzmUXUBaubKcWAROAE9LvdAi9AYJLFbWmGuKC3HYq6x4RN2L2oG6dRKJjx5Pkcfb6wlh6in/g8t2pZxVPsq4l4vydFgEMcsr3sdAOLmBHoMwbf8vabySE2pdzCc8ZBiSkh0g== 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: Looks good to me. Reviewed-by: William Kucharski > On Jan 12, 2023, at 6:10 AM, Matthew Wilcox (Oracle) wrote: >=20 > Use a folio internally to shmem_write_end() which saves a number of > calls to compound_head() and lets us get rid of the custom code to > zero out the rest of a THP and supports folios of arbitrary size. >=20 > Signed-off-by: Matthew Wilcox (Oracle) > --- > mm/shmem.c | 30 ++++++++++-------------------- > 1 file changed, 10 insertions(+), 20 deletions(-) >=20 > diff --git a/mm/shmem.c b/mm/shmem.c > index bc5c156ef470..c5048c6c83dd 100644 > --- a/mm/shmem.c > +++ b/mm/shmem.c > @@ -2578,33 +2578,23 @@ shmem_write_end(struct file *file, struct address= _space *mapping, > loff_t pos, unsigned len, unsigned copied, > struct page *page, void *fsdata) > { > + struct folio *folio =3D page_folio(page); > struct inode *inode =3D mapping->host; >=20 > if (pos + copied > inode->i_size) > i_size_write(inode, pos + copied); >=20 > - if (!PageUptodate(page)) { > - struct page *head =3D compound_head(page); > - if (PageTransCompound(page)) { > - int i; > - > - for (i =3D 0; i < HPAGE_PMD_NR; i++) { > - if (head + i =3D=3D page) > - continue; > - clear_highpage(head + i); > - flush_dcache_page(head + i); > - } > - } > - if (copied < PAGE_SIZE) { > - unsigned from =3D pos & (PAGE_SIZE - 1); > - zero_user_segments(page, 0, from, > - from + copied, PAGE_SIZE); > + if (!folio_test_uptodate(folio)) { > + if (copied < folio_size(folio)) { > + size_t from =3D offset_in_folio(folio, pos); > + folio_zero_segments(folio, 0, from, > + from + copied, folio_size(folio)); > } > - SetPageUptodate(head); > + folio_mark_uptodate(folio); > } > - set_page_dirty(page); > - unlock_page(page); > - put_page(page); > + folio_mark_dirty(folio); > + folio_unlock(folio); > + folio_put(folio); >=20 > return copied; > } > --=20 > 2.35.1 >=20 >=20