From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 962C917838C for ; Tue, 18 Jun 2024 20:48:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743729; cv=fail; b=XUGmsWA6ly3fF3t7vpWoOxw81FC2n020r9bMEjemvz2fTTGt8Qpj7HzQkodCATNnG5EDsX2o6s/XhvOt6U2OmrqLJDeQjHFTVXMeRGWV/DJeOO/BRhCu+s87WKH6cgt4GiY7zX/Pgq9/vAmMGu9BXjewg1mn40ZzgqZXywb3UcE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743729; c=relaxed/simple; bh=lDABn5SjPNrxUvSQc3A2HvzKzQmvC0N4sLlSBKKZ130=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=eBQkqxyJLoOtikmokNQ9aF9DrgTPnce1TbOjZklx7FpUm0fkaqZEhvobyFQ8vDr5H4VvjjWWmelu3Jmrn1eChuXdgh0sBSwdsUTMBtV/2Vw9yQYY/kIkhz3EnCZRFzngzFaRf1MDASNobtcJskntIobn6rodyEF20Xgy/29hLxQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=LG28IOwN; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=evrLFT/Q; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="LG28IOwN"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="evrLFT/Q" Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUvXo031029; Tue, 18 Jun 2024 20:48:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=LbRUqzQTGgReNrj5x/34j4uZL7gNsaS8wJAQGdq1eJ8=; b= LG28IOwNvtanZ1cDEcuoYeIe8O6j0ck0/OQ+0htS31vV5zXUO/jaK54/RG5veioB TAjhlNiYE6Q4xW5viRPCUarOYSqHifuqaxomdlQdBZsJSsUkWupmkvEs7rZ5N3t0 AbJFWgDYBViix+u8idLu5B74STWO/0HnXgnprRZmqTqNi4Sg0Kydp0V7ECertFsH i3o/VI8O3pA/voe6H8okZf0oEPdM++ZrHZh0Vac3ZJTMGMoa9MGbz4T36OiPmLd/ 6aEN3VgY0vg86lCONOFEIfLBDWvq4Wj1gyvXZFNL1EPttfbXxQ4fSLQP54LoPrB3 sDq8xIE+PU7b6t5L/Usv7Q== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys1r1wv5t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJeuRa034707; Tue, 18 Jun 2024 20:48:32 GMT Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04lp2040.outbound.protection.outlook.com [104.47.73.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1d8p6p6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XitMcOMmsicDpt3zuKl+5cGFKyo9i2kbFB5H5xF/zIVabUinvqpPmuMj/Frnvw4bAcWJWc/apKn6pZDZrAxXDLGweP6ja+xFgkYW4XG5+7UE2kR5G8gHNzWIBEzSlL30tYWsXmVL9Pl4ZvfPhbIp49VFqYgatjj68L0HgFxE4gVTn3LSq0TEcIpyH93MylaVA5ltJrni0VV5jq8tcXnpgnklme/DJiQbK+UKsFdGiQJ4G6pgHK+ZWAaTo0B42am0tbBcQ5sDGxq16KaqHBzOHUpIKdo31/cclC7mhPSmzDYx+OBZ7g7Avj9tELXCSAfEZjmk9znnrIEalMtu0n9vmQ== 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=LbRUqzQTGgReNrj5x/34j4uZL7gNsaS8wJAQGdq1eJ8=; b=HUjfKRTjHwdHnMhcRtmYc5wlVXVRe8kmS2EDXASOcHC/JDiNaV/qRsz/v5hvQRiogkF9ihCgz7X5TovhygHS2vaDudwvd820ETn0vbJg1RUeA3dGesLmy57RW2i6bK6NEcoIeTcwT/v9goxZapb4uhw8aZrcN9wrzuTogVBegi47u6Vls85tVFVfj6t+53+CbhGqi5z6BiJZt1+BUHA5mz8ZQNzIio8+q6eAwbqC84iYMtvc6prqRAJDHnNpbPH+y4+W6tPyK3v2q/iEHE65ajDiWj27Bl2nik7AuXmho04vBXsH0IFJLFXz4D/P0enatAQXF5sCzn4AcEMXy4Z4Mg== 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=LbRUqzQTGgReNrj5x/34j4uZL7gNsaS8wJAQGdq1eJ8=; b=evrLFT/QQ4wgA8Xe298f0KDEb6CtM/Qjp6qFzzSOa49QxcErL3iBjAYBF1QuzRM3jGgna3jxcusmadSQQgm4IaGe60TZLZmSxJIo749Fi2rgJ/14Igy6Dzi/0p6/jWmMPvq8Ij50qqNueRR/LnLVdDCC24JqG8Mq08fhAVRx9Aw= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5785.namprd10.prod.outlook.com (2603:10b6:a03:3d1::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.31; Tue, 18 Jun 2024 20:48:03 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:02 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 01/16] maple_tree: introduce store_type enum Date: Tue, 18 Jun 2024 13:47:35 -0700 Message-ID: <20240618204750.79512-2-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ2PR07CA0022.namprd07.prod.outlook.com (2603:10b6:a03:505::24) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|SJ0PR10MB5785:EE_ X-MS-Office365-Filtering-Correlation-Id: ce288bba-b268-492c-7ccd-08dc8fd7f1af X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|1800799021|366013|376011; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?9eFr2xSLjSLDKDbZtjApfosPHxZnqIdGvmBhkiz4+By5q0JgHpyLSv2RNw8a?= =?us-ascii?Q?4RMgGFII0tEO0HFm3Ah5uUxHYrAm/p5ngqsKFNJY6OjfXp0JkEo5g4Z3vHOQ?= =?us-ascii?Q?OBbbh6W8iT04HSjKI0bRbFfKH9MKyh6mv6vCnC4JHe5H4c+AyLYXjD7RoOYp?= =?us-ascii?Q?+XkAnnQadmekeog+BNgkJ02rNU+1tGp0f+w/Qpevo/cQLzFvHHosK4iEGwU7?= =?us-ascii?Q?NoyccD8OMeScE+AxDXXDfqQV4LCx+8py/938YygmVZZFw+4aCWRLASgtjIJ7?= =?us-ascii?Q?wCrXcTScYKpNfgkB46cHZ9ZnNRw+hiHjx7iJpTRJ7e2o81XHKgmauE3Z5Rqx?= =?us-ascii?Q?FBnPQzvOjN+CdSeTn0Cg5TMb4iZW0GKN3MGYYqjnuLn5r73CeDxuUcJsKEVR?= =?us-ascii?Q?9iirAm/u/vw3xjfvzefLD4sTEU4MMxrapG6AI3WIjeTUBgtJRGvBkh2EDb9w?= =?us-ascii?Q?gTH0w3xUuAx6jUlblOAeO9qzdmLiY9jCz6Gnz4JwtrErpS/uOQk4QlOricXi?= =?us-ascii?Q?ubWEULIDWoSnaNRndbxw5SPvHYsrfZslRXjQ99EgXt0IyHuEL3paQFBXjqVc?= =?us-ascii?Q?s5lt98XBhRlTCzCuw5E/o9alQstu7Tt2GkDnVxM7CIuu9cD1o/4rBP4DXId3?= =?us-ascii?Q?7zd5yP547IdkaAL406PLlpQBppzqslWxFRRiCDyeXU6v2iMH1FVmSxu1xBAd?= =?us-ascii?Q?4a0I8d+yKplmJ2KdlGJwJFksRASQP1AGGmBKRJDfxlPC9XkpgxvGqHc8gwSc?= =?us-ascii?Q?IpLnfNdfTP/aeklu5Gw5kYGHaELMpRjgt+ZYiw+E01UwsiSNchF2fz256hoA?= =?us-ascii?Q?i0WsQWEMt5rYs6buRFIYiGX6y1PdfFChj2+dBXwX7mX29wKCHszZjjYKjCv4?= =?us-ascii?Q?9DKBWMP2sOC6nnltbrcb4dwZla5W3xanbrTLhBVwnYaEcfLSG7ApIy23Yrxu?= =?us-ascii?Q?IjCAi8HqQ30EQXvIypmoR35X9MADVw3qEvo6err+M+qFRLux1323804VEcPJ?= =?us-ascii?Q?aQrR25AnTb0NWXSjkShew2we1aE1uyAOLHuuA+NCZMMQwfNrSsndafpnEtXi?= =?us-ascii?Q?Fw5MG14QmIrpBI5YRckVcO6iVouFpqNAAmTDQC7bYmBai++5PPf41csIT0JA?= =?us-ascii?Q?dR29Yl4iJdPwuyxdpDUK53G0ss0p+qNfyaay6k9hrRMo2AacsF/CS8U0YxU/?= =?us-ascii?Q?WfjvollzMHiq0G2zkRIxn291mZR5TbofyyAXGISHY39b5mxoiOBaGyvLWT/V?= =?us-ascii?Q?VvImmQmPerQhTiPRn3QIZ1srOBqjTRA6Lk2+GXuwUacNn5EiRcxVv3PTll73?= =?us-ascii?Q?dsQpUToxALlIcCyJkXmciHdN?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(1800799021)(366013)(376011);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?fpYGvxNs/IRJMovVuUQWxHM6zasBIhvIamID47qyNlkdUyyaNKyXvvMGZfqY?= =?us-ascii?Q?c3gSQRZWo3oUOGEEH/d5zPczcHCcGg+NFbTVerIJCTQwfAT1+97KUI4TsmYc?= =?us-ascii?Q?nqB31xsNB261EvjXRCOgm8HNwojWkYSZFhxa4RJIknQxaPBiJEDEq8KyRidV?= =?us-ascii?Q?UlgEE/U9wsiTZXPEL4lRduQ+oKSWS/Xv+c9KL04EfOKMMVm1fSV2KQfp+f8F?= =?us-ascii?Q?Oy4AAk+MMYyDoX6FquAFeukmYI2kFPcrggsgRtwWr6Wq2Jx/C5wVXJHi5q/B?= =?us-ascii?Q?9qCfWEBxG5jngwGm11CNJn1q4OEXPBeXyCxmOpaWLNBzWZ4Vpm9dOeLbPSeR?= =?us-ascii?Q?6jV4RsLbXMI4OzUWbqZmk1Ig4i+vpnA2RwMEevcUeyl3m+40OpZ8ePFn+j0/?= =?us-ascii?Q?LJACrOqOot1D0reQpzhvUue6i2osVECRuJtHQc6SzCOnDT4b3bU+w6mfxPjT?= =?us-ascii?Q?gAuzTnI6HHyfeANohdOBWIKyUrNbfdi+Cpvn0cso+6f6lIg/QzWfjYzDlofP?= =?us-ascii?Q?UZYX8Qi8Y3z7c675xuyJyPnDwiScfU6b6uxV3YiwPCcTHj9OibjMuX8z5zrr?= =?us-ascii?Q?L0m4P9t0MThEFx5m3zymzTVvadMddWSSx890D85J+1YCEDLafpKDEt2e+KNS?= =?us-ascii?Q?scsecd/jmKWmiqflUFLWyXbFadj8bL8nz2LjQQBn0c0CFMZB7fi2svobM1Zf?= =?us-ascii?Q?SVJNUOG0nch0v0vUyGnp9V3SHskqqvXrH7jLZaC2TleVG05lYfm/TDUxAp9a?= =?us-ascii?Q?pk9H3gl7D/BGoTxE57bBE0I0uEuPCKUJSpZT2J7GOZfk0T+xTVefMNbUhUuS?= =?us-ascii?Q?BjlW6JvHLNrkzMtTBnCR2dxOeIaWyP4x+M4eI3npzIwHQ8DxS5KA3uFIjXP9?= =?us-ascii?Q?ZBVoq7ds/7NYVzU6dlGMclr+43Y8yyljo6I6lAX8/hY5VrEcrTQlXwksefAh?= =?us-ascii?Q?0wv6iMoLo9tMp5YrY+FbGO3pjg4Gka692ps+s25hSXSDBbmqRpqQZyUQYvSJ?= =?us-ascii?Q?RhYoVBvtGkaoJtFdHO0Ef7efPgMMLFiQACGlLvPXDBrOzgeADnP4fzJYJCJ7?= =?us-ascii?Q?Ivk80uuHlaZWvBxi8ZPiKOBKNcUa246nqGtBMoT156qQr+nNQzphzAmVA8Ya?= =?us-ascii?Q?A5NGTcCiFImNiaUUsXod1memKfimpikBWwJnEVKDibOxcJcAdv57aig0oG1I?= =?us-ascii?Q?7ANQ3cIzkP6ayyr1+XUZhAn2PUb0lmG+s1vvwE1cyW9gZZKyrYh/HEVHPAyq?= =?us-ascii?Q?jr5z7RppVRsYhtw62gktpKG/KaXQPQNJbHCv9vgKecBWCsWv3Map0iUIQ+uZ?= =?us-ascii?Q?VEjiFI7KakN61vrCa0Zme62oBFkZ5uAFzdFC+Rn/ZlU+HKSAUiZNcGO3EZ0I?= =?us-ascii?Q?XzpHfz+vOc3s0HrFSqlrNyDhdwQSvBqNfdKVoWOkGgS4WPh6I8aBtE4vIeLU?= =?us-ascii?Q?aXYITbiK0E99XxLxRTkmLgx9zP6ktNvKysy9o0chyzZFqkiUH6DGgfdV2+/M?= =?us-ascii?Q?eWvUWXrBT12uM6Po+hPjzhCyQiCxDh0x6fFbbxhYpg98+h+TUu6+f5RI/xBb?= =?us-ascii?Q?beASzzhRkskMMIPkf8+cJ5FVNs6vK/yr/3SVdgrxguHjkuSEEtVknac/RBYG?= =?us-ascii?Q?Ycap+9wyA/+RkHzBsalajZk=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: KpzrI9q11L1RKolXZbmGHvdUrB9FDKFqw5xkQo+34Irv9gbCI8BMW796ax5ktTe39hNrpe15bwtLHa7FCWBnM9yU8/tiA9jjBQGEQKZvzmhVVinAEwKje655/uitfSHke0mw3kxH8kXmT5i0/nzDFKtW9pD8Zhi+KTu/lC51JzMvSa2sAzbmcrQAQw4iuJRH25HaZhv3aTPpIoX+idI8dFaTjM1bJ7OOsei0ch/gc5Pdi3AoEnU72cijmt60ZzMaDKMgYXHUFsOeS21c8pmiN7FpZewEByVagHn3+o/ak0+RTjAtmZ6Lw7j/8zVxiqE/rO1kiUYGVqSw4GdTT034umpgw93pVWT0VgE2MUSLFDUEro2bPXUDnQrIccjtG9vbKjB1iOO3JqPS06vdlNmFZ7dJ36HmRA08I74Z/llAyzwwDdTWWhghWgAqRtsW5/HKIxdA8WVf7Z9oMLq0qPgNyrwM2jeLTtvDKEKL4BzUE/q8y+bgSPdtYlq91OMlaishlASyjRovdcF6Hf6ofgzv6EGTbIB3tyCmyKPNMDDa6wUO3W5yrrTn/xdLcs/59LdK+XtVCtebXh1C7E1J5xIRP3NXf1z2MZGNdVe+shNVsaE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ce288bba-b268-492c-7ccd-08dc8fd7f1af X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:01.7399 (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: ohGhTwhHMiyBe1GRDOLHNeHhdDMEB3UabD+J+DCkrDNMsrzMtYpvr4YMPDYKzbHst6rhbQWr2eMAZ4DVGQaDVEEEPi2Wrhw3J2oQGl6+UMI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5785 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0 malwarescore=0 phishscore=0 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: 3yFq5Vu16nJxACEtrwUJTe3hk2Cv30ek X-Proofpoint-GUID: 3yFq5Vu16nJxACEtrwUJTe3hk2Cv30ek Content-Type: text/plain; charset="utf-8" Add a store_type enum that is stored in ma_state. This will be used to keep track of partial walks of the tree so that subsequent walks can pick up where a previous walk left off. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- include/linux/maple_tree.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/include/linux/maple_tree.h b/include/linux/maple_tree.h index a53ad4dabd7e..2a2abda9eb32 100644 --- a/include/linux/maple_tree.h +++ b/include/linux/maple_tree.h @@ -148,6 +148,19 @@ enum maple_type { maple_arange_64, }; =20 +enum store_type { + wr_invalid, + wr_new_root, + wr_store_root, + wr_exact_fit, + wr_spanning_store, + wr_split_store, + wr_rebalance, + wr_append, + wr_node_store, + wr_slot_store, + wr_bnode +}; =20 /** * DOC: Maple tree flags @@ -436,6 +449,7 @@ struct ma_state { unsigned char offset; unsigned char mas_flags; unsigned char end; /* The end of the node */ + enum store_type store_type; /* The type of store needed for this operatio= n */ }; =20 struct ma_wr_state { @@ -477,6 +491,7 @@ struct ma_wr_state { .max =3D ULONG_MAX, \ .alloc =3D NULL, \ .mas_flags =3D 0, \ + .store_type =3D wr_invalid, \ } =20 #define MA_WR_STATE(name, ma_state, wr_entry) \ --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5970017921D for ; Tue, 18 Jun 2024 20:48:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743730; cv=fail; b=Vm1VZfXxtaGimRvPrk/7oC8kiUq20GijugqPgsjygieKqm84hAUztOa+LQ16xMOA8MWPj/Xbp4q8oUuypad7e7z0KTI8qV+3W2lIfK+Cn9PAadt8qq85X9ZApvoaYtGo39dxyNo1wRAS9vs9UBR2ul8vX/d7t4/cah/FWm8KHMc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743730; c=relaxed/simple; bh=saRwHl0JNYPWsWxjRf39BL5ZCNqg5rmYyLh2HfR/NFc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=EfCdJ7uFNoqHhURoTt/NClu4OER39u7PPwQdYZpf/tlHnhL1w9mObJiWUU4ckWDE2ayunWkLApkOYeUXmV2/C4u/vo1vmhPnLgL6JOxX6XZA3SKmv8ZqIs7pH9j6BsBaSN9YqDsWV/O6sgnshbs03jJgSk6ag90pRByAjt7oju0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=NZpAl+8c; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=QvPaDkxx; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="NZpAl+8c"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="QvPaDkxx" Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUrdR027367; Tue, 18 Jun 2024 20:48:35 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=MJYJjPUqW3BO7LGUv4dPuPylke1u23RTvz/wCjTjJCM=; b= NZpAl+8cWoYNRR64T5f49itWdrq9paewg1tm4guIvf/iKP8S0MO2+BZ8oq7YwYHn diPDzRiIZpsRStc/lKzMORZfkt1b1hW9Lck9m3DPcGKm501VuJcwO3iLDtuAsHlu 83CA6+u/++Ju6wmGFGcnSMIXlyVLmruJmFZ2kQrXAUlehBJawKQ292FIXvVQU+FJ 1Jxl9d4haacBiJjlEts2KWmNiai51EjtXpKaclre94l/reLARcbN9AbQJT8mg7d9 bD0TJbD/4SOfRrcUqjGhy4ZKlQQrUTUo0xv4osrHstO1Uepma1SQNo5Ni7xfU5Eh wDMp+oTRzBlYlOO/AOx66g== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys30bnvn1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:35 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJeuRe034707; Tue, 18 Jun 2024 20:48:34 GMT Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04lp2040.outbound.protection.outlook.com [104.47.73.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1d8p6p6-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=m9sE6HluxPNHuP92Tj2AwC+MYw2idhpE1IHGEWJyioGgg2/UYvYzF8t09D9E6udCzkuJOYpQI0WEJp2CP4DSb6Aq0hyn6TpR2+nGcuQ3h0Elk6gi1OJxUXvoGfA2+4TgHGpnP6Sy6eJIEn3oQzkvBgW5qyEt/aXSGHNaRrU3v2Da828Ub4ki8naQAoGTkUT11o0chiK5wly+HfgBBW3I/nmGCP955hMwILj65ElxfH6+N+8XoyqCz2lkfbogLL82ih/fzr1XzjmbfV3JvgVbZ2dp9BWPjZe2PlFnxflE79Ux8mnjrFsaJLvtDR7tYm2BJLonndd5OV+BmBrRsX5QNg== 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=MJYJjPUqW3BO7LGUv4dPuPylke1u23RTvz/wCjTjJCM=; b=DDRtO5v6oQLSu07iLBEb/DE3voAHHfhPo6gZdp2ny2lqh4rkMm4YjHsHHjTuwh9EnLOUQmcbhmpgo8IOUaar1jOiYIMQLCexI6huw/F1KHouRcQhkz9FF1WlQk56Kq0gLjnxe6zKR4qm2kE+2RMex3TK4b5jEJ667AbPAaBW8Aft89wemJXNHOVgivD6fAyIBfyLfwG2G+DPafx383pOfzyBoYyHenm8l96gDpHsuTFs1PKdjhVa2mLr7iOU6jQ82y0N4N2bPypSWogeumNmgC3H0tRlDkxZoJRFhMQeybH/ntCvHbfIpNFd3gpH1/5/E8bS3NaJTVPzPfzgK8mHzw== 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=MJYJjPUqW3BO7LGUv4dPuPylke1u23RTvz/wCjTjJCM=; b=QvPaDkxx2tBdLoeMby3Tu3gLyhVDIFRMDc/xyygDMrOVyjYWahD7NvKYqgNps3aYRE8HHFj6DEMuRWwRuMnLrXpxbjvNe2YEnTkgU/MZiwaWVazDFrLTzK5A862ooy7YexIBobaDmiSD73PojF+MzWbLcoy1scRSm2CLuollStQ= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5785.namprd10.prod.outlook.com (2603:10b6:a03:3d1::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.31; Tue, 18 Jun 2024 20:48:03 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:03 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 02/16] maple_tree: introduce mas_wr_prealloc_setup() Date: Tue, 18 Jun 2024 13:47:36 -0700 Message-ID: <20240618204750.79512-3-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ2PR07CA0020.namprd07.prod.outlook.com (2603:10b6:a03:505::19) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|SJ0PR10MB5785:EE_ X-MS-Office365-Filtering-Correlation-Id: 8b24240b-0a86-48bc-100a-08dc8fd7f2c7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|1800799021|366013|376011; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?VsrHLlJzrsx/vWSM6uBLap/C4V7vfxCZP88lS+gMIF/GGXGjD1GF3vifd1dQ?= =?us-ascii?Q?o4jGuH7J6DhTmznMKT5NLcIWavDvpcgzgWKcmhN1y+3JknD29jCLGG3PTFT3?= =?us-ascii?Q?H2yZb02Mc5XGr5K9coCDzPfJZR+IHniAzZnAjswEOC3p5nen3vCVPLoTLHpF?= =?us-ascii?Q?66GKxWowoZzpvcsxj8ZcCRZdS35YGspPa13qenTGpAo+So4Ux5/sh88WsJHL?= =?us-ascii?Q?mXxrVb9IjxWnXKJxbi++HelLQzkycV8jiqP/u0B46mCg8vrvfd0QGV8I676F?= =?us-ascii?Q?c+NRprp18VaQ2a2RlSairpuYE2O3ZFFuPnrmb56rFTe6ev8ioR30+IPETHen?= =?us-ascii?Q?tuYZHl85nPIiSxVdh6tnNS+jocA9MdLycfoa3bYBU9E5CpWFtOiGDASW7A+4?= =?us-ascii?Q?jNN128zljnLlMnw63fahIKfqroCyJ7iC0ZJQpBctIB+o4KD6DAJcF1oL/wLn?= =?us-ascii?Q?qmBpOT7ZiHk7TS+AmPd97UsG7cwv3ezs2SaX+cyRckGQqLuxEvXTaSDgzp4F?= =?us-ascii?Q?LPu7QaSqz7pVt3uMSRSeuF8QRy2Av+vGxJnXlx3E4khR1O69hYe3u+Hfu8D9?= =?us-ascii?Q?XKTc1wX30M5YdFOofjPiBBC0FBDLgVHbfDVWU7H0vEkZj1pbdXsoCPqFCr1Z?= =?us-ascii?Q?j/Km0mPwHtLZPcbrfePXEflTeO4rd5IwAuJD/f1TNkMmaiwyiOzgfHa0ulRw?= =?us-ascii?Q?2UWRzZVyGZFueI4x4VmeREc+6GjamvmuGIe7CvcxDQAbcMsvRk11OufW6Sh4?= =?us-ascii?Q?L5EOSYdeXWrQMvgymoagXoZBEw/M9NdwpSsGxv7UitCEYM+R34Soq1PFxbT/?= =?us-ascii?Q?n0U1nFKq+ifJjz++vpAXHspMVJhvmCg1gTqIaL/qivFHecSXaFHNwlzBO1qf?= =?us-ascii?Q?WVfQogv8df17SzncjtXy5YN8vpdZfNv9sYJsVjbhU59KLvjn5+fhO8RyoE/e?= =?us-ascii?Q?5OEjDB286oT5Fs2BOZrzZOQXnB00e7Ng/9Ezg3BClde6MV4VSDvJuNgB3QOi?= =?us-ascii?Q?N7nf2viNd79PPsxGKGUqR4NIvxGBRRV7OyBVN4TtaIqm/B4+9BVP8N3D8Xh1?= =?us-ascii?Q?tr2gqKK/toMYCcXHoQUNOb2uiW2vfB4/wKDlraSl8S+xcuggIfBQ1kjT+9u4?= =?us-ascii?Q?l4KKnW5ConCZKz287B1OsLgGu884ngQR5OzRcknei78+7mfXQNh1D9Br2l60?= =?us-ascii?Q?7KrENQ3R7jDy2+F8tSBOoq0ietIBwjHL2jqg8FP9dSHD+9e1MeDerNNGlJlV?= =?us-ascii?Q?u1wS8BN9tacilQYLPkuCBtLW+qrNFJ88vGYFRPVwOKB6un+S9qcaHCpKleiK?= =?us-ascii?Q?WyYSKup1DRb/qTevO3nQVdQH?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(1800799021)(366013)(376011);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?j/5S+0YiPzYcGmW9ZGvhUnBgEvBgcrmDOy3K9p4+elmoiGLjR4HLFXt6bHk3?= =?us-ascii?Q?ozUZtM199iyuCfaq0hiiyTS3i5CePTtHdAsVerKktg1NjycP2qVrzgvip3vS?= =?us-ascii?Q?nvLE10/Yqfe/61jHVt/e3GQ7XFtGIq/9UkC8tD+5QYOpV7ZRRAN9vPXFuiVh?= =?us-ascii?Q?bybRv51HAnhCrnViFIJRshM2DyEi9mFCRyiv98A7nzr1bnm2la8cp4FtHgJM?= =?us-ascii?Q?WpAsxrxSH+0Is5FzQ3iZByGZVhLlOAM8OtO+6OtdDLGsrD6/722J7Jk4sCSS?= =?us-ascii?Q?IMuHqcf2Qorp6ocWeLk4rQ4EcOkVdfh9VAy4WL6St7Fg4y+cnsByISoqHaH1?= =?us-ascii?Q?BBbPAYVzamhBZUzobCzIgg+R3UdjCfwywpkVMHBPAm3hcpS2XWvhxWPcxF5u?= =?us-ascii?Q?pDlZWecfEgGh0j58db8DeS2iWbdWVh/Tc7bryOCHbvRk4kXpLY9s/g/PCbWe?= =?us-ascii?Q?Mn5Axss9VVCH7sUGClvuk7BJRI1I5n4RfDuTjAnkpoRWUEomTECNwh3yXRir?= =?us-ascii?Q?/iH2oVoWluEmSR3IfX+VBQ6e7ssZPHYDGNBhNGVl0HvgyGUoyFlWuqMpa8wD?= =?us-ascii?Q?dpFwQvpCa+gA3I5wu2bsr/KISZt4WD8HhwF1i+KVAQjj+YThADHDz0n4jtke?= =?us-ascii?Q?O4pRR8BU84Ia5q4Q4GwNO4Tix1+W+6QhTXwa4C38tujYupLXy+uqzfFUNgeD?= =?us-ascii?Q?g4L28Q2XnlRfJqTJyF/wZgKqQ6PPVHhWorRNYi8QgB7wB0IcTKDj9j7Z98K+?= =?us-ascii?Q?Kr53zEhgjAFbVZs8mgNwqDcOF+n1PyeI6DuicJJrXixJZlN6j3rJ/V3WZF0d?= =?us-ascii?Q?O0VmkS3Us2xL+YSOhTK1xBR75UhIj8cPlGrvb3o66w+/BFZwh3QcjdUZUv/b?= =?us-ascii?Q?/nrDUGXsIv/OxLCrwtLqf4CW870lFzeQMo0gbLwWLeeohogZ8rdUPc7KcArz?= =?us-ascii?Q?jgzkdJ86A2RN9oa+gmQhxAtruYzLxpLZMdQUP52PEW1dVqkJI/w6fTaMUi1i?= =?us-ascii?Q?WaNeqRyW518nrYphoGziGYVr4xjM/hUThYEbL4kmMo6jGrjz4z5bVZFm3uGz?= =?us-ascii?Q?VgBuRauqwgkU4SssU74XYwXzEOJHK9SFMc3es8q0qSlRSpqMVm41lIrd6H9r?= =?us-ascii?Q?e/RbQXo/qtvhIvTfKu3OsIqsgBEHRiL6/rQi0rXkwr8XsGXYq4uex2lQDR8y?= =?us-ascii?Q?QWil9V6i/B+5+YdJzWaALyWO9kivIUbq8Ob2v1hJRIZUdruta3FNHeJyzDas?= =?us-ascii?Q?PdmeX/EKOAklkKafetBE4LHrzFyaxFdeR9DGCJ6KR8x3LkuYVoffmh7/4CeC?= =?us-ascii?Q?wG4hp2pgfDTyqJMy2WWn9Jt8i+DYNps1+oLmEazA3vtE7DZVyxOzsbaoBo/c?= =?us-ascii?Q?rUA7amQudoBs+T+KqmyL4dR9hMIQDh8gxiHQjcxOjTAP9/u8HK+mDzqVWa+9?= =?us-ascii?Q?oKFMLec0pMVoTqaig2+P5iAXSI05A/A/fO4OCfXNa5UM/RXBcS9I4/8K2Iyr?= =?us-ascii?Q?sIB+dLnDVX9icC/lpKbvWe5lSzZUAOgfGE3AUSpg3+h1EJsGTVxklLS/rrEI?= =?us-ascii?Q?XdegATAJGu494TBubjp4pX1qRa9RiNEqNWoRi3LpV9yIbMEWKYPhegbf1JK7?= =?us-ascii?Q?uUSlLyVWCtkPNcv5v7v80Nk=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: lIuhycS8swCnxndgfDlXxia+i5ePHA44m0/nLUg8/QIVXAC5MYFbK9FPXpL/cP5ks6J8jIsk4G9rEhdbKsTfp03V2o38uAamgHo4he+9s1bpxwLga/wHjK7Mei4bL6F4YnitwsTIBKs8o5wJuaPAjYBHRJk6kMUnZGTRP4OsdIeVVg419Y8BJFF1+JmIU/sBmViIHo/AZYUuXZiCx/gg681crejKjWliWB5rioc5/AtfAF2KKaV5tyKgt/ePv8dzyJk9dGBX86fMePF7J3fFG2JTRDajl+IiUO0KmJVBJMmzSonUArsqsYrpSWcf9EAOScuoHfEL4/vzw6pqQjN/iCMNSLTFsc/EqucW5BQZhTPtfzLne6TJYW9VWd3KPW/pQOVY7+CAj5EigaIFwG7m0R0xntToneG0UET4bzfz+H15nvMN/NpK8y8gIjY2jGq8f+kELDZlyfrDBPHD2BFGkWULytHDBNcyYFg1mgw5pCz8nlRXoWvnQrByivdEO4T2/w7Par7+wFV3Dgo0tFi/JbBPgqmtrcJrZnDXz8OrUdB3dNiM5mgRiHP557BkYWJtY7YpR31r5NpjgGoLCtouxx4DbU2c70DZYHwr3xYTxrU= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b24240b-0a86-48bc-100a-08dc8fd7f2c7 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:03.5281 (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: WFpO+ff+yh4OeW5OAgdCvQG4e4p0Xs42Y5MnAPaGc1xjTQA0aFa+fYZPmv91BEOaOJL+KeMsLGvDvMG9szZ07n/8YHerLMevPB+Bj5/bneI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5785 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0 malwarescore=0 phishscore=0 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-GUID: _0QO2pSvox6TbE45FSyPfYKYbQUZpuPf X-Proofpoint-ORIG-GUID: _0QO2pSvox6TbE45FSyPfYKYbQUZpuPf Content-Type: text/plain; charset="utf-8" Introduce a helper function, mas_wr_prealoc_setup(), that will set up a maple write state in order to start a walk of a maple tree. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index aa3a5df15b8e..fe490ec9067e 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5399,6 +5399,13 @@ static void mas_wr_store_setup(struct ma_wr_state *w= r_mas) mas_reset(wr_mas->mas); } =20 +static inline void mas_wr_prealloc_setup(struct ma_wr_state *wr_mas) +{ + struct ma_state *mas =3D wr_mas->mas; + + mas_wr_store_setup(wr_mas); + wr_mas->content =3D mas_start(mas); +} /* Interface */ =20 /** @@ -5504,8 +5511,7 @@ int mas_preallocate(struct ma_state *mas, void *entry= , gfp_t gfp) if (unlikely(!mas->index && mas->last =3D=3D ULONG_MAX)) goto ask_now; =20 - mas_wr_store_setup(&wr_mas); - wr_mas.content =3D mas_start(mas); + mas_wr_prealloc_setup(&wr_mas); /* Root expand */ if (unlikely(mas_is_none(mas) || mas_is_ptr(mas))) goto ask_now; --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D3BF118132A for ; Tue, 18 Jun 2024 20:48:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743732; cv=fail; b=ZoWJxbPR29cy6FtFaOlDEThhYTDryjScHQ1AhzhDtMY9vqlJzwP7u19nw1yOav97b0XcHnfCfM7cusCyXfA0M5KMZ+x0vpMkSzab3Q0k7s8eGFGv+QrupHXXBCbB/02L5o2adW/CikgwmZYexeG7wiZK1XbnyFSqxytF/LujIE4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743732; c=relaxed/simple; bh=hu+doLv8M+P55PkrROtDZk5CAUz4nhaaviRSaBvqrSE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=nZa+7D60NDTvluTFQSxfAMzmDrcUXTE9B9SCqvmxrjl6NrbMiZhXqqGUWKxasQLStj7VUJllX/nNJ94IcXgmrQSJCdp2nIyaSFcsTKScxitndafcFEfW8I0CKyJmJvkSShEGD03cFvuir9yPqz89RqwZMWC/gao7zOq5r1yTg3M= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=IIRl+aEG; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=l/rGJPax; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="IIRl+aEG"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="l/rGJPax" Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIV0JD021561; Tue, 18 Jun 2024 20:48:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=Mr7ZCZdBNUuLIytxDOxFub9NGBSHRTcM1seHAm11Q1w=; b= IIRl+aEGRyolBpHTkebEz9fR8G26yaPruGdXMXA42lqJdGOcOL7ZAA5p9NDFy4QA n1GV9J6pAhVbb0ED2eQqJNQwGwU05JvrZagI0JuMiLICSn3TRY4b/PXhW9DCvIKq 3ljc0qu+e4qBKWAKb7MUnufjIFhBfTMX+ELbYTPFk7E4I6Bi2f+llmSAiirwTXy/ eWyoWo5MhZznYxMlRVI8+fmM5/e1M7aEVj2dvgZ7WLQF6GRNBdX1lAH39721D4CN 6evPLsUZC3d3zA5crGy4vPo9+Jzt+pxDbQ3VXQkhs8INL+qeTDtUTfuTgftCCqLe 2UBBxV/oRQS0AxQ+IRpfKw== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys1cc5u8k-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:35 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJeuRf034707; Tue, 18 Jun 2024 20:48:34 GMT Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04lp2040.outbound.protection.outlook.com [104.47.73.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1d8p6p6-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mFaQs7Q8kQPRVV+O3q7DbXJulr29DuqcH/WSfYqJpcaafAmhGCgT3dWwcGPPP0jGfmWjC6i9VkBRc7lBl5L0qhPs4dBBvaca8LxJPIQrr6wmGqPZ4xauYnWxBnuRp1jfC88n51RiF0kiuaRSjPBdF2aXN4pEvKZtsQ+Zcoi1/i0NURDGQjEzuqLN3rVYv3cb1vr4feLVRRyBXYOBf4G5hQuSrS1w1Z11mIq+YU4NwfCbJ0LY8WMO+MTuKlBpEhbBzjg+6yWZau+w1aP8Wp8ca3XTHNoTA0VWp8wfd73K+CNl4W66tRV1TnBVPyJXvh6AEvOxmYG4TmYF5d5fczn2/w== 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=Mr7ZCZdBNUuLIytxDOxFub9NGBSHRTcM1seHAm11Q1w=; b=ereV4egk95cQzQ4BZaQJAhInEWyy9wt0q7RMvpRtT7oIbqWoEAuXDzfvw/w/sJ7rXRdMhrCffgHaMXsjJ5h/jdkqvXTLyb7eYpBaESYRbOY+4c+Yla570Ot71ZEiFoepBW29x25b7kyoaJotmPT+DKBSD/bFw1YOLI4Ty8M6V52Uc3X3eJjUTSEB9dARbt6OZ+LAWM0A1Kdux9275unEuKUhlO+ZI+/85A0Xp7+cg1+VMZ4pOdcVorQXYdFvFPRanu7Kr6mRbGIPk47TV+2nJtpqOPPfnWjrH/RiCh43TChxlfI3kO0d+Vl+bXvbJg+vNbJflUY3D0PGFRmEyCjqaA== 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=Mr7ZCZdBNUuLIytxDOxFub9NGBSHRTcM1seHAm11Q1w=; b=l/rGJPaxN1L4W6UCT53WboC8Chgy/rZI8UZPGPqe9Q+J5AEcHfLwCETE/pYMrZjQlWybQnbQfUn9nBID8wOKOF5eRa6chBlFKC8/lhQb6QRluMiC0Q8CGM0QJp0kt0W1fpdlYytWVS8ZxfEilbBdEg7/PSDOsI1rhjufLnTBB7M= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5785.namprd10.prod.outlook.com (2603:10b6:a03:3d1::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.31; Tue, 18 Jun 2024 20:48:06 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:06 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 03/16] maple_tree: move up mas_wr_store_setup() and mas_wr_prealloc_setup() Date: Tue, 18 Jun 2024 13:47:37 -0700 Message-ID: <20240618204750.79512-4-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR08CA0055.namprd08.prod.outlook.com (2603:10b6:a03:117::32) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|SJ0PR10MB5785:EE_ X-MS-Office365-Filtering-Correlation-Id: 8611efc6-64af-4cdc-954f-08dc8fd7f454 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|1800799021|366013|376011; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?hrFV/yvpCJOJSYFS+Hhnk0Yv1gl/Y9ErTW0VrJIdT+kQ+e3zqRAZydZjsyR6?= =?us-ascii?Q?/MHS4Y34aUVt3dxc/KjcQ1PyC1zJjIDPHIWH90u8eBCsTmvazsiPbYm3PCbI?= =?us-ascii?Q?yPqG6X9yk/t6yLI/gOHwQJdfoEgXQExH5cyefSL9zOHdvdRdFxCRgYJHQJ93?= =?us-ascii?Q?WkUXCFtgCOG5FglLix5Y3mL31vTXHkss0XCz+XRsaRGe5Vj5oxq+XCa+P2z4?= =?us-ascii?Q?HfuQZc3/7t25MnqwzyHIb+PYI2Cc6CSm/mHZ8zRmkq4TUjt6MjFbdfRbSB3o?= =?us-ascii?Q?On1jnE/G6ol5cPGk8smF8sIN/F3cEA1R0+x2EDIXunM3mSKAT0/daRFd2fI3?= =?us-ascii?Q?Rtn6OHzDZ9gwjOk3ylkmCSIdxQli+sdMeeLx4u2nWHQt9MorsUdPBdkzxS6U?= =?us-ascii?Q?KALJXs+UDDppirFJWwd9vmElZN5k0AjKDKletUCHLUsb/7BX1vHgryqaw9Yl?= =?us-ascii?Q?2Qw3XqzC+HmakDxi2Le4iNX3B2HAUGpo+8RSrj1HujmK+gfzbprT2dRJI/Kt?= =?us-ascii?Q?kUBwCpkyJtSIv2PgSF+2pxSuHfB8D1Y/Q1cflpw3GdCBhn97LzzKHx/oZljd?= =?us-ascii?Q?WRCw99yNbJoU/0qX5/10jXZBgIIEqTUTvlofkeVGyk6FNdvPThFrh7eSjV1t?= =?us-ascii?Q?jKuoHaPXi+UJGiHAaNfpgR3eJLwdkcAtfe/dDDTPzajF2FUrhS4T1KCfDmDf?= =?us-ascii?Q?H0xrTM8cIfUabWaEmlXwVn0L3JqJFBXRhLKci8KR27Mhndq6P4LMtA7YDKKO?= =?us-ascii?Q?FLzoN5Hip4qDoxOZmvunmQM2HAXFiLG2uTOHjn3AXGbqYAO/6llQObdXZ1wW?= =?us-ascii?Q?W26xaX09+e+A9zuAeHkdG2zpoxO8QLQqU/Iio0E5fpKyqr71lFXKOwkn3AZX?= =?us-ascii?Q?032qUjFhpuo+ZiJPRzwjw9rZmR4/ZxSC0mkCcMy1/EOuIM7168vgHo3Sl5s0?= =?us-ascii?Q?+dO7B6sUizhd9VM9dXwI8etjIM96iv6NkrXb1SUhkoASK3gggbnbuIVUKbxc?= =?us-ascii?Q?Tcno44yY0YbcsYZ9FBFZWb+/cusIy4XSDFZ7HNnD06/HGtxXTfr3QODT7f3j?= =?us-ascii?Q?FQ073bDvvieZ/J4iAFDeSmUiK04HFKzg1LK8l/0qblztX+9U3vvJf1RTzPt+?= =?us-ascii?Q?psfqmEYsGFG9eQkk1Xh4yPPeZGbtQ+s8qP8oHzV6HfEqwQK80+fNmbkr9Vp4?= =?us-ascii?Q?VBJudHJe47RPynKAHapMf9I8xyWC6UhRuTlUqC5V32bvnivTYXewLViFQn8Z?= =?us-ascii?Q?wFacXrDRj9WRfkz7JLfcnGog57AEP6W6wL158xbpxzSl+dTkY9BkTzA2Bye/?= =?us-ascii?Q?oi3Qf1kTlZPXRuyGiA6jbpBN?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(1800799021)(366013)(376011);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CVhrtDOz8iEiY7PixQJkerV4+e3VoqLsCipubbXQ7BGLxExwZmnJE452bXFI?= =?us-ascii?Q?VH5AFj/w/w7iRqmbFnZ9rvco6egi0VZqYRE+OgYxiTpSkcXNRQHQX/4B90cB?= =?us-ascii?Q?PCTKP0E9FjC4qcUJgHmKXiyUUY5AvyvMTuq7MEwXfR41BrR3uN/yqV/bzg/9?= =?us-ascii?Q?yfi7bMMwsIOoizpQS2hSVSVQSk8vGEsUcuk1AWdT/fRMhNBRyd0gCasD4Kyo?= =?us-ascii?Q?msERRapDrAkaLef6i+Bf2HpcuQ/GltG3VDltRuZYnUW81ElhFl2nkOMEq8wu?= =?us-ascii?Q?FUH0zsIryqrEFFV6aDXWamhmIztjy/VKXnurc67FfXnx+NXByrhWMHDmlu4D?= =?us-ascii?Q?wjAxfn1jjdvHfV7eFPsTsfM1ZVXaqpdH/jv8tWEQR5R742Ho9og9Q+5xwX48?= =?us-ascii?Q?hBvTBm7NZ4SfirSWqbWyiAzNehkLT+Z3LJu+rQN7VYNx4/03KLoY6eL9bGKZ?= =?us-ascii?Q?7neDESTYsW5X6kNF8yhQsJHpvPoidA6VMqMTfjGQNInEpLGKweEgj2KipoyE?= =?us-ascii?Q?wTDbkBeyelDWzdcvv0oX0YelTEZVOxW4WNG0J3VM1QS02glwAyKdZ02JY6U5?= =?us-ascii?Q?7bGqgHViaSbjkRtkLX03cY+v4XO9KyPcFcUat1FHL2S8qWDtVhgGJ/dy/Hc3?= =?us-ascii?Q?BbBhegqV07uuJpKeLbdb+NCTX5V1rZCahBRMfAhVJuwgPMDf6Ef1SVvt812O?= =?us-ascii?Q?ClZMQhaAogR6ZfyGiGB3GIySrlfWImufIDQXRDvSxXRF22BwmnofzM6h4ZrC?= =?us-ascii?Q?uUkO0CXhfxX22C1RrcGSrNoos6xPqjh0xh8DQPWAjzEHfacnLiD5nh42hfqN?= =?us-ascii?Q?ysG9hxj8jQ/4c+LBWQBL97YUhWyadz/0wShdHrCdlgr26MYeFHWiLZuKbGLB?= =?us-ascii?Q?KEmhFdkNqNx3QAhc8sOGAXyjZq38snJY4xE4b0GxpMvXw30puX5+vroPXt1z?= =?us-ascii?Q?ir6ztqTVm4vXqLstzgDuzY18m1cKspgXkrdY6cymJxYCE8BBGwuxmpdgGrdz?= =?us-ascii?Q?9k/u/oSk0ZTa+5hFIK4+Io0Cs4UZbILHxiqF2o1OP1YNl0SD5ROPiXRvoKCY?= =?us-ascii?Q?BRz/BNa5g/B49OM/D9XcovENpU9OLvaTLKasMhucDmPj9f+L1k2h+7/hc4+7?= =?us-ascii?Q?g9nS/F8j05qMKXClAsoaDSW7G9AR208lQAM1/nFagPAKQ3aRNYWtMPrCLUmo?= =?us-ascii?Q?0g7Iw1YWb8XA9WQ3F7F7/if8LtNnAJ/TbNX+9wauvaLOnwCJ7xCIQMZ3BCm3?= =?us-ascii?Q?dB8ITx6Y2EbNGeVM9MaW9ciMwaCW3JpAV2yD8Cy2ZwCwYLHhs94V01jsCf1G?= =?us-ascii?Q?icosP+xjBwLgn1hq/vR4DC9BzWXfot4wVFHG/Ug0KDn+3zY9yXNqKJayiXD3?= =?us-ascii?Q?bglqY2IrMjWJK9IWyRqunkfJJKV0MEjxLeVXjbHbXtvuKIPrHgNEb6U3vqF3?= =?us-ascii?Q?DzO4YAkE/tpgYgKMT836KM7DO1kIf1mHWDFc8/fwMjw0GytUFn/mguMwPu8O?= =?us-ascii?Q?vUS8PFIBgjJuvkizcfG0V2W0rqD/vnPIDSrHiEX57NlmdAC6JRAzP8QNlMDx?= =?us-ascii?Q?088LBhnZkbDNUE+DaDWOq0sEAaU/+jLgIg7ypv6o96cAcmB7JA1xFc9pW6NA?= =?us-ascii?Q?3oNeI07kiU3FsArPTh9We9I=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: z9ZE7JVl71J75SoLyAQY6HSQAU7nR25QXkuNXw9TK3K3VuLg/jfEC/CJmFLYG6nrGxe2PYKKWasuqwNCDvHgPkqiodSNvmVBipxAS5o84Kp5SyMbL1nj+a/cfET0OglJhMn+TksAN5oLbukssW2eMSMhss8pPAN0hs9by5UGmkp9oT3esBY7RaQxbZ28yvxLJJ7akgDlL18h0624FdDqmfdcMuiitOzMt6BaBU/WlzWe9po8H60EGl1QSedQaDBMDtUskYkj9vEzmsCu7u5M3Mt7QqrdXzo0lAGfiUlK9SGrTequ7QU4Wx0nxQ9XfrrqEiUtpeInkfryJcOB7+qZGz8VSjITMcvI5ZzlkDrF+leRGU+7IVOIczaOBysQBlApLjTeXsGInvLQX4GJYyecTnQhG3DZ01+3ZVbON2ga1vK9eNLtwqFOUWLbwp7mG8CGvjwXILjMsYpcJe48vIBR9YsaWnpKSPIymMJRJIQsGTDkRBeZy/9S+5s/cYPJXySXbNHGMD30DOTXp3EIQnc5xrjWalouQbzK2VkTMJBKow6Ha0iBruiIod/GqW6SwdBR2+lT+ideBhQiYphSF0rd7dnXR4Al9kWilQL2lZBjwvg= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8611efc6-64af-4cdc-954f-08dc8fd7f454 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:06.1121 (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: ehuVBZVWw5Jfz0sVddriFYgj3FqGe5DQ8GzG4rgNmdcn30T0bjiKRmUJ5Ab6SST51bIMQidNhuz+FFfNN8b4ZQ+ZRy5NtFT35qx0S+94RJM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5785 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0 malwarescore=0 phishscore=0 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: 9rhLJK2pIFfwMyrpN25MycHVqCZqWx8u X-Proofpoint-GUID: 9rhLJK2pIFfwMyrpN25MycHVqCZqWx8u Content-Type: text/plain; charset="utf-8" Subsequent patches require these definitions to be higher, no functional changes intended. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 96 ++++++++++++++++++++++++------------------------ 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index fe490ec9067e..62b465f0d97d 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4227,6 +4227,54 @@ static inline void mas_wr_store_entry(struct ma_wr_s= tate *wr_mas) mas_wr_modify(wr_mas); } =20 +static void mas_wr_store_setup(struct ma_wr_state *wr_mas) +{ + if (!mas_is_active(wr_mas->mas)) { + if (mas_is_start(wr_mas->mas)) + return; + + if (unlikely(mas_is_paused(wr_mas->mas))) + goto reset; + + if (unlikely(mas_is_none(wr_mas->mas))) + goto reset; + + if (unlikely(mas_is_overflow(wr_mas->mas))) + goto reset; + + if (unlikely(mas_is_underflow(wr_mas->mas))) + goto reset; + } + + /* + * A less strict version of mas_is_span_wr() where we allow spanning + * writes within this node. This is to stop partial walks in + * mas_prealloc() from being reset. + */ + if (wr_mas->mas->last > wr_mas->mas->max) + goto reset; + + if (wr_mas->entry) + return; + + if (mte_is_leaf(wr_mas->mas->node) && + wr_mas->mas->last =3D=3D wr_mas->mas->max) + goto reset; + + return; + +reset: + mas_reset(wr_mas->mas); +} + +static inline void mas_wr_prealloc_setup(struct ma_wr_state *wr_mas) +{ + struct ma_state *mas =3D wr_mas->mas; + + mas_wr_store_setup(wr_mas); + wr_mas->content =3D mas_start(mas); +} + /** * mas_insert() - Internal call to insert a value * @mas: The maple state @@ -5358,54 +5406,6 @@ static inline void mte_destroy_walk(struct maple_eno= de *enode, mt_destroy_walk(enode, mt, true); } } - -static void mas_wr_store_setup(struct ma_wr_state *wr_mas) -{ - if (!mas_is_active(wr_mas->mas)) { - if (mas_is_start(wr_mas->mas)) - return; - - if (unlikely(mas_is_paused(wr_mas->mas))) - goto reset; - - if (unlikely(mas_is_none(wr_mas->mas))) - goto reset; - - if (unlikely(mas_is_overflow(wr_mas->mas))) - goto reset; - - if (unlikely(mas_is_underflow(wr_mas->mas))) - goto reset; - } - - /* - * A less strict version of mas_is_span_wr() where we allow spanning - * writes within this node. This is to stop partial walks in - * mas_prealloc() from being reset. - */ - if (wr_mas->mas->last > wr_mas->mas->max) - goto reset; - - if (wr_mas->entry) - return; - - if (mte_is_leaf(wr_mas->mas->node) && - wr_mas->mas->last =3D=3D wr_mas->mas->max) - goto reset; - - return; - -reset: - mas_reset(wr_mas->mas); -} - -static inline void mas_wr_prealloc_setup(struct ma_wr_state *wr_mas) -{ - struct ma_state *mas =3D wr_mas->mas; - - mas_wr_store_setup(wr_mas); - wr_mas->content =3D mas_start(mas); -} /* Interface */ =20 /** --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B0BFC176FD6 for ; Tue, 18 Jun 2024 20:48:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743726; cv=fail; b=NxbFrg0wMcZLUinEPaDf+DxhD/mWx1OWhcUEOr8/3RnUqBETSRPw0bTkOvNCmN+qfvwpGMy/rYcMWvRXMt5r4OTdd5lr1uKmODiErId864Gz6xr4VCsmNsPZMjsdk14lGFSdWR5kUkNU7ywMzU1uvElNSNrzINF+j3wGgKx9CyU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743726; c=relaxed/simple; bh=mQ3ge01/xqP5ZNvLqnLPf26PvI0gd4zI9XZqH3y7p5Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=S/epr60V7/sX/P8v1WMBxg3G+vd0BqtPagKC4kQKUKT3pQupuoxVL9yKfDaDzWJ1p9Bl1b79FVIcHNQK/o+4hYY3t/4R/ttP7rkEZiYRGFYuaKM8ntCPEdqFWp9ktsW72f6QFSXAVwZn8+MXbiAtmhJVFoQ+bcOLfWRMsetgclg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=F2sbfQE2; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=NkIiNNJB; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="F2sbfQE2"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="NkIiNNJB" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUxvX029821; Tue, 18 Jun 2024 20:48:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=aXmVafrvMKS4PjtIoLGPmCZF41DcIZM3Vethint/D/Q=; b= F2sbfQE23/Djbel1sXOVF0pMOzc/UtfrP47/oZyw8RMWc7p2r4hSV5hwCDXh8pt3 Y24Ux5O+KEelLyuoZXbL9itv7kulkTrZNlVUO3W0VIr9RWrvnqk0daPhe9x6Nc0o x6WkIsyuDgR8XxQjovaloam0qCPj45eSrU+zAA0+nZfla42V97HG4za/hRLMh3+B HBo/a6pBzhuIakrsM9ZyR0RKMcwtFzDxphQxfGFVeYbEauylhySKdkXMzwktnJk1 2SpH9gGH5iDH7s5r2yA2hd6Tzdr+kkc/3elwa/d3JJsX+/Hny+W1zOFc3tED3zkh cggCynK9HwRYg6707VKI7g== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys2js5tp8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:36 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJeuRg034707; Tue, 18 Jun 2024 20:48:35 GMT Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04lp2040.outbound.protection.outlook.com [104.47.73.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1d8p6p6-5 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZRUIkU2m8CBGAlC+hQcuAe1O3v4WB9gD9WJHkrfb63v6tuMEDcqvpBwWoBx037MywY2UID1qlQhRcR7Xpb2HeoDokHCuy7/FS2u6Z4xKH/5bQ5uWQWnn/r+9ZC3/16lHO5dNaW3juv3H6thpXRVOQYNCYwP2uF3s3DDX2ivDgvOqaccKNHmVDb+Gc/K5Hushlf2R57A2swxks7/wBDyjmo1YLG7V5oIn7LgCb0PvmCC8cQ9nvGIdhqR7F3FOFpjaZmtx7ZWKRwQlubU5ywIVZasDhn1wO23r/lTSV1e6of4yvQsA5i303HrTJ+WDuYVI0g6M2tFZHRMopq18qnC/Zw== 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=aXmVafrvMKS4PjtIoLGPmCZF41DcIZM3Vethint/D/Q=; b=E7dxgr6W3U+pmk8vD04w2Io+y+gxA6sV5vrD+8xiMuWxpOufM6RmV6eQizD0RboiWawOnwPGUGWh4tDgFsHFzwgz2JX3rCfwnRxO+rLudHO67sW/J+22xTDNyhIXBQ80eP/cXdtAy59V3oMBwWapRijVWWu7Vs/Bzw4K+YyFjxBY6hSwi75V022ZjesZuuPspUNJMn122e5LrS32vs5bN3PSkc8FKqPv1LD1DMCE0Qj2H59Ba28kvt4aDYyB45FC+a/cwxeaRAdSdioalyL4cRymqLHxLbQTIclQx2vspuVviuHqYJVm/9kmlLsBY8AXC+Sh/T4u8C2akPjsophVpg== 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=aXmVafrvMKS4PjtIoLGPmCZF41DcIZM3Vethint/D/Q=; b=NkIiNNJBq9pqbyt/oACdRG/B6bDXlPJjUavDsssroD+5K64uwwD398Py4hN/gSJpFEzpfRSujVVE6R9Ej2ltNpsUViBAqMBJILl73yEFSIB6cwjZtAA8HO723VKZLfe8yxj/5aX0ZqdjkIb4Hf5gHRF+6tiso9XH3px9idYrkPU= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5785.namprd10.prod.outlook.com (2603:10b6:a03:3d1::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.31; Tue, 18 Jun 2024 20:48:07 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:07 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 04/16] maple_tree: introduce mas_wr_store_type() Date: Tue, 18 Jun 2024 13:47:38 -0700 Message-ID: <20240618204750.79512-5-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR03CA0154.namprd03.prod.outlook.com (2603:10b6:a03:338::9) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|SJ0PR10MB5785:EE_ X-MS-Office365-Filtering-Correlation-Id: b2d3583b-9d08-4097-33cc-08dc8fd7f556 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|1800799021|366013|376011; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?cvJJKWxWcqk37KfFFIGef4CRs/cQJeRDqoEV86b8i07Uj773sYfa4JheMVXg?= =?us-ascii?Q?h2LFGx7gAa8V4IqVQat7o6RpmKHnQuW5mzf6SNRqlRJhS3E+nJv7rw8P1NWb?= =?us-ascii?Q?5f5ttHKKdoILkKM4tRl9LLR/6enuINz6gIMwO4phqVAf0yJm1KEqUS34cXPQ?= =?us-ascii?Q?rVjSNpNo50NM6FcmakQrx/Op6ZUEP/C6lQKh26pmrFB++i2+detOdTgNb7MS?= =?us-ascii?Q?c1LWbtdOdsAKoDSXpcUiMTXEXNeMw+ImKnAq8g+vBRGG7h2T6YL1wQdmF6dL?= =?us-ascii?Q?AVyKp7j9BBR6OgFvt7J/H4ImtfDWkdB23Q+5yFOtwnr2hps6TdovykKV/t7w?= =?us-ascii?Q?7VZQn+3VQKZweKuxo5B11jhx5ZT5yqmcqLM6sZoAK+epRn3V+y7viUb2IWY1?= =?us-ascii?Q?a1CH40wMWGaFkAVD3ehrMFLvta7cSeUbIZKtLOxTfdwA4AylkcJwYrjpulks?= =?us-ascii?Q?H7pv/XQwYmzDiXsEIghqLjOTTaIEyDhDYSLA5u2ycsGHbaZEooqrjDaR6Nzc?= =?us-ascii?Q?EPZ3PeElOA5AXsnz9+7Av4ur9Ivzk+YntTbzZRrmRXks1VCvbelayf84WfJn?= =?us-ascii?Q?lG+h20cUC79GnD4kf2SGH7imXhElU3/TLn85jz1oW63iFrppTmZzOgd6yCLi?= =?us-ascii?Q?98foZ6EEWRpg4DjWONpFlsv55rkRqhSySBiopraNpMLjPKr2LxY8H3fcMwNH?= =?us-ascii?Q?wihZA/8OOqPiiSqOt3km/hJW8AJ9XwdW50ZVh2iq1vgi948Jqw45pWZbFtwj?= =?us-ascii?Q?QoGMlYAUKu2ZaD+44DVYLJdMOwOAgrbkX4Du4TBgwXFVqtSX8VxSP9XAG2ft?= =?us-ascii?Q?REaSHMeTTf3VIw8e9USBUEVbaBR9VQ2jZtS+eXvRk14UaJTnAwN+o6bmQWfH?= =?us-ascii?Q?q431D8AxGDUCY0zU6zyJgiY7do9mflWUkn4vsy/dzH/PI4Y51VS0bMQkKmAV?= =?us-ascii?Q?3THbCXgSyKM5F28BFQxecTQFpZd4W/UWEdfZXIKBSvU7yDcu/A83vM1hc0Un?= =?us-ascii?Q?+Ab2bC+9d3XkaChdtv2VkqcsAIqwFXglE6+jtdoHWQG/a9s9/yRNzfvxWmFE?= =?us-ascii?Q?rslwnqp/QfhaZA/26olMfY5xGorQFG2+RkfnGcgEd1o6vDu/mi/45NG3edjO?= =?us-ascii?Q?Q7Hkluduln38Aqe5YwhrVR4ix7K5TSwRMbgBIIK+wt8yu/mYXiIjW8Ww4Uzw?= =?us-ascii?Q?0jkpA6n8XRpnbw1zRWJZOlL7pABSEDZ+G3IXdUZQO+zE4KQLpfeXraz3+MEp?= =?us-ascii?Q?V1EW9J+0mCYARzVnp0WN6tRUr+ro/4noCFMA/f2dIkvRYNVP9d3Vehhl3Wof?= =?us-ascii?Q?i1hxjvxRgvHj75lPRe6DLRZh?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(1800799021)(366013)(376011);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?En6L1ZgQHHFA1fPnQtLn6uDOIzpK/+kQmRcCO9kSeSS71O68/AzKMbupmCYL?= =?us-ascii?Q?KU2hbJBnE8vbTsRu1WsivWHmdGM/9JotiqSiRgrlV42Smg0Vt/HsGTOJ0lbs?= =?us-ascii?Q?Xf8AXV5i2zDiGZ9NSuI8Nt3vQb6JvEz/5N2Cm2tlfFeqsAReWL/0L/SU/ddF?= =?us-ascii?Q?kxiWHHCcg9YGrz31Tl65mAIwsVrPQ0dl/BM1lI8zhc/4ZSFDVKfZIPOaDwpM?= =?us-ascii?Q?t55mncbNLTJpxBo+zFPNpECR9QtPWexjmOL6707RNAwrQqMQHt86G4iS6QvP?= =?us-ascii?Q?ZSLozVMdze/DtdBQjZp8I8kXuPFCYsbvFjCer5iIFNKXjAYS86vIGpM0RpTT?= =?us-ascii?Q?m3rbfnbXWhFQv7wYpVtS3zeiK+rHQTfc0DXP+kX/Yz+8DxkM9AZf3dKkgix2?= =?us-ascii?Q?XGe0r926jETvjJQ9YjlNWfT0LhNu1kg3RjwJ/5Gzz2cyDqcfrWlVH60icOiE?= =?us-ascii?Q?DmD1GDo5/yj72o4LgJVi64oqbrd+5agwBMa2uPB3qU/6QxZehmgHCBS9JJuL?= =?us-ascii?Q?Mz+RTuJImLOM5m46g6HvmlyzuiFCRqZ3X/nXo150DtrGO8ko62+0OQS09JJQ?= =?us-ascii?Q?Qn6J4hH/3piaFHqrRKpgS8d0Q7ih8SyEwmm+DV/kMCS3C2t8Q/JlG9A8AkR1?= =?us-ascii?Q?sLEFcsZJXDylx7aKycSGO6r+O5Tz34YuTTPqL+bTQuOExEczVZCPs/cbep8K?= =?us-ascii?Q?33w6nq/hIKTe/of05lytTKPfoIo0y95eEbWLpbjMdT+uS+Dh+oweF9EwnehL?= =?us-ascii?Q?J9vCdp6mj8je43an9Kv5GfCNgOnz4BgRdU1FIfNJbH2TDhiKZf0ytjXH06WE?= =?us-ascii?Q?1uHH9enmzMDPnbNyVHLUXn9UZk40gE305dGDJEjld74vxR5tr6hTiky/LG/A?= =?us-ascii?Q?3YvBzHdkr6XrvHc35JM0M8TVyvay0gG8RksMo4lsWwNmGwzHE6vlIQ9owdB/?= =?us-ascii?Q?QiriYEHlDMOylxVqq3J9zfIcDrMYZOu8oXAt2KfIcrHguBmyk/qn/T5URuxk?= =?us-ascii?Q?g9sKtCflAXUkprI/nmdYFkbuDCDC9MuiNPf9RY7BW9P/L1CKTYZpxF04QvI/?= =?us-ascii?Q?Ce3z9nfrtvXOdtEkeUkYyUQ331O1hRJTRo55rQxrVpWEINcOsduU0KFUdINV?= =?us-ascii?Q?ZmNSp3QjurF94+plp7BQjKigqJa8n3RKWwgd072XU6SSjXTho/zD62vwtWDq?= =?us-ascii?Q?/wNVGHI6Dj0wjyIfpI7gEMb7Fl2o5t/E6axBXa/cYQ/LbUzvTemk6L61oBqc?= =?us-ascii?Q?UZzcRAYbkgS8iDK2cT2UtD0ZXzhsNYPBJhbN+BcbtHE/fAtV892TIiubmUY5?= =?us-ascii?Q?/aXPxzJTyFT9CxlDd1g2eOfAz07u8a8nCE4zKNuvTLuaYqSHFUdilnJfpOBt?= =?us-ascii?Q?0MtC+KmK09rT0jZoVl2e96mOa8D5cZbFnuTRz5XJx4lvTYNl0KxQCvvPPBHw?= =?us-ascii?Q?+jYV2m+O7cJEIVHUXITm1h6bOAHrbvujduG63zcDbLkozS2NallXtMqy8cGw?= =?us-ascii?Q?D3vFRN/2fWctjB6WIz1NorQrJr/i9s4ozszJt70L91Inz0wjqGAb4jNe8T15?= =?us-ascii?Q?oZ4iNhxAQN6XvY+OuMKLSCEbpMfwZVKr9fMDiWofUAnIcCKEQRBOHoMRENiZ?= =?us-ascii?Q?nks704iMNxUo+jZt6mwjleE=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: SiAQF3kLcY4CmdHHXwPRlmqVgs4Wu0aKEwEX3PEkQexK5TeNhwLfOQ4rS6Kk4RXY2e6JWKSrUaRqua04NhSqdUylc1hSQ0/TmzdKHEWVaTleGBpbPAOlf8BOvU8SjWhvS1eiymsJQ9SD5FzEoZkCgyex07hu5TBcYqg+o0pOT5l8Lbj1EaFvw8E7BpakcSEbsRRac6NYUcHsqohoP2bGW35w66u/TOmBlqiT6k8Bzmd2J9kpjINAqIwzVF7s1yMohwkUCXA4rYkk7ynojhtocr+z2vXhkuIefW3LLc74f2HUiaJZx456aPfEB54j4o+0u96nL0SWh2yjRyxqIXalEQpHcfLxuftzbQgh1yHeX+tB0NpemwTlSHvMwgKVm8SV6Iez+8gZ0VHrMJPFpMhf7HuUatu7u5mlctte4R62BV32p1vp9K491/lnRLL5G86J5SS0x/ujP/KVYrKvPUYIOdNbxLYr8ZMWexWZzVka4RZdSGx2GqsKZq4lHNvo1OUFIj0QH1jRmc6WX2gvCiBF5dOnSii2N0eea3vymWjks955QSeYyemG/NrNyqkNJDCW6yGsvsUod+8eszc/wIw8sJOfjkkEYDREzNghBmSspPE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b2d3583b-9d08-4097-33cc-08dc8fd7f556 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:07.8410 (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: 8lwbZLRZ9gyMaI6tC9Hf+PElH9eQXt6jc1/4qaBIPYTILyVtgOtEG5kccIuofCFguIaQPo7vgithLqzH6lO2ze/gSvlfpqNiwJyc1ccReog= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5785 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0 malwarescore=0 phishscore=0 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: lSLopz7xQU6NG444sDHcpoAQNzAKjmka X-Proofpoint-GUID: lSLopz7xQU6NG444sDHcpoAQNzAKjmka Content-Type: text/plain; charset="utf-8" Introduce mas_wr_store_type() which will set the correct store type based on a walk of the tree. mas_prealloc_calc() is also introduced to abstract the calculation used to determine the number of nodes needed for a store operation. In this change a call to mas_reset() is removed in the error case of mas_prealloc(). This is only needed in the MA_STATE_REBALANCE case of mas_destroy(). We can move the call to mas_reset() directly to mas_destroy(). Also, add a test case to validate the order that we check the store type in is correct. This test models a vma expanding and then shrinking which is part of the boot process. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 214 ++++++++++++++++++++++--------- tools/testing/radix-tree/maple.c | 36 ++++++ 2 files changed, 190 insertions(+), 60 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 62b465f0d97d..5187f0b19742 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4275,6 +4275,151 @@ static inline void mas_wr_prealloc_setup(struct ma_= wr_state *wr_mas) wr_mas->content =3D mas_start(mas); } =20 +/** + * mas_prealloc_calc() - Calculate number of nodes needed for a + * given store oepration + * @mas: The maple state + * @entry: The entry to store into the tree + * + * Return: Number of nodes required for preallocation. + */ +static inline int mas_prealloc_calc(struct ma_state *mas, void *entry) +{ + int ret =3D mas_mt_height(mas) * 3 + 1; + + switch (mas->store_type) { + case wr_invalid: + WARN_ON_ONCE(1); + break; + case wr_new_root: + ret =3D 1; + break; + case wr_store_root: + if (likely((mas->last !=3D 0) || (mas->index !=3D 0))) + ret =3D 1; + else if (((unsigned long) (entry) & 3) =3D=3D 2) + ret =3D 1; + else + ret =3D 0; + break; + case wr_spanning_store: + ret =3D mas_mt_height(mas) * 3 + 1; + break; + case wr_split_store: + ret =3D mas_mt_height(mas) * 2 + 1; + break; + case wr_rebalance: + ret =3D mas_mt_height(mas) * 2 - 1; + break; + case wr_node_store: + case wr_bnode: + ret =3D mt_in_rcu(mas->tree) ? 1 : 0; + break; + case wr_append: + case wr_exact_fit: + case wr_slot_store: + ret =3D 0; + } + + return ret; +} + +/* + * mas_wr_store_type() - Set the store type for a given + * store operation. + * @wr_mas: The maple write state + */ +static inline void mas_wr_store_type(struct ma_wr_state *wr_mas) +{ + struct ma_state *mas =3D wr_mas->mas; + unsigned char new_end; + + if (unlikely(mas_is_none(mas) || mas_is_ptr(mas))) { + mas->store_type =3D wr_store_root; + return; + } + + if (unlikely(!mas_wr_walk(wr_mas))) { + mas->store_type =3D wr_spanning_store; + return; + } + + /* At this point, we are at the leaf node that needs to be altered. */ + mas_wr_end_piv(wr_mas); + if (!wr_mas->entry) + mas_wr_extend_null(wr_mas); + + new_end =3D mas_wr_new_end(wr_mas); + if ((wr_mas->r_min =3D=3D mas->index) && (wr_mas->r_max =3D=3D mas->last)= ) { + mas->store_type =3D wr_exact_fit; + return; + } + + if (unlikely(!mas->index && mas->last =3D=3D ULONG_MAX)) { + mas->store_type =3D wr_new_root; + return; + } + + /* Potential spanning rebalance collapsing a node */ + if (new_end < mt_min_slots[wr_mas->type]) { + if (!mte_is_root(mas->node)) { + mas->store_type =3D wr_rebalance; + return; + } + mas->store_type =3D wr_node_store; + return; + } + + if (new_end >=3D mt_slots[wr_mas->type]) { + mas->store_type =3D wr_split_store; + return; + } + + if (!mt_in_rcu(mas->tree) && (mas->offset =3D=3D mas->end)) { + mas->store_type =3D wr_append; + return; + } + + if ((new_end =3D=3D mas->end) && (!mt_in_rcu(mas->tree) || + (wr_mas->offset_end - mas->offset =3D=3D 1))) { + mas->store_type =3D wr_slot_store; + return; + } + + if (mte_is_root(mas->node) || !(new_end <=3D mt_min_slots[wr_mas->type]) = || + (mas->mas_flags & MA_STATE_BULK)) { + mas->store_type =3D wr_node_store; + return; + } + + mas->store_type =3D wr_bnode; +} + +/** + * mas_wr_preallocate() - Preallocate enough nodes for a store operation + * @wr_mas: The maple write state + * @entry: The entry that will be stored + * @gfp: The GFP_FLAGS to use for allocations. + * + */ +static inline void mas_wr_preallocate(struct ma_wr_state *wr_mas, void *en= try, gfp_t gfp) +{ + struct ma_state *mas =3D wr_mas->mas; + int request; + + mas_wr_prealloc_setup(wr_mas); + mas_wr_store_type(wr_mas); + request =3D mas_prealloc_calc(mas, entry); + if (!request) + return; + + mas_node_count_gfp(mas, request, gfp); + if (likely(!mas_is_err(mas))) + return; + + mas_set_alloc_req(mas, 0); +} + /** * mas_insert() - Internal call to insert a value * @mas: The maple state @@ -5503,69 +5648,17 @@ EXPORT_SYMBOL_GPL(mas_store_prealloc); int mas_preallocate(struct ma_state *mas, void *entry, gfp_t gfp) { MA_WR_STATE(wr_mas, mas, entry); - unsigned char node_size; - int request =3D 1; - int ret; - - - if (unlikely(!mas->index && mas->last =3D=3D ULONG_MAX)) - goto ask_now; - - mas_wr_prealloc_setup(&wr_mas); - /* Root expand */ - if (unlikely(mas_is_none(mas) || mas_is_ptr(mas))) - goto ask_now; - - if (unlikely(!mas_wr_walk(&wr_mas))) { - /* Spanning store, use worst case for now */ - request =3D 1 + mas_mt_height(mas) * 3; - goto ask_now; - } - - /* At this point, we are at the leaf node that needs to be altered. */ - /* Exact fit, no nodes needed. */ - if (wr_mas.r_min =3D=3D mas->index && wr_mas.r_max =3D=3D mas->last) - return 0; - - mas_wr_end_piv(&wr_mas); - node_size =3D mas_wr_new_end(&wr_mas); - - /* Slot store, does not require additional nodes */ - if (node_size =3D=3D mas->end) { - /* reuse node */ - if (!mt_in_rcu(mas->tree)) - return 0; - /* shifting boundary */ - if (wr_mas.offset_end - mas->offset =3D=3D 1) - return 0; - } + int ret =3D 0; =20 - if (node_size >=3D mt_slots[wr_mas.type]) { - /* Split, worst case for now. */ - request =3D 1 + mas_mt_height(mas) * 2; - goto ask_now; + mas_wr_preallocate(&wr_mas, entry, gfp); + if (mas_is_err(mas)) { + ret =3D xa_err(mas->node); + mas_destroy(mas); + mas_reset(mas); + return ret; } =20 - /* New root needs a single node */ - if (unlikely(mte_is_root(mas->node))) - goto ask_now; - - /* Potential spanning rebalance collapsing a node, use worst-case */ - if (node_size - 1 <=3D mt_min_slots[wr_mas.type]) - request =3D mas_mt_height(mas) * 2 - 1; - - /* node store, slot store needs one node */ -ask_now: - mas_node_count_gfp(mas, request, gfp); mas->mas_flags |=3D MA_STATE_PREALLOC; - if (likely(!mas_is_err(mas))) - return 0; - - mas_set_alloc_req(mas, 0); - ret =3D xa_err(mas->node); - mas_reset(mas); - mas_destroy(mas); - mas_reset(mas); return ret; } EXPORT_SYMBOL_GPL(mas_preallocate); @@ -5591,7 +5684,8 @@ void mas_destroy(struct ma_state *mas) */ if (mas->mas_flags & MA_STATE_REBALANCE) { unsigned char end; - + if (mas_is_err(mas)) + mas_reset(mas); mas_start(mas); mtree_range_walk(mas); end =3D mas->end + 1; diff --git a/tools/testing/radix-tree/maple.c b/tools/testing/radix-tree/ma= ple.c index f1caf4bcf937..2c4e69591235 100644 --- a/tools/testing/radix-tree/maple.c +++ b/tools/testing/radix-tree/maple.c @@ -36223,6 +36223,38 @@ static noinline void __init check_mtree_dup(struct= maple_tree *mt) =20 extern void test_kmem_cache_bulk(void); =20 + /* test to simulate expanding a vma from [0x7fffffffe000, 0x7ffffffff000) + * to [0x7ffde4ca1000, 0x7ffffffff000) and then shrinking the vma to + * [0x7ffde4ca1000, 0x7ffde4ca2000) + */ +static inline int check_vma_modification(struct maple_tree *mt) +{ + MA_STATE(mas, mt, 0, 0); + + mtree_lock(mt); + /* vma with old start and old end */ + __mas_set_range(&mas, 0x7fffffffe000, 0x7ffffffff000 - 1); + mas_preallocate(&mas, xa_mk_value(1), GFP_KERNEL); + mas_store_prealloc(&mas, xa_mk_value(1)); + + /* next write occurs partly in previous range [0, 0x7fffffffe000)*/ + mas_prev_range(&mas, 0); + /* expand vma to {0x7ffde4ca1000, 0x7ffffffff000) */ + __mas_set_range(&mas, 0x7ffde4ca1000, 0x7ffffffff000 - 1); + mas_preallocate(&mas, xa_mk_value(1), GFP_KERNEL); + mas_store_prealloc(&mas, xa_mk_value(1)); + + /* shrink vma to [0x7ffde4ca1000, 7ffde4ca2000) */ + __mas_set_range(&mas, 0x7ffde4ca2000, 0x7ffffffff000 - 1); + mas_preallocate(&mas, NULL, GFP_KERNEL); + mas_store_prealloc(&mas, NULL); + mt_dump(mt, mt_dump_hex); + + mas_destroy(&mas); + mtree_unlock(mt); + return 0; +} + void farmer_tests(void) { struct maple_node *node; @@ -36230,6 +36262,10 @@ void farmer_tests(void) =20 mt_dump(&tree, mt_dump_dec); =20 + mt_init_flags(&tree, MT_FLAGS_ALLOC_RANGE | MT_FLAGS_LOCK_EXTERN | MT_FLA= GS_USE_RCU); + check_vma_modification(&tree); + mtree_destroy(&tree); + tree.ma_root =3D xa_mk_value(0); mt_dump(&tree, mt_dump_dec); =20 --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D3E53178370 for ; Tue, 18 Jun 2024 20:48:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743728; cv=fail; b=XcVSP96DRAP7+FbI8wzea3/rfUcmSJy5HwP2tdpB1t5byuOpnOOfVDteJyHZiEhHJhPgpCojDlFmBtcCrfvyilN49vcDzeks1Z5Hv/UAaJjGcGQvgkGuC7CDSGscWUFA+k5xiV4P4CI+AzNDwHD8WAu/L5Kfyx9SC0P9wB+r9bA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743728; c=relaxed/simple; bh=mucbatbOhbvJAlEfkNTS8qLbm6X7/mqBxMiQfvxqb3Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=KrfjdrAAkgfNcC6p458gOHvnzo3R0SLyMQsQFJ98t5bOl/doHD9r0zM0uNKmDw9SpWJpPJ2QCBZPVWRbuaToexam5yybUVrnRD5G2hW/jjIfoxDO5c3+cWqSFbGpnUM4ldzWgTrZCHO0U4yrn28bSrr5SAfA+gD4F0R0rDGC7vs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=CJJa/eHQ; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=MEvmtRHW; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="CJJa/eHQ"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="MEvmtRHW" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUuo5029804; Tue, 18 Jun 2024 20:48:31 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=TnRBn16rZSvz7QjvRsI5wvDleitKq8HR28QzelIjebo=; b= CJJa/eHQwwQwku0JK0aSCHrggI36NAFmTw+tXINRpbGWai4ZnKgjMr1+dAgfzwGB mcbnkMoI2OuZtO7YKPH4IXL+n0pHk85JefLwx+zFTDkJoH69R4Y/B0D7oO7y3BDQ hdInQmkP4r+aII8qNVztXmyVsZB0ob3oQby52bxDnVTSAm9v2kviu3TdApijyxlq smbbPMgMxTPPjfUo6LrSx/V25s1CwB1hPwk/SFjiY2qvEH+NUspGU0JjsPkr0QMe z4Qnjydq735tdwzsf+zwO69zysCkmhplfS/ewnIUsUAc99Y1gMgF8aJEl+Si0OxW j66/RGyaKeaEKjEsDVRF0Q== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys2js5tnm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:31 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIN034656; Tue, 18 Jun 2024 20:48:30 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:30 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DiU2J5YwcEmv0CUVsZ/fIrquNMYhpCQ8bDuaRmbdltZ6klnUlu3X+Jl+h/ftPwUpGkgpHaGciH0YTHVgYkPadG0qmA7Qg4fCZeFKkCqp4+wvYlGixfZr23ibrWZnI9mSIuDR4//lbZyMkmLpLnwKRjSkLLQiyD7tYr5Yc+xVTW8Qf+kpVvep+3axEqH0N5bUDt2DKdzoW5gtUgbIuIJrTHXjysawPvMGfsnuazOu4rhq5ef+HcvZqcnC6yImfALLH2ssctYSltF5h1N9rWxnErPCd+ykzBFVrjAV7rp4PhFdrCj/WZl9Q8SLmRE5Iu2eVJPB3PC/vhaMTbtQBAFWHQ== 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=TnRBn16rZSvz7QjvRsI5wvDleitKq8HR28QzelIjebo=; b=c85o++LlvWz/an8C9RFZZqIYPTPFQwJY1YYrUWRnyFOp7bJtk7lZuOYGpegztZ3/ViZSm/w39cxFF9kDKjgQW+0H5YTEa2xizdI5d4v5nlmhAH3fbOiNp9Syet6doMwEZTLu8BbcdV9LbxT1ROXAXccWSU4RTO14YKtadanWaPglwIYHtLArBiOMvijyvbA3bpMPkEube3cZ/DZkLnN6IxXSEKXvz1HYE27jmB+/Kfp4Vd2Mh1YXL8gxw+Pb0tbTryN1/toPupJGWDp0tDsrrc2/YZi6sBNhTqYe3x55mjmZ8lv6CUUWco1XtTyIeYBf+O4RaPw4gIq4kocrL4+WlA== 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=TnRBn16rZSvz7QjvRsI5wvDleitKq8HR28QzelIjebo=; b=MEvmtRHWxY9njVZdwVHK7sddU6jIGwm3IVMi1+eTG9JzFB65qWg/oWeW6EaRadxLVYIepxKm1Q8fWq+BERgkiHL2AbiTRwdcEHzOy9VSTQ5F9LT9m+TFs8rkwrEEHQ+NNshGAos61AUR0bMqR1EJw2dKU2+Bs5uKlRq9Rgqgi50= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:09 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:09 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 05/16] maple_tree: remove mas_destroy() from mas_nomem() Date: Tue, 18 Jun 2024 13:47:39 -0700 Message-ID: <20240618204750.79512-6-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR03CA0370.namprd03.prod.outlook.com (2603:10b6:a03:3a1::15) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: c3bf3124-c4fb-4078-3b8f-08dc8fd7f662 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?6BEowefu4qlpmm0tipmjL9ySGeduyPI5VkOvDkCso3z+pqxatnA3r6Mfms5v?= =?us-ascii?Q?DSCftAdsaYXBJSj2kB7M6ltV2CV+nt0rbViQf9B1N74FYgKT1sd5YfaX+IXZ?= =?us-ascii?Q?c2W/OL5Yy+rpvC0kpk5pKbRdLVurEs40ONpwVRQpEpnJJK9Xf9XQRTcSBw18?= =?us-ascii?Q?IVwIndd/PjJGm0Zvo2TzLEJEaVNPCwzYaNBgVY5lWGv9vPCaDr9hMq1NMcxE?= =?us-ascii?Q?VBX88pkTlg32gMk/pIUi0Z702MSS1ibexz8OqjhjJ45nL872lW4ZmwD4AZHi?= =?us-ascii?Q?0GRImSSDnpUncT4y22tCdV8kGSGBIvVyXRqAuEm3JXy2PIps9NYZ6bQxGvSn?= =?us-ascii?Q?tY+CGjf18l74STN2NevXiDynZHLA18hVuGi3oC2beeIYQmcrclV1VmPi4uaw?= =?us-ascii?Q?GaJEcAHKIijK047UQJWcoNyRT712zTUAY9CLLh1zkJjNQ1OF63LIG4Y0jKGa?= =?us-ascii?Q?ZwmcjGIDhDTO2PObDbCKFt1nPo0DheOQGi57LUA0zvqX/JTIPoea/HKQlIOX?= =?us-ascii?Q?fWiEBZKa0xt9/YtaHTfeUYbR7qp3+dM2jonC2fCHPGCH+NAZtBiUcun8cJEE?= =?us-ascii?Q?DvOh14utVtotbIay9NYS5E+izVDCVYtBcTr5LFrIaJvkxC2g0MA5qgUW+RXH?= =?us-ascii?Q?kfSK+M3qac1jEdLyRRKitP2uqHVHB9K3LjOszlcUCRlNar7ttY6slKbYYTmV?= =?us-ascii?Q?o0kaLtfo/UjkQoMG2rAZmy1uY207CxRUAGV0KQFRS9XwhFF8t6yjHqYS0kkM?= =?us-ascii?Q?P/cR+ugfeJVRD7kI0aWnAlF0v7UoRLx+VqmbUnF0Pe75qSxD9ElJCmiH0Qoj?= =?us-ascii?Q?iLgP8I1sWG9VW/pCvE1PkoTGUsfdjR/5ij9+pQnS6nE8SOU3hyeneiIX7qq+?= =?us-ascii?Q?CsRGoeV2SlFjtIL3xI/w5FmN6jHQRp7pOPm5QdPNbYPFEiKtxStnIdIyVE+Y?= =?us-ascii?Q?maaBFU53WJQRNs87TdSYy+nlEWewvc0L8tTpjqqQsaWpURZiNdGTEjiaTLJb?= =?us-ascii?Q?Aky17Ov3tazR4BM+C9xSXybdJcXLZIkmEp4PF6/t+NGq0QUwi+bq4n0xKzx6?= =?us-ascii?Q?isIRfdyt8QQHZkCyztipnWKOg4ucK9VLSwQF0MTRkjD47O1nBSrbag9S/auo?= =?us-ascii?Q?scXjhbdEQe7fa+WKrCxa7klmuV3/RW6UBy9OVhzRGARzuoLnjydjuCNO1CGi?= =?us-ascii?Q?Zq1ulMiOFI0xBCT5eJXCF6DB9Qny4iU6SkFeRgLU4AdEJeus7wXZUDYUG5u7?= =?us-ascii?Q?rwtulsitGTbOf+ZRuL4FsxTSzUuMSX/3t4JyMttJBbGbBj/px3DMKHjfoWxY?= =?us-ascii?Q?AI3zpJ6AIdrthbLx92iVQiLT?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ONhv/mTECoxuIkkcKJGEc9k9Bl/7Tow07KeSNUrBM2gJiMnafbE5gShmey+3?= =?us-ascii?Q?AF6nwhznKnvCawftgxLjbF6VQ+DKlgWtbA8tTmzdMMYI67ucsiqjgMLRogD/?= =?us-ascii?Q?yWM2LHamq8KMo1utQVy7N1Sjj1EaMrWSfR7koEiT3I7Ry9kdQxdvEQlxSXAR?= =?us-ascii?Q?yrVO76+Dd8bXDrg7U4y7rCIGKJ588DHb75xTQTfG2Ekf6qQCci8R6nsRkiSy?= =?us-ascii?Q?VaLwd64C+MgdDMMvSccbaBJmz9WAWKcPkmzAF7mKCwxYGWGtJHvMYH6KGbAW?= =?us-ascii?Q?laMSh9Z7Ny+ozr6QMVNwcYxBsRz1cEvtYOtZo8fozTE7ZNgSCnKJOlqlWXe/?= =?us-ascii?Q?qciIiq8mr0RVC5U8aoi291+viZGHGOVNBsD+ZKwhwq1T0I9OuyjrqWFM23i4?= =?us-ascii?Q?Ev6a1DO0cji1Q8Ii58lizxjhnPwWQ/U7ClJNsBbaODnbZxYFFefwNaLtFNub?= =?us-ascii?Q?v0jmlDNxS7Hgvf7oNmV9sPvuXRxmmZB7twDdW+ONsn1Yr+IjgcZus0DUbNLO?= =?us-ascii?Q?uWiyFll8ufUGnLXvARFcMFO+tHZj3qAezbzJn48cCKxN4UX/c2kyI4m4URqg?= =?us-ascii?Q?5LlnRp9GZTKwioV8MWd1iEdKROvpUYW1Ht5LSx03L4D8Q+Ho/eKVeWtvtFS5?= =?us-ascii?Q?gtPZKXXc32pXJO6kzLlrFRF9W97wgSRXDLUmS12DSc5GBOdX6/4yvMZiT0hd?= =?us-ascii?Q?uCDAZCljPmXRJ8dw+uGBPtQMemm90JyyGVulIQgOskNUOM/mA3Wwxwmq9xfe?= =?us-ascii?Q?Zrq7we/dmNARD1/fhs9DtICoz2y7MOsp0jtK7cGouwU9u+8AIXGowffBB9AW?= =?us-ascii?Q?EaXR/PfziQv4yjeQFPuSrJOIIB7xePUdeunzEgbmVGZFGzGNBh+uMMY1C1Ux?= =?us-ascii?Q?PdoJ43cyKtucrIz4BqmFTxx2aMRmmxuN1hKoKGazIdRFQysp8FuRlTNBRTqZ?= =?us-ascii?Q?N7yDCvL3N+GWXSfZykHR8sJ5dGAdqatib/BojJIOCLMkSaI1AmSba2Is0D1t?= =?us-ascii?Q?undqDn0I+f5F6H+CeSyy3XrJSrsFav7dHr2j0Kt9q4dP6IDC6m/gNWpD8hoJ?= =?us-ascii?Q?BSZNk9ufbgZi4cE/UQR2Xu78nLvDFzOVdWf1MTDPwSUK6Ub0ufj8W61Bgbmm?= =?us-ascii?Q?I4rOlm618eGxicdWd45UlyhNqs4z2tU9VZZIODbrYs/ZyFiitTLfwsYSwPmb?= =?us-ascii?Q?xBTNAJlUvhzemGdd7tSiDXiwz8bqDvT/Lrjom4SXEZtuVOmH6RvcL2olL8n6?= =?us-ascii?Q?ibEa9QH8UI94aC5jynjg16Xmbk2kEkvxbFqUHF+J/sR7binw1z2IV55cbe9x?= =?us-ascii?Q?YuiaxZTQ0lxwoaCPCeFRG6rzkvKXegtj1XgCh1ES52RnNjDijf7o4CEHsCjg?= =?us-ascii?Q?4J5DYXRChqZrkeLO30z+K0wITK408qLj5aFWT9F43HfOPJSkUT1AxgaPjZeb?= =?us-ascii?Q?PJ/68cFpvbtgCFjOx37N8KcchnOzAY0xl0+xScLM/KHI/Pph9Y9UZi+vMEiS?= =?us-ascii?Q?v4xbLdw7+zznm9AWtuCAyp5OJtQTThzMbm/WTIcmHN5RsB89N7UJvc6UZW40?= =?us-ascii?Q?sZySQ8A4mGN46WPDD8gvi7Y5IeA9wGPxOZaVyt1STDprlC+XzoXEF+HVoqId?= =?us-ascii?Q?ZWErWvOZbTAKqamvZ2YZOcQ=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: e7WorfCG7GqaWfOFtM1LsA0vfJpConm6cx0upBTraJuLWRRz0d/YLVPpbA9AfpAf/s89TPvqlbovdquZs60SFc5hV6RZJd0jq8UVg9l9K4BHfTqgHbkAfyL2zqM5yI89BcMz7ZfUSQoZUUpwq36h0d/1cLMcIB7jkiPuDniCUyrbEqezFVywM08DTmCPiTRJ6ccQjP4EcKuk3yM+vxkTezyttc6wkFYfjbDR3l5e3w18psDr/9vYrWd10cRmTubecrwyi38vXsJU+UpUYvXr+pZ2XfHOd0Oe4hctpJvIkmDjAEJNEY11VavPHuLfoPVOBbAQR+e9c/MRnJxzIMKkW7tBjxNORN4yZMMwcXQ0lHwrMd0eXjO9C5LQGxb02QbBxnN9PwIqyK87cnkKmbEYX8peov0hrZx7so+HE8llTCAXTn02A+86zzeWqUKQC0SrXhhLgKA/taXMj//HskH59UV4YdzDgfXB5ggVdGuZZ12r/t/zCwo7IlMSS8yr9sKqwMXt7ujvbWSCRuwjJsHlhoo3aW9MPKWCuqxRRQpT5f4eEpqKaGUkVqCo5YhE3Ncibddmo5ewK5AZufC2WLPWyDatLTt3P/2uUoBm9mHYTXE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c3bf3124-c4fb-4078-3b8f-08dc8fd7f662 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:09.5533 (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: Uk4QwZbOKv86JBfudNHhWo/sYN7bFT6A9OTZvPhvC3AIm7LIdpJD8WqRWdHf99g/xYgZGXrM8o4fuTCgCEOoGALAsrL5WsYXN+qwtrvEwgY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: mQFZjeVucwtriD1_srfgYEISTO2A0VzB X-Proofpoint-GUID: mQFZjeVucwtriD1_srfgYEISTO2A0VzB Content-Type: text/plain; charset="utf-8" Separate call to mas_destroy() from mas_nomem() so we can check for no memory errors without destroying the current maple state in mas_store_gfp(). We then add calls to mas_destroy() to callers of mas_nomem(). Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 39 +++++++++++++++++++++----------- tools/testing/radix-tree/maple.c | 10 ++++---- 2 files changed, 32 insertions(+), 17 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 5187f0b19742..648cd003b99a 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4524,6 +4524,7 @@ int mas_alloc_cyclic(struct ma_state *mas, unsigned l= ong *startp, if (*next =3D=3D 0) mas->tree->ma_flags |=3D MT_FLAGS_ALLOC_WRAPPED; =20 + mas_destroy(mas); return ret; } EXPORT_SYMBOL(mas_alloc_cyclic); @@ -5604,18 +5605,24 @@ EXPORT_SYMBOL_GPL(mas_store); int mas_store_gfp(struct ma_state *mas, void *entry, gfp_t gfp) { MA_WR_STATE(wr_mas, mas, entry); + int ret =3D 0; =20 - mas_wr_store_setup(&wr_mas); - trace_ma_write(__func__, mas, 0, entry); retry: - mas_wr_store_entry(&wr_mas); + mas_wr_preallocate(&wr_mas, entry, gfp); + WARN_ON_ONCE(mas->store_type =3D=3D wr_invalid); + if (unlikely(mas_nomem(mas, gfp))) goto retry; =20 - if (unlikely(mas_is_err(mas))) - return xa_err(mas->node); + if (mas_is_err(mas)) { + ret =3D xa_err(mas->node); + goto out; + } =20 - return 0; + mas_wr_store_entry(&wr_mas); +out: + mas_destroy(mas); + return ret; } EXPORT_SYMBOL_GPL(mas_store_gfp); =20 @@ -6363,6 +6370,7 @@ void *mas_erase(struct ma_state *mas) if (mas_nomem(mas, GFP_KERNEL)) goto write_retry; =20 + mas_destroy(mas); return entry; } EXPORT_SYMBOL_GPL(mas_erase); @@ -6377,10 +6385,8 @@ EXPORT_SYMBOL_GPL(mas_erase); bool mas_nomem(struct ma_state *mas, gfp_t gfp) __must_hold(mas->tree->ma_lock) { - if (likely(mas->node !=3D MA_ERROR(-ENOMEM))) { - mas_destroy(mas); + if (likely(mas->node !=3D MA_ERROR(-ENOMEM))) return false; - } =20 if (gfpflags_allow_blocking(gfp) && !mt_external_lock(mas->tree)) { mtree_unlock(mas->tree); @@ -6458,6 +6464,7 @@ int mtree_store_range(struct maple_tree *mt, unsigned= long index, { MA_STATE(mas, mt, index, last); MA_WR_STATE(wr_mas, &mas, entry); + int ret =3D 0; =20 trace_ma_write(__func__, &mas, 0, entry); if (WARN_ON_ONCE(xa_is_advanced(entry))) @@ -6473,10 +6480,12 @@ int mtree_store_range(struct maple_tree *mt, unsign= ed long index, goto retry; =20 mtree_unlock(mt); + if (mas_is_err(&mas)) - return xa_err(mas.node); + ret =3D xa_err(mas.node); =20 - return 0; + mas_destroy(&mas); + return ret; } EXPORT_SYMBOL(mtree_store_range); =20 @@ -6512,6 +6521,7 @@ int mtree_insert_range(struct maple_tree *mt, unsigne= d long first, unsigned long last, void *entry, gfp_t gfp) { MA_STATE(ms, mt, first, last); + int ret =3D 0; =20 if (WARN_ON_ONCE(xa_is_advanced(entry))) return -EINVAL; @@ -6527,9 +6537,10 @@ int mtree_insert_range(struct maple_tree *mt, unsign= ed long first, =20 mtree_unlock(mt); if (mas_is_err(&ms)) - return xa_err(ms.node); + ret =3D xa_err(ms.node); =20 - return 0; + mas_destroy(&ms); + return ret; } EXPORT_SYMBOL(mtree_insert_range); =20 @@ -6584,6 +6595,7 @@ int mtree_alloc_range(struct maple_tree *mt, unsigned= long *startp, =20 unlock: mtree_unlock(mt); + mas_destroy(&mas); return ret; } EXPORT_SYMBOL(mtree_alloc_range); @@ -6665,6 +6677,7 @@ int mtree_alloc_rrange(struct maple_tree *mt, unsigne= d long *startp, =20 unlock: mtree_unlock(mt); + mas_destroy(&mas); return ret; } EXPORT_SYMBOL(mtree_alloc_rrange); diff --git a/tools/testing/radix-tree/maple.c b/tools/testing/radix-tree/ma= ple.c index 2c4e69591235..175bb3346181 100644 --- a/tools/testing/radix-tree/maple.c +++ b/tools/testing/radix-tree/maple.c @@ -119,7 +119,7 @@ static noinline void __init check_new_node(struct maple= _tree *mt) MT_BUG_ON(mt, mas.alloc->slot[0] =3D=3D NULL); mas_push_node(&mas, mn); mas_reset(&mas); - mas_nomem(&mas, GFP_KERNEL); /* free */ + mas_destroy(&mas); mtree_unlock(mt); =20 =20 @@ -143,7 +143,7 @@ static noinline void __init check_new_node(struct maple= _tree *mt) mn->parent =3D ma_parent_ptr(mn); ma_free_rcu(mn); mas.status =3D ma_start; - mas_nomem(&mas, GFP_KERNEL); + mas_destroy(&mas); /* Allocate 3 nodes, will fail. */ mas_node_count(&mas, 3); /* Drop the lock and allocate 3 nodes. */ @@ -160,7 +160,7 @@ static noinline void __init check_new_node(struct maple= _tree *mt) MT_BUG_ON(mt, mas_allocated(&mas) !=3D 3); /* Free. */ mas_reset(&mas); - mas_nomem(&mas, GFP_KERNEL); + mas_destroy(&mas); =20 /* Set allocation request to 1. */ mas_set_alloc_req(&mas, 1); @@ -276,6 +276,7 @@ static noinline void __init check_new_node(struct maple= _tree *mt) } mas_reset(&mas); MT_BUG_ON(mt, mas_nomem(&mas, GFP_KERNEL)); + mas_destroy(&mas); =20 } =20 @@ -298,7 +299,7 @@ static noinline void __init check_new_node(struct maple= _tree *mt) } MT_BUG_ON(mt, mas_allocated(&mas) !=3D total); mas_reset(&mas); - mas_nomem(&mas, GFP_KERNEL); /* Free. */ + mas_destroy(&mas); /* Free. */ =20 MT_BUG_ON(mt, mas_allocated(&mas) !=3D 0); for (i =3D 1; i < 128; i++) { @@ -35846,6 +35847,7 @@ static noinline void __init check_nomem(struct mapl= e_tree *mt) mas_store(&ms, &ms); /* insert 1 -> &ms */ mas_nomem(&ms, GFP_KERNEL); /* Node allocated in here. */ mtree_unlock(mt); + mas_destroy(&ms); mtree_destroy(mt); } =20 --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 325291779A5 for ; Tue, 18 Jun 2024 20:48:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743727; cv=fail; b=D7HF1wVRVw/1/ZN3Hv+CNm+t2licrH8T3gE+NNqkPc6S7Kp7qRx22P+q4GkEOkvU0opqQbH0D8K4ONadkgH3fgA9ueye1seD/MJogP2tQ9hYeK5waBj+xmUgUqRj1M+BK2/eDqUf8J6b9+tIu9An3GOzoIUf8rE+wblFXfMDjH0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743727; c=relaxed/simple; bh=2zssSrooZilwiEWD/VsLxSXUU9iFH4/4UAPjJ+nmQhU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=Js9F1lSqIUzmQqmDtgQrVteMUpXhTcWxPmNA5PWws0i5ByjASa9psj9SOnPLip8Y5iyuAE78mwa6UcqGCNNLkbJcUj5ScrA+he9zk7emx2Ghk1KuamTkCkH2I7VOFVRU1AOpoaDURPCXmLS5w680A9e0xmCLly0Za4W2uuqD0Os= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=QIprdqC3; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=bCqKYgR6; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="QIprdqC3"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="bCqKYgR6" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUxvU029821; Tue, 18 Jun 2024 20:48:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=zz6qNIKltTmXoHlX1g+R7AWUOp4OUnndefvednj8JZw=; b= QIprdqC3ja7oPgvSHDnTQJqt4sN4HVZPf77noJMVjv16C0J6pvDCCsQ+imyTS/XU bXBw2Le8I6//bepOgTkoElCBa5s8bQkegvfbQG+O80OF6VOwS1Sx0pnCn4cTQMES jclzu4RQs/scPGgAgQrHBGiyS7bmt4PjP6rsWTti3zXSwsrgXSJhQ6t3bdKTaaGF jQdnKKMXelOXbBMB2VuSs59ChjDa+AbkY261T9WWieB7Foowz8CZlJg5Hcsv6Xma 9tqFwEP1poLahyeyCGYVhYZbX1Wm5pc0mHZiDxKScI39NGr0qT3AVPjrLZaucNv0 3pWBZQqpEKBBKIoW//Xt/g== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys2js5tnn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:31 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IK8ThE015724; Tue, 18 Jun 2024 20:48:31 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1deqw7y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:30 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cdy4NUtHl+KKtlGxY5jnf+E62xpkjwA3s6M9MW14FieOs9jugK4QrVqB3UM2HuIqCbTC5AICU9Keotp65kpXTdZwaYBtQvBIheAGLJJiqPeWGfLskDL4Z3wVlUwEdxRWHiMoQ/csE5HJJE0xch9N9be0R84o10Y/v1a6CHKQrJNUECha2QYCCg/GqEhC8hkLT7s4MQSPhkw32P+E71HI696yc9D6GMfTyNaS0aJ/tefp00oL4D0BqROFerGzXB58ErCxPYrPwFg/HP7WUmKsJTI5mHucbw40fa75imAY6LJZFKVVIDFYf9h8Xhob9FdCloazlVTTssde1tOvCfDR+A== 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=zz6qNIKltTmXoHlX1g+R7AWUOp4OUnndefvednj8JZw=; b=Q9Io7N7s1K3F4v6IgvimS9h5PjU1pvQ9FlAjydvYuNFj1sU21+RzcvvhIC/r+3+q22NRZ6dc3AaoyMlGz4+uQZu6kE7+CrEPU13+O+2WnWbjZGejG97REVUDJFNUhK4hcd+P9xiomTBbW2YE3tUQrypuHY+Iew2W74joQ3EynSXI5zfgVhoCvS46SqmbTvcQh8UaY70/3ybjin5xwfmM/yY/+ntEYf3scuWl5+kcdOFr+DggM8yU7EeajZC5TFK/JYIP6SwU37j0EYT6kxmZGjthlVP/mZLJNQYEyOxI+QdUJ5A4oJrpKC4q0WdekpF/lSMGHTqgqsmFsklPt6szPA== 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=zz6qNIKltTmXoHlX1g+R7AWUOp4OUnndefvednj8JZw=; b=bCqKYgR6fXEHRoS0NJ1WbVJTgNTj+qOoO/33bukAgcdT9m8N+2Qm4c9L4TSEhZqEl6G6Pzs7KQ70zDn5p20mtPh8HXrSkvuoefFN2giuQjYILIU0/IIUEJKI1UP8b/UNo4bViONJO+0BC4qS5qRQ5yCYKiFMrKSx4bFwc+Cv+2s= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:11 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:11 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 06/16] maple_tree: use mas_store_gfp() in mas_erase() Date: Tue, 18 Jun 2024 13:47:40 -0700 Message-ID: <20240618204750.79512-7-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR03CA0152.namprd03.prod.outlook.com (2603:10b6:a03:338::7) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: 8b636b10-6182-4595-490b-08dc8fd7f788 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?1T9mGsxxKx0ljwTtLyNeniKZsg4pbbIkMSAu3ew+K1bColtmxtkLUr6eYsY+?= =?us-ascii?Q?wqPf5kB1RcRkMjN8SgKqkedq4PyVBBHRTg+0qFiK5OWNDHGDYL936Xjy6Z0j?= =?us-ascii?Q?fnF418CouJAncWq3+t/yMoUjefP9A/lOMwyeijkLFzsT3dpoTb1VEL+/sA9c?= =?us-ascii?Q?Uy8+LeBjGmnQ7dOk6ZWRwQGirDeur8/Nw7oyILt2Wwehslaw76qaYV3O3Wxe?= =?us-ascii?Q?f0qBftZ5NktwqJX9cHZzZr0WSMVUS0ldzYCQADcSZwya3RPhLUN5XHk1Yjf5?= =?us-ascii?Q?jGSTxjQdI2RLzP3Fd3z7eMEKlAcW7teN7RKVHBvDphplF9Lu6RToQoajJuTD?= =?us-ascii?Q?v6v6XTFU++FshgjvFPksExY7zdM4j/pPmtQntRQrlMI1wn8BU8Dt37XCvUHw?= =?us-ascii?Q?A138cmT4U5A6iCqJvXnt2N2w1amPcAD2T/SiVJjgx/iPJha6J4oYZmyG9KEO?= =?us-ascii?Q?daWLKlzjxIqFe+k6YL32VzHxbMBke30NrPA2LA1ND5/K6CVCpMwMsjE+284P?= =?us-ascii?Q?FXZlFxfc2qjloEfxZgY1TntymBoEzaOy0FqT3mUCqA7N4KB1yY868hxhnn5i?= =?us-ascii?Q?6HKI+7i8VEaJK8XPZXHAoL2QdcOk+D3ndDdysSgKCXJplB3rg66jXbXIdfGw?= =?us-ascii?Q?cGZ9cmINASqZKHOy+wKVf+zvW5vqMjl8/VJgaA7uSORnrdeuPYb5b8yvqa0B?= =?us-ascii?Q?HCwF4kEvawKgVFzb6yF7r0cXkjIQesKJ60YfaE4K9XZARfL2rg5nxJKPW4ZI?= =?us-ascii?Q?Y+X8686ZA2TRTImcYJi+EcMR9EVVxmrcb+MCzvRCamYz7VmyVbqNfOeRG3gj?= =?us-ascii?Q?2TmmrzhoqqlCwTcN/hCanfR+3GOjLN3pmDi6bPw1Pz38brQo0nXNWH/yRwdc?= =?us-ascii?Q?pTN8L59hD3oKB+iXAeOvcIh12+dHdCgBXWa9vD+ptJysRSk5uvpXs5r/Oyap?= =?us-ascii?Q?Ob+8RTNrAyiWDg/1i5W72/dyDfaIHEkfR99F4uwkXjLFfft8dbITm8DdfRQ5?= =?us-ascii?Q?li7MqaNDGLJULUzfWrO5Cju1ZnRDlG/jmGiM05LLlp5he+pK+cDvFcAJwq2n?= =?us-ascii?Q?+F15MWKXpLV9tYTxICXJqC/zxo0wNed9BP5Vk6dt0+nSMBW+Agfar4Hetv9h?= =?us-ascii?Q?D1R8mMrMB9KneBo8FylTgFFCaV6RGMZpKzG1NurCc9/QjwU/wakzWaXwZu6u?= =?us-ascii?Q?7KuKZiUaSAIYEAkpWCcj8FOgQTJoHN9t/agJd4mF6/bSMWKSFbYgcsh7O12z?= =?us-ascii?Q?dNJ+i720QCnSQoBjxCjqW24PrjrYkmYxt9eJwr0Odr770rR+E5m6LQfyt9Fo?= =?us-ascii?Q?/ZuA1hzuqfi8HghBVn09Bkci?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?b/8AI9x6f8bFmdw7sfyR3D4StMx/NiwrgceDGhFmG5fcwLEtkg5VCq9q2dHW?= =?us-ascii?Q?zKInXsEoq0yQXFhTMnRyrCV7qm8WogSWQZ8l6617TsQr2NKEU+vGiLEWGbJK?= =?us-ascii?Q?E0MnhewPA8CPzAv3LNFLH2LHgLprpaA7ce0FQ3/LEov/FKLDNFDMHlaxGNLw?= =?us-ascii?Q?SJcJSWaufTta7g79TqWA2wmj8vn5kFgypsmoRkyW+qGmVx3CgrdwJp3vTsyo?= =?us-ascii?Q?sVxrRooOAhQlboGhwGAdP7mEwgxJI+lE5jvCahcqlXVcGkcYbB/blY+9yjFp?= =?us-ascii?Q?SdikJAwaYrCUE0kl0MPhBKDOPR/OE08WiU+s3U1DS2y3sy5qWnfqF/PWJluD?= =?us-ascii?Q?foLlztyQIcRZwN5EVifAjKXfSNm6wfTGI72jnQclUEHc2Pxt0gOq4c8fsQlU?= =?us-ascii?Q?a2Mg4veLgU6u96acOWD99xjJbGMWy39NT2K9AbJSPv26AeNoR6k9+q7lWU/7?= =?us-ascii?Q?sRABNe7/Ko2YZ9lYgXYP6K7VR5lUT/y02UO5A4BzESayqulBsAiZ3vVhoD7J?= =?us-ascii?Q?EDN8lptdaZRSgeUBIBoebydsgoWU0Vi8FSBEMiwNGG52AcqK07PYBk+DiBFO?= =?us-ascii?Q?YQeuvw7XLRl2MUVQZKGrhAuFgZ+TT2a8BYqq/k38R5t4ZI9/Jr0SkAB2yt26?= =?us-ascii?Q?OiyJMk4jHT2g6rTxvh1Ukf9mgOAA52qqzR1fpSpr6nRjs78xgdjP2PNc0Odn?= =?us-ascii?Q?CEzeN3pZY+vdrHY6ocWnViV2cnB+Wd1n0CmKBFBbYJTqWoL/xlf+udpzMRhA?= =?us-ascii?Q?E7gj7/9NNzebML716WmfnMVPD/IHvQMv4+XovphBzOpI4RDxhxbThWYJOKu0?= =?us-ascii?Q?4P03DBFyxo90uQo9JrXWGGpuJ/TjLF60Bo97h2AvdKnBaA7xbIxdYZJNVbZN?= =?us-ascii?Q?IlAq/OW7Zmsnjz1p5M7rAyvRjH6hROKKo4wz7IwABBvXiVYXzra5nErYZ9cn?= =?us-ascii?Q?Zh9QRhOHimjcsSm9YjtCZLPY4vC1Z3ATgwTrVl/f/S5Osuhb8NPCbUDugvEq?= =?us-ascii?Q?OZmx4hR33gFNuPNX43V2hCnRh5rq3byoRenPPW8ekn6Ue4aPbry9nWl2wdXI?= =?us-ascii?Q?aX+xZq0nhbe8XrFOkv63DmXrRche3/jnQZaO7uZ+W2TJNQzuTAMSGn9p84rt?= =?us-ascii?Q?47Tq648VeiPh5MRD+nRr8CG0bVP47x21e2lXxoK6RR3agP31DiWog4PyEwJH?= =?us-ascii?Q?CD6CaGbyCY0+/VRBJPehnFyK7RN3i5vG4oOXPCuki3dDbaHggNij8WzPQhIQ?= =?us-ascii?Q?1idDCZPTcbppFkCaHV1vjZVunu8trMNBS1Jzhy24AuJK7yU7Lfzf8Rqn4swO?= =?us-ascii?Q?dDDJURZLIzwb3h/sBQRNQOEbv72qCh6zSjC1pU+pQD/J5wu1Dn4+OZC2wCNQ?= =?us-ascii?Q?lHpuM8gStbFINF7jBP3Ffmk7VFEhef0PvB1XGvOxF7Eyl67AlloaL9ZWHD81?= =?us-ascii?Q?Z5OCiG37OdJMjfTT7ZxhlM9g5DJwcvSH5fgQXptfto0pIP3PGYSC7eb2cIRO?= =?us-ascii?Q?mfuIpbT6HUH2CshVnGjSE0QG2odndgQtTcZIqP1+Ze8BO9W4V7hujB2eyvsg?= =?us-ascii?Q?EOlrDUrf2ZNKdR7ZroBAQI7fa563w5YHgn2Mu5KjiOWarV4DKBel3pexDhJ9?= =?us-ascii?Q?c+T+dXZsLtzZtiJnMIeCaAo=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Yuv87YVzbQ9mVwC+QzN3b8S9rJqLpv+K4szIRNj8EFYfI3gd8Do6S4mUHk7HjF68OyOdfqO9DiHQ5yiUhZ+bUcYntzk1kImboXCPCIvpwszao3230TDJAsb/u3GEYKp21+7tPiBysGMnUJff0JJ/vu1pKc3q66RK54sUJAsyk7aut4u5U2Qkem0cSyp5uagy5Zyx+Rc41x615QyLs8C1DzrLxXwyC8yHNCF8g2JKNQnR/zGK1wrbXnsZu2KW5Abkk2OdVgYLB+rPzu7PJXK7lN6tWL8s4pNgb/UZLxzbXcEOnqKfShnzIklpwePkS28SeZJA7X5u8q7UPDORd2odAy/TOElq/g6uknmZKTveGxCwCUaY8irDjFCt58z705CwRPPNL3HOzQABHYgRRHTESS0vgerWs0lW+6y8biVrlMwlp4PkNW8yMf+Ez/VKCxDecRezPxocULY8kSUiFbz50H1VxzViPjUSq0M4qx3A/OVDhoJ27IB7ZaX9hjNktqHmLp4oa1prV2RNdd2PUNI6jLSeFjOSRli2gaeSjN0v4w7npLclagm+xTLgnN+DBsQFvpQEEPtHjCp19fBYIvhpNKaFtI8emjh4MPuwrIOehiY= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b636b10-6182-4595-490b-08dc8fd7f788 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:11.4772 (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: /FE2Fm7oq+9SLTvy3zke/lHiOwjR1E8DmUb80rtwFm8k9+1fy+W4F09QbOR/lrx82oPToezA/VdFev4erzHH8DccFfQyNACNRQeTczust5A= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 spamscore=0 adultscore=0 mlxlogscore=999 phishscore=0 mlxscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: RSST5i-5mF5kriKklRVucoqOxjPGZMa4 X-Proofpoint-GUID: RSST5i-5mF5kriKklRVucoqOxjPGZMa4 Content-Type: text/plain; charset="utf-8" Refactor mas_erase() to simply call mas_store_gfp() which will abstract storing the null, memory allocation, and error handling. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 648cd003b99a..892e864d4c9f 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -6352,7 +6352,6 @@ EXPORT_SYMBOL_GPL(mas_find_range_rev); void *mas_erase(struct ma_state *mas) { void *entry; - MA_WR_STATE(wr_mas, mas, NULL); =20 if (!mas_is_active(mas) || !mas_is_start(mas)) mas->status =3D ma_start; @@ -6362,15 +6361,9 @@ void *mas_erase(struct ma_state *mas) if (!entry) return NULL; =20 -write_retry: /* Must reset to ensure spanning writes of last slot are detected */ mas_reset(mas); - mas_wr_store_setup(&wr_mas); - mas_wr_store_entry(&wr_mas); - if (mas_nomem(mas, GFP_KERNEL)) - goto write_retry; - - mas_destroy(mas); + mas_store_gfp(mas, NULL, GFP_KERNEL); return entry; } EXPORT_SYMBOL_GPL(mas_erase); --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B322C16CD09 for ; Tue, 18 Jun 2024 20:49:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743758; cv=fail; b=ZtRC6MFWCsVFxqyJoOju9bHpbF7zmMeccYeP1Uo/aNdHEGM/sE1tZ4chUAPifGaljj+YwCZxY55n+uMLWTo+S0PC74ofT8kvcqcEaosnOna3nlBpMXV6d+i2NblUSYFcYY3obvGnb4yLzOT5cSiGQVmgRnMzf/ocXyMUf8wGQ8U= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743758; c=relaxed/simple; bh=ST7RjA1757oP3mnWVaqzIsyW+k2ojnxrn3YJexLpQHI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=YU1f0IBaEXhQuRg4C4sDwnA9ghrKZ4pLa8ALgWWYFp1VG0p71fymiy0i0ufgQ9ZsvXdfAC5uVxWUl0AvnBJNsMLAiLYs/49KjokvA5rD6Du+/Jdq9Vya1POavoZyIB2SIQZaPyAxYyCziF2ocNK2aWsj9u/tPzOahlxYyIj+1Ds= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=FG6k9Uwa; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=XbG9BM5B; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="FG6k9Uwa"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="XbG9BM5B" Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUo8t005340; Tue, 18 Jun 2024 20:48:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=el5ueonE5eHDyr6MvVbtDd9ySKkILxBK0XuP/xFLbgs=; b= FG6k9Uwaf9kB7QlVt+n/jSuMSh5mG9AWKE3KCk2N+wNXzoElNCuLvn9TBaHEe/v3 JLkNMuT5hY31qPKnePxoGhsb1zgA24uZids+AHfVdqSrmpPS6W8x1zSg+C4TG/zR 4350a89XaYncLWT5pxjey6Fj5pDmtblD5OT8nK/qJPBlsVnzlI98JBwmJBeMoy8w fpBQe6Pu25KRcpSWbKrmvW7RyAOfP5t6MBVvNG0NHC2OJzCvEODOBRj9Hvzdsnjx 9z26XxEVckYP6xY/uflF9fH9FaQ33y4zZx0UzC/KOXp468a2W+xa79K9cnI7/t63 qj0GsRA6uG6BUYZRmsFq0g== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys1j05xak-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIP034656; Tue, 18 Jun 2024 20:48:31 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:31 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TTJ8c347CSxsDONkfWIAoCRhVS5VzDMmbuszDzI4B32JDff3gYJQQUR8dzyHgt5wkT/vfeNFMdLJctCuzjO6VJp4HTlQW5TgPLaH72CInZRe440/plug/x2TP2BiTSKfqo6LxAYZaJiYQXH1ZLlraKSgm4x3OpqDxPeeMrzyCUpZNVCqhb4yLYSTCDXa5YL28YhWOpwx0c5AHvEb1aJTitto7Ln+RrMsGchuarnugYDkvccWw1QPd0k/jnerOBeVrmDzQpQ1/o4j/lnA7hNntIgR+V1Nd+w++wgyHrXyAfcSq1hYZDAQiKoJ2YylXlm2qe1RpotWZShUSpRNN89X0w== 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=el5ueonE5eHDyr6MvVbtDd9ySKkILxBK0XuP/xFLbgs=; b=hECkrkAujLcth/arq35Q2asOlQf3BXTNdJARRWvkbtsaW01vlQnuEhxn7u561nPyy/la9FN9BtaY25tMfT+udmF7QDc0lkKkkAXRU0vYzAGL1RhXz+EU+ZkklNnWEoqGM+fA/Am8iE/ou2lIQ4x4E1TZZ5ofpgZ0agwlvsVTH/IWFMHO0n69/V5MU4ZHMPHBgNIMoHhgrjPYHwaKUnLMOMA+J4NZY9aTHteO9kwF8Oy2OvsgVS10gAoiLUgH1jTiQEQrPSA0ZOzW71qT9AM1FSaXPGZJafXsl/geZAdxRJJtz+97dnO1B7NkCn6XYsVYy0HQjQJeIyCEgwSsATBmrQ== 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=el5ueonE5eHDyr6MvVbtDd9ySKkILxBK0XuP/xFLbgs=; b=XbG9BM5BoeUph/j98JcN44xVx7RhEZIXzPRPHl1NQzwhPtYVx4YtnMFVa1d2uqTu9mykqZtPYvlADR+UhXwvXz8fsqsSmOSyRdlJrGwPE2U6pZb/QJrGP6x2h0Zkk/9M2M0n2yXEYqFTkvJSclhH8+rSYOV2/jRM0vUkIgXCAYM= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:14 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:13 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 07/16] maple_tree: use mas_store_gfp() in mtree_store_range() Date: Tue, 18 Jun 2024 13:47:41 -0700 Message-ID: <20240618204750.79512-8-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR05CA0132.namprd05.prod.outlook.com (2603:10b6:a03:33d::17) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: 21b66b9c-744b-42b0-a391-08dc8fd7f8f3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?++nzijU9/ef7KT0K7xWVvTYV78MsXFNebwyQiXC4f85R9MRTH1YISNUFYjN4?= =?us-ascii?Q?ja/B1xxDQDrZmJjjz5E3gyuH4GHIE/oLVlWRgRGifCXGksk1W1oBbjDs6mkz?= =?us-ascii?Q?S487zCtyIuzsqjXim7YhSy0+s7/nGVuXx1oMfAU1z+whnXDE5jI6PfzNhJ9o?= =?us-ascii?Q?VQlP0VHBOY6xYE5dTXR4VDV6EXnS/tUujsbzwUZ56LXasXtG02T1U7IVoY2t?= =?us-ascii?Q?rmVaBMT781JwA0LqYhxwfnQaGosmBEvOg5EE1FNwrjE5Q5sPhD7MHiHf5j9e?= =?us-ascii?Q?1RX/g9cTnRU92RZH8pjfJeA7q+n1I9MMXB24AEMt1NrNyGzeRD73NG7KkZ8a?= =?us-ascii?Q?/sf/d9I2C3+HBQmIqmJILko+Cg/eSlfBEMZGG/n030qT7wNcmK5HI+sCAVNw?= =?us-ascii?Q?gHRQNSUxVi5B/RO75cit4RslZvA1t8YIyS+y7NEfCO2yytUDN9UPCvmXjESd?= =?us-ascii?Q?xxmtIcsiCVBFUH0d7PlRSBbTtu3IYWO4OrHB5nIqssrr76xxD9K3psKoOwtC?= =?us-ascii?Q?Qw+b/4nCrvmJSbBCVTxyUitwVotj4vd4rKYPxIVDaRVmS1vszYHjM+j+9m+Q?= =?us-ascii?Q?qNd03kFaZKRwlcRBLraGgO8QqS4qX+V/Yw4tHjzjn6yqV8KPKVUaeQOqzSFq?= =?us-ascii?Q?z9xR91gLoEYq033aZzXCBB5cSIHQq76rLfLQ3WQhOCR55tkA2x70Mfr+dkK4?= =?us-ascii?Q?AWUvcOzlxMzOLz/Nhw2jIS68AMKr+ns00NiXZrpDFk83GVxnjUB6uAWqSUC6?= =?us-ascii?Q?j+H/gV7BN8xB1NQaQRsVRiWGjBuFoRtEOihjdgO8YjjCp5BujVM9NWd6rxbE?= =?us-ascii?Q?ICDG8IksiuMyq+IoQEii8aT3bfMuSmMzzMpg7PyvxjPWmQJqWiavadrc8xl4?= =?us-ascii?Q?fpCfFoTjwiIyVJgJmQDNIezebcVDQ/zC2KkDBCY8TFR/cgmIJxEjBJLC+YuZ?= =?us-ascii?Q?z+rRAHTq4Z94a8CqPvinzFqREQSUcT7ySHFJj/M/7tBqFPJERbT6hg4P/efU?= =?us-ascii?Q?vwxYFlkPIAifOAGb3rsuWsGgVv3kY9b+O/yVzy+ArVVWfDSpnXrYEa+8AMbX?= =?us-ascii?Q?2whZVhzz94Tbrc7FWMEyPJiKSFDmV0mi3LEYDV5aHvUxRlYwybgDIB7alnNe?= =?us-ascii?Q?pFs2/V/DNkNEIjk2PVnQuzDV96vljkFPNOitFk4WMIGx4JPGedrJWv7eve7Q?= =?us-ascii?Q?h4G0kmxrB6FLyBU7jEtXfGAsqO2W3BhL/L2oNoKN84Ii0CAwfbMG0ET6pSKL?= =?us-ascii?Q?4pU6sX+fdyvYrVUQjlk34fJAR5PAKNsl3LOH18xN2ssIJMmznY3TjNqpfz4m?= =?us-ascii?Q?wzOiU71iziI0JvX3PGtpf7tn?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Vn78TyD7l7VM6d2p2TYJPsLLv2STDYw3XNs/KggDeFLBJra1L2K4Y4fs2f2c?= =?us-ascii?Q?+hF/bCNhXUyvU4brn8PgavEq0jRnof+BulhM9q1HTqZFbqg24kAgC3B9SOge?= =?us-ascii?Q?YPy+pW5J8ItnBqAMO4dyTmAeJXFoRk1SolNOBkDE3D3P6pf6esMLACOqWHmQ?= =?us-ascii?Q?3tb+lxRbWAmNZbWK6X8NW9IGlC7vlNeABZ1KzoYhdqbfFJ6P4IUHLWC3vvMd?= =?us-ascii?Q?uQS7Xz9qTzwuhdZOi+hRZXlgNQ98rSALk85GDHGFoy56mSu7coZ/gELoJ51u?= =?us-ascii?Q?54VSVrygtZvMlBR6nI3rkoS25PYz1xzmST/HKN8ihMwLjCI3baIus+AsW2UE?= =?us-ascii?Q?pUMAqOytglk8/Icg8Y8pi2O4w7ZiCg/KULkBA+rz82XpDoY+VYRsGU5uuoiC?= =?us-ascii?Q?wDgaEBw3YBZhXZDYAJJ6TNv5vUXmMfZecdc835UCmAhFemaNnM8kQ7HkUN02?= =?us-ascii?Q?r2f9gK6EzuhLe2Zf3yxhfsKBWxpUe286C5KeS5xw1Qym7xoTPDCh+f05w85j?= =?us-ascii?Q?Tn1Aia118kVzUqEZ1hw/VsQQX8QxgTqDzNQZe1POecXOVYxQeBOvfrbkm1w9?= =?us-ascii?Q?fd0Bmjb9gdzM3h4RQk3pELnhtuakTdhuf430/tpAJpb6OH6WI8aqltUKJ2bU?= =?us-ascii?Q?0qdOnfBWWW+nbV5kPq8nW3oR1kBAUPsmeQxyp1vVR+ihXnBHXeyRwohWU/Ec?= =?us-ascii?Q?iTLg9PG3izJ1euStUOEIgxuYgvRxSIvieQ0XfEsQDO8NOeZCuNV46v2JqQ2x?= =?us-ascii?Q?BajHrOx2V/MxIllPOBVC7RgxWkfYLGPKkcQ+pdhlveQEbyeI8GpC4CAz0ZSD?= =?us-ascii?Q?3nvv8ltzan+RWiNmASTtIDE9h5wzOEdzyzBW2EGmUVZUlxb4gH6Y0piwrJhE?= =?us-ascii?Q?5ww2XU1e/40B9DcvzfGLzomcd/88maUJKtrMvIbl6Dfp5JlTHIw0endSn2IP?= =?us-ascii?Q?h1LDmGH5UNOZOmGmOO86xtpPjDlspCZPnM0EAAs2VmuyJce+QtHU7uhHAdEC?= =?us-ascii?Q?h/SRstuwhIDAF7wkETh9prYD/3QBgtEa7nWfEdcEL9xQd+9ZG+Y5WCWZpen5?= =?us-ascii?Q?1TpN4lBMnd7AVxVBnNGmovZzvDgKuoSNNTtSh0OeppRsw3YLMBQzxm414DA0?= =?us-ascii?Q?Wek40aSZR6Nq8d33VBB9C+fI5TD40hQ1/ZAkoSLqX9zZpCILFDOXrMRPaoRa?= =?us-ascii?Q?M4hGDRkRSjyVeT/R8DD5aqo4NpsPWuSxfKOqAPUThsFERaMB2XqNTdPxaEL6?= =?us-ascii?Q?eLqRkn8DbFbTkwXRfHEMVr6Il9QhEnv/HG6S2lJxM4ql8qn2oJ6kT472aWTl?= =?us-ascii?Q?ReoUTfo4lSqn48rysn8rd3JB8PAv4pjdhkUnW7ETInIYrJM1KusQm0ZtCaKk?= =?us-ascii?Q?bi9NdBNuEl0FUHiPj0iSQOvw3l1UlJTFw9JmBugWkcaZh6HYAfX4MriC74JH?= =?us-ascii?Q?BH2NMeVhj/vOYFCz6DkBbDSSg3KGzC44f3kGvJkx7fcnuB44+ngIHn4H/PdA?= =?us-ascii?Q?/DE/ghx7x0odXkVkpPxSplZ3/GUKIvcbmK8TeBZrAFa9S59QbNseocgDD1O7?= =?us-ascii?Q?olWarxFZ9Gy2OLjDq7qAqurl+EeETMdq1EUHvsnHZTi3NLPB6z727iKpXDEv?= =?us-ascii?Q?qv1pXiNru3FXY4lKSeLFmnE=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: nLRystwl25DznRMfp1bsG1oR9JoILRXXTCeVsoN4poOxf/TT1bPoTk2izDV4Emh2W7xxMHpNdb4EStfEoCYQHf+zOJV/E79OuMHhEEw/iQyO7km1E7mnJ9zs8FVJrIWZfWeBUIPw/HVep4F3BYxs3B/3W+pVh6BtAj01n3iMYsHg3iBUmo+I1EY8bZQZmsyEfA4Ao0z4mQMaom5iWDeFI66dkieBgoBdcFPNLaOnrkK2RbnYLwsT8NLkgIswBoOMZBI1VGafFxN7czqVbsFSDFcFa+tnx34CGslS7xwh6SRlZw/yP91rFGMcIjcD989r+vPPYbaGMK5Kit3MBSNzjKtjKbBESWCHIL89DbmIbwwbB5l8Ni7Aj5c5AkV6fLysFnkZIA6s9EGQzyvaAYtSaSN+qMn9MGWe2GwadUgAagd5UkRcM4LiCLYxhG2vFQxdcaDBXRIw4hJ5HPAbkOMnXN6hv6JTaK5zIvOFP3THh2Cy0aCMYAXqrc75uMWU69mEzon7/U1YueX2Hsm+q3mN0ou879pnAEJLD0XrGYpMRAeKNNup/07xaYrcXf1S1TCnJoZwzHRAd/q/zatGKq6FCXuJgDf9ix1huBRreYDpfSw= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 21b66b9c-744b-42b0-a391-08dc8fd7f8f3 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:13.8648 (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: d6OUUu+P2lbqrgyJ3+FN9HorGK4daOPD1Q/eG4SfdGn+c/ImG7P6jf7htI8LGnH95YnMfhM2yPgnHmNgXLHG/giJd44nZqkRJ4mWj2nzvjk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-GUID: A_wM7bQ-vCXsnCjLCHn3GjLEpQx3arRe X-Proofpoint-ORIG-GUID: A_wM7bQ-vCXsnCjLCHn3GjLEpQx3arRe Content-Type: text/plain; charset="utf-8" Refactor mtree_store_range() to use mas_store_gfp() which will abstract the store, memory allocation, and error handling. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 892e864d4c9f..ffff36e8b140 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -6456,7 +6456,6 @@ int mtree_store_range(struct maple_tree *mt, unsigned= long index, unsigned long last, void *entry, gfp_t gfp) { MA_STATE(mas, mt, index, last); - MA_WR_STATE(wr_mas, &mas, entry); int ret =3D 0; =20 trace_ma_write(__func__, &mas, 0, entry); @@ -6467,17 +6466,10 @@ int mtree_store_range(struct maple_tree *mt, unsign= ed long index, return -EINVAL; =20 mtree_lock(mt); -retry: - mas_wr_store_entry(&wr_mas); - if (mas_nomem(&mas, gfp)) - goto retry; - + ret =3D mas_store_gfp(&mas, entry, gfp); + MT_BUG_ON(mas.tree, mas.store_type =3D=3D wr_invalid); mtree_unlock(mt); =20 - if (mas_is_err(&mas)) - ret =3D xa_err(mas.node); - - mas_destroy(&mas); return ret; } EXPORT_SYMBOL(mtree_store_range); --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F209C16DC19 for ; Tue, 18 Jun 2024 20:49:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743758; cv=fail; b=eLQ+77rvd2Em1X/jIejs6tcPi/enECkk1fxHSegz+xZ3ma1AzTIbZhFBDEOP2WXsvmCfa1Kwp7nFtd9VNCZjN1gDszJoWR7Hg3i/xuFQOQ1zO4cjf3XCepUQuOvw8E1I6GCC3iS94TpuaVOEO7vug4R7Ku8XXY8wICUG9bBf+HM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743758; c=relaxed/simple; bh=A+pU61BlDqvz2/Ec6NB6jWtaMEnI7bLiEX+o0ldN54o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=oykno3Tz7EVEKRdDwoin62mJNN0l4P7DhhKQDUJdVte3Lldyy3FiZlpLrLxahkBM90ntKFUAUyRBj7dXpdrsYF/rwK7+pat2A4FQZxBPf7q8SrR2hlQxmPQW03KCYUzVC+OlU510JZ92iOYSFCUVIiABohXB/D3Ih13hl/6LT/c= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=Bnm8q0X0; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=S0mM+uHb; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="Bnm8q0X0"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="S0mM+uHb" Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUt5A027379; Tue, 18 Jun 2024 20:48:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=iie5vgvEzYdWwZ4muw/pY8/hfxW9ERQYh1d9Fr7j7Lw=; b= Bnm8q0X0eONPqIDL7Ga4yyFJR3iN1X+0AHDZVZryw6Xuo7KOFGyzR4r8GeZ3BT5g VUd/LCjfiPLPLuH4dBiIJ3wbXje6TpsVeIws3ZzOSdQRTIdl/8mJHPRBUEyxHIbK ok6TwgrpOskChAGMe24h0kxfnBwEgjpTSwf1cu2gS5G/GZVESEQQXtG1oHA1IEJt Pr9rMiFGOyouka4t98fFY+YmMjAdc/sdXyIZyUgr6AajBuuoLbXpT7paO/8bV8p0 RWy+kuEJwPX0eunLVo3XD3aNsfkQm1i3NKfKOVxGmTZJd3Y8mDar4QuDXbQ5ivOo xisnm3t26PWi0UZ4jcFKdg== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys30bnvmx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IK8ThN015724; Tue, 18 Jun 2024 20:48:32 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1deqw7y-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bTmogLNOD/ABtih+AIYe5yJeroXdWRLxMjINW55oprsjsBWuVmz3LriLL7y2nB2264xFNVWEuKRMbRpTfQvVFy1JG7OoDe4FNbB7VSLVivl6ykSmlcrUqHFvmXUzkN6s0I4Q7+FlTg80fIUG6WuemgYq1KiavMhonO5lE5gTMcT2Yvaek05ZAgLOqhzqXGYIF+BxoJbozjNFbZgMuQpsRXeOIH/bDvjYvcrp2eOUvUcPw+Gnh3XOJFII2VGXTv+euJ67sKHYtfNQguB5etAe4kHorNOyyffKohWDPWeMZEziGE2JjsunWs1czTSsxQtQiIOa9yBRBdgLtuEVAIqhWw== 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=iie5vgvEzYdWwZ4muw/pY8/hfxW9ERQYh1d9Fr7j7Lw=; b=XKvFb5rEMR6wM+4AT7mpI1hewvSojT4WHVBkdfhSGvjlFj8xmV24WwBAXNn5rL9bNWIzzie0eLujGTJCZ81A+d5lLnhTKnx07t9WSedFZnln36/NfVzrMek7Hsag9E6n/fLAU+jg6EG2CMq2SIu/ifXrHfm4548S05MvPbQGXOAixs2GszZ+Ruow9/E7V92QB2LTMllzuJWvYjLtY2fS2zH4RrkZp9cppmoJfnWtUA+EksY7Sla0x2k2nRY93g/+7WvqsAfx+PN5mqCn++IutalPaJDiENEcHSTSWrfc1It4NBuRXykaVaZTzm6eZORJxbNwcay3UeVrCo1qT0HQwg== 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=iie5vgvEzYdWwZ4muw/pY8/hfxW9ERQYh1d9Fr7j7Lw=; b=S0mM+uHb6tL1HvPSWHApkNcF6OE33vVKcIC5gO5no16g/EmMN5nyIr9jZN1N5fzta5uGMkisRnEamVViAyOU/AmrbnjAhqzYFQKx6zHapKB2IO8U16BnrhHGHfYsk/GKj5QheUAW67IcUxkb/OXcUWMeh/OEPQ1ME2PqKHF9hmM= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:15 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:15 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 08/16] maple_tree: print store type in mas_dump() Date: Tue, 18 Jun 2024 13:47:42 -0700 Message-ID: <20240618204750.79512-9-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR05CA0097.namprd05.prod.outlook.com (2603:10b6:a03:334::12) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: cdcc4a82-056b-4e30-0b51-08dc8fd7fa1d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?08yZg3pefp0GVkFy6u1NEZ/oQuS8AY9kWOSMQiG6WZmvAAzNSayzgaCvlmqB?= =?us-ascii?Q?RY8HM4A3LX0VzrTCYmMTFT8HW7M0rVfoV8pk4HRZbYT/BXeDsNme3qHkK+Iq?= =?us-ascii?Q?zJXsEMTJmBRdR1cU03R5Hc3qVRjCcCi2W8Z+/RKpAytyYJLJTePK8KIyo/SK?= =?us-ascii?Q?7+6m8YQoWhhZQKWTVBeghFTnrKcwLZMrbL9ml3RUfm/kj0voFVUft+eLJPy1?= =?us-ascii?Q?dF7iSUCLg+mTKHCSU7cAAQe+k/QVLj3Xw9PmsHcWymDqv72wVLBSW0pTCOJY?= =?us-ascii?Q?DrnJ9mMmdalugYTQOhFiW63kFX9ecLZu5HVGyObP39rZ2O2ooyUPKynEhjyU?= =?us-ascii?Q?650tkhhE9yg4x7SR+XMaiTWLmbF5AXJdVdTOvb1RfZQHb/6V0zeYyQaqamgv?= =?us-ascii?Q?GSbbPQfijJEAXDkDqcachwF6wb+jpgm8ZLfTOn7Mm8pEYhSUW3sQ9TEEi0uZ?= =?us-ascii?Q?zOpwRBcy63xBdWplDz0aSHXAfzcxep0HluKLzeWWsrk8mXyOBGj5GEPNFufK?= =?us-ascii?Q?oqD5N2l+8Fs1q3+Cls++n19Avbt6JTjkj+7ONDKcUR81EPppPyoX93YGzNRV?= =?us-ascii?Q?tV66mL9zpnhUqqFeDrtd1yc72QBgOHrFT8dBYFYQj4bk/8KCCs00rdPqCvXK?= =?us-ascii?Q?EEJvXqa6B4K0iMpAXDAXbX1/XaBnwBD7PhEX6yEgxwe07UNHP/cNJ5aO9kfd?= =?us-ascii?Q?ODN9zhVBMM7bAcOlri/ZNuBOGINwcfm2c3qkL1TVFltBOQ6CMZeqhNf9X2Gw?= =?us-ascii?Q?LuahYTIeQ7EjKs2X0CGyiQlTfwFCh6oXeQ4X6aYT3HvGS+pa1lZYcHLvVRZf?= =?us-ascii?Q?nFw1RSmCXhRQ+x3nY0MnQmv9t+i1gP2WCxBnySHxTP5yUllbwtXBBN5GAXOe?= =?us-ascii?Q?W+9cy1JJ+2kgDQJvLTwfH5LfQGLjOqYwUFuqen31DW79aBxcfRDfCIn5Y2+Q?= =?us-ascii?Q?xzoAKuPnMFa4RyObjRUw7TT9aJ4uKus21aOMlwsZ1e3yRFPfWYLWMVWnMBWQ?= =?us-ascii?Q?B2fieC8lMq11ZZTCoTVgwpDCYpuvCsWYG/g7liTwh2hJXUin5u1GZkUEHOMe?= =?us-ascii?Q?DDGKWHS7k7WWAeniJo+EqfFfd1d3W3Mx4FNRSTAZX6X/f9NMgLUvyBRMkoT6?= =?us-ascii?Q?DlVaxL0ccwaPMd3JwUKL+4ig9/LiWiUGfeOn2LPoe/nTwcFVv1SDufAwLdQu?= =?us-ascii?Q?2JjTg8aqehMHUyJ5JQC1mlhbik1Hq2V7VfxDb7ItDBX3A2Nvex32vU3NX9wO?= =?us-ascii?Q?H13bukKCmA4p3EbvlemE8H6ClbnfKKN4JCyW7piv7EP7m5H2lx3S32e8fxI3?= =?us-ascii?Q?MsE=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?aR/6INO93TB8v9JfTQm4OkN+H2e0XKS8CE10Z3ZDLagyZbkfBf2I6otrXhq1?= =?us-ascii?Q?vOp+c0zWas/z/JEcoys3mKqkoWOg3m0LpNaD7fzPAUmkzJFw8nzBkDoKl1HI?= =?us-ascii?Q?Cx6DnewKUJcFgQpTshjCtnlIkodn8l7RJTeGUpK8l9aSig6BCeHKJFOdLj0V?= =?us-ascii?Q?6Nvl4MD6h+WHQHkPmI9PNu82VMsBl/ZXLNR8WyNJzBrISyDocIgRoyGPpb1F?= =?us-ascii?Q?e9TzvMOD7toGsdEF5beHZrdwXhroGYB2xkZLj+ow1e/5qtywFA+P56sqjRWx?= =?us-ascii?Q?vB9AHociMdqL51zx5xeq4zgZh8ApQNkO0R/7awbDxfz2bcq3r+vHQiJwFbSS?= =?us-ascii?Q?8MIRde+czoPhzCtfrh/9FXbK3vPtUI/VuHk5FpQw4iNVCWyCKxUjOsokDyDM?= =?us-ascii?Q?5PaevqWtFQTFWalIVRju6j/U89QquRnP8CWSlc7o2tWWLqv1enBgtBZYMbOZ?= =?us-ascii?Q?kSp6QJQ70/8UDIUNCW6mqHkiWfoshAeRwJBmo0cWsgKJqpFHfsntfkn0scog?= =?us-ascii?Q?0072alQAcAR8yTkw9TFKNWz3udhdiFK01zDzMHvrgSm88635ct9zfOR+EZEq?= =?us-ascii?Q?vX1sVB8pqV61Y6dr1yZMYpS/suZ5jT6E5DhFGyk3MbZdlR9j0Hyi/zl35064?= =?us-ascii?Q?3BPMj/pgFolt10RovXyFXqQTpgAD2QAWKQwGHyXSuaqigJTFrzW2iDacsTYE?= =?us-ascii?Q?2UcDBnNMxgD4mpqysL85wAlqzbdrZcHQez76tE9FQT0dXeQo6BFtxn8B42EJ?= =?us-ascii?Q?K68QYwOzhWKHK3xy41Uw5tDWlHYQqo4AEByW4INC1zAxU1607M43cSmuL1N9?= =?us-ascii?Q?OXLlfhyB2ytALpBSVYt0rHcMOGF8sG1/hiH7KCIdDwLNM89BtF6aqTogAOZk?= =?us-ascii?Q?8rODDgc1Zu3kAJm3FGsccKMayvzd/7x9GyH/p+0TYz7D/nzd1rq8wuuOe0il?= =?us-ascii?Q?UR3v5buwQBjfN+t+9KX+Bx19MjlypRcencYp43M+YdTympmr/DyQ76VGYMzY?= =?us-ascii?Q?+mtOyoo4B2ixu0JFM+s4gCHZIMYVVptU/CjA5i4HQyk0Qxf7MqMTP97bMut3?= =?us-ascii?Q?duY5tFDmPfoLS7fi3+hAL7sOL9NapVUOzrzr5WlEV2TrwDObsbKLv5cuvWR2?= =?us-ascii?Q?4HV54ZcYBA/tjlcze5+VoiqPQ4hSgHDG5I+Wr5EFVifZD4865C36CuYmSmHQ?= =?us-ascii?Q?cLUicwHnrozuzsVWqQ5VFxYx4lR6rJEpDI7IdLwATFdAIV7bw/kfmqj1KZMy?= =?us-ascii?Q?YpFAVcgXPJRY1GUXvWzgHhTQLgo3HKpfhCQ6J4OD409VYeoJJER1JpboN8Ci?= =?us-ascii?Q?iGQeWOT1ci+T0FKXYKnD/7p4xJJ/x2LCmmh29cdl3L+MxeFITlLsrWV+kU5c?= =?us-ascii?Q?khwojol5d0PKdHcwL6OXItZzzGk+4DfxtSgHUMcDQNUpdDZDZ0v2lTvfhJdt?= =?us-ascii?Q?L/KkxA57J2G7PYIwVqgRviRDF7QqzWCo9MHhIyjY0RGRYsTZsnCnlgZVBG3q?= =?us-ascii?Q?6zAyQaWoSowj0+6GhNzxfuoEs7T4mRIzz1IddpxP2Ck4BzJSWSZVOpU/1xe4?= =?us-ascii?Q?mIKZHh0DCnVcxwX1fMzF6bwLWvq3/zuNCRw2QBF+YJLQd8bprhDgdYojXxbb?= =?us-ascii?Q?5GFAuYJsw019C6QHsBi7bfs=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Lh3vRB4ecF8zOapyID/2CJS15gIp/3rd4+NZtltW821QthhGF5oLyK6Y+/Up8VeMsTbftNlONtwRomEoGMGMONq9ISZZTLjByrj0Pn5o8L13bH5dafD+oEh25OP49qhzloM5nwNiKWboNglCnGb6NMsd6s5eIg+1OwSgcbbtI51mL6BhtVZY2xcNBWO8KVV3OTuceYn7BAGxhR6Z4HdoUzVT2vrQfOjZHOWhzbqP6RVFW7W/4u0VvgUofAc204ek8awXasVwrDznysbBhCuDFfvdm+W3IjTbTeiJeyglAAQLP5ZgS0LyluaLmqhkweZyAJySeRGVWN2Gal0nVAYTjj1KsIxtGUf2DVDbUQg5cIbxhSHvA6WmtyoyVPVxamVSvlcTFPy7CDj1RN8mF2m2x6bl05p08JGO9QF7sxCvCoVrybzgq+vbKfZohnPLpaHlZZfEubF1LVitBrXF8hijAY/U94IgAzXwVUNhMeJtG7fYQYYSf4gpqqONnU+A67/Vkh/fQB/5hZsfIsvd6hkVsyciuwhIiSwobB7dQzNfovI8U+avX3o6+PBWpHUMdw7Js79dzPuOa9qpcZFu792BOIomPC+xh/WENBuniBVOEXw= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: cdcc4a82-056b-4e30-0b51-08dc8fd7fa1d X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:15.8316 (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: GwYFlWF2nlYAq+fTSr0vF4DmJEMKspt3yP/j/XZ/pdHriM4B22Xewbbmj7Ef/ZMXVjcCFs533OjKqKxvJLeBlorvdUq+YIXIZFkYz+9H4oQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 spamscore=0 adultscore=0 mlxlogscore=999 phishscore=0 mlxscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-GUID: M0XDY0VtsjQX9fq_AnzrqbCkbY5RAa47 X-Proofpoint-ORIG-GUID: M0XDY0VtsjQX9fq_AnzrqbCkbY5RAa47 Content-Type: text/plain; charset="utf-8" Knowing the store type of the maple state could be helpful for debugging. Have mas_dump() print mas->store_type. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index ffff36e8b140..f40732229c9a 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -7728,6 +7728,43 @@ void mas_dump(const struct ma_state *mas) break; } =20 + pr_err("Store Type: "); + switch (mas->store_type) { + case wr_invalid: + pr_err("invalid store type\n"); + break; + case wr_new_root: + pr_err("new_root\n"); + break; + case wr_store_root: + pr_err("store_root\n"); + break; + case wr_exact_fit: + pr_err("exact_fit\n"); + break; + case wr_split_store: + pr_err("split_store\n"); + break; + case wr_slot_store: + pr_err("slot_store\n"); + break; + case wr_append: + pr_err("append\n"); + break; + case wr_node_store: + pr_err("node_store\n"); + break; + case wr_spanning_store: + pr_err("spanning_store\n"); + break; + case wr_rebalance: + pr_err("rebalance\n"); + break; + case wr_bnode: + pr_err("write_bnode\n"); + break; + } + pr_err("[%u/%u] index=3D%lx last=3D%lx\n", mas->offset, mas->end, mas->index, mas->last); pr_err(" min=3D%lx max=3D%lx alloc=3D%p, depth=3D%u, flags=3D%x\n", --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3970F1779A4 for ; Tue, 18 Jun 2024 20:48:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743727; cv=fail; b=sSKnfALGm89JTWO2oedIJiOcqMhFgyi/AdtuC2bBNcg92Pqp0lqqgdbEbFb1YONUDn4pxHdSKr/ESkVfZDEr3NTKRjvPpqsLdvk4nmp8kjFIsr8Ha2rRkezaTcX89NHeewmr3A0L0n0/dGlag9i90RJm22HOdKu3LfHo7FY9Occ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743727; c=relaxed/simple; bh=eJyvqClWO3WM2bXDNTzr/o6yl5f8vmwiY/MXPttQhZ4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=X+jSeiihHT19HuVqu6c/Tv0aLQLvTFlg7RqfReHWKKjPYInQJyLfQLePNH1D78Zzo1SGMfsv8p2aH4GWzbau4Q8skSOQI1iHwQl+Jotm3wFccGbSiQBoV5JO6N6elhSCBnJq82YgaXQEuROqSBtb6s8DXiUA796nshqumxRJkJY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=mJM+sdI/; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=cdNp+xx0; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="mJM+sdI/"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="cdNp+xx0" Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUqvm005347; Tue, 18 Jun 2024 20:48:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=eSYIOHTKRzu7IUz6tv4eIyVN7yGr4LGzTFAAcrhpaf4=; b= mJM+sdI/QHeNqSbSSlhOcxN+FtwLkK2OAvhh1h9mIQa1GJKTLYQePY8uS7+fZE+9 gq/BtA3R+TdaUO59teZxWJkP4+d9YvIGDrM2SoGqQQwELJOiYR+zVcYdWV0jAdpt eiFE0GrirNphAR1dNUWt69fRPckb1Yxq5G7vEp1B9Je6uFLJ97GZjMtLz7ZZYiNw gcuFc+JCwQuwPRk9RT/Pj8nBlvgkgCrKbkkoij71JziX6Pu6wSeyJvLhhGQR6LvY VKuZ9AQODAgcQFXEYuIIhe+PeLcv/ppbdL78wkuL+QqsIMEFZtW+gkTBUTlmaNrl gSJBxh86DRz+P0YI2d5H8w== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys1j05xam-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIQ034656; Tue, 18 Jun 2024 20:48:32 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:31 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SOir+CvolmvIj/F9c3zLO9xckFuE0N5eSibwZz5ZOwqy+h44u7w1lf7hBVwIoa46xzhQdpcTu5Y/3LVwLcXxG7dvAb5R0JHsSwrge0uNwhokK7JVABq5X3ujhCVB9K2fRYhYJyRUarTRepDtgaLPiNXVv2r0mVgf6zefpm5LVSm23gKI3HkBZqkZXNbxGF8vOLZnjNVupTIWXEa/dwNfUaUpYDTXUMz7Ze3sqRsc2lYqTh1/E/QYFH7jcS4YqwSC/trLUfZ/1S5l/UTCIbr3V5OizfEM3YBf5ywcI5gtzlsH7/XqH3OoGEGCWZBFLDdaIjtlIdPHozZB+wawNXrT6A== 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=eSYIOHTKRzu7IUz6tv4eIyVN7yGr4LGzTFAAcrhpaf4=; b=lDc+BjBTK21ORjJEZOMGj+VWW191+flXT9SIU518zD6q6oYLc2f+Gf2Cuh663FEQ7vKbLusNzd9jLpRZF6L/R7GCVEbgqkK1xgdbmfzvzMOnQR7GDoPxR4BusVGtbJ5pDOAoEnjZDFgkEk2ZuLcaqsdHk+Pgukdy7wa/eFjrM8vd1wWW+yJwSXW8vq5o8xQE31Yni3lqOL5OQsRABzGKMc56k6eTdKw/DoFIJ9QJTtGDRt6U8ROvZ7LeXzYWlm62fFDGstkGJ/S4OTOnW7gHHxKHpAE4VaUWDyS5uhVQjylKCAn1i+J1r+1I36/DwMJRlUwZhbUuXMxIH50DdTLC/A== 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=eSYIOHTKRzu7IUz6tv4eIyVN7yGr4LGzTFAAcrhpaf4=; b=cdNp+xx0KUwO/8P8vP0ZnNVcn7P6Gc9Thlrwlq8yip4Bkh8brhGcRB9OPaX82VXxHe5Y61Cnq35uohoyP/64QglZqw/1LJpx66NnYJVTFZC59ZyhQEGqefmEjxNDkit/Jeh0ovu7IPRv9c/hYDrmbU5i7618m+Ga4bNTIwuwUhw= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:18 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:18 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 09/16] maple_tree: use store type in mas_wr_store_entry() Date: Tue, 18 Jun 2024 13:47:43 -0700 Message-ID: <20240618204750.79512-10-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR21CA0029.namprd21.prod.outlook.com (2603:10b6:a03:114::39) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: f674a0f9-2001-488f-6739-08dc8fd7fb98 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?2zl6mvJ21ioLsaISeb/eOkTBYM9pyAQ+0GPn0SFl11lhssbl17AvCg/BY+Lr?= =?us-ascii?Q?PQgBIiKz6wHmacP9AarLnzpIrULkxaPF2eFVQ/UkQ5yCuQkJvFq1NGwhGiCF?= =?us-ascii?Q?+s9jmHh3UViAtffzA92b9OcehANFNrXzQ1eHfQ3KPUGbDdlxcN8UW0yV6ePh?= =?us-ascii?Q?YgIa80cnDPgBBNZk3zh+1MpsaoeJIwKnjUNq0fs6yIgtqNfYpmquOkE7y4SE?= =?us-ascii?Q?AqPMEL0Glbe4pm1hFne94fJnzsjiiEx18LLGIgADIb22JMPc/VZx1vf/Zm9s?= =?us-ascii?Q?MiNGIMebj77Rce8gbt4OdAmT1Tpx/iyQ12nuftEflUtdiB/d5Kw6aPo2HSeR?= =?us-ascii?Q?vqNudNomYln0KNtsMmIrSfYF+SKWy2+bQrVX+Ch5GwWG/oQUkZhOM4e3UZ20?= =?us-ascii?Q?NjPffpnpoGuGPZfO8mE9RsskiIHaECK6a5lV01Vwe65dP3qDoWq5l4Es3+AO?= =?us-ascii?Q?1AvZ4UkAMe1a32EcrJXWnBLDPFmHc0D7ByEondv+D1KRetUwN+OGW83H0e4U?= =?us-ascii?Q?4E/7dVX5CUn3FGPEryu/kXDq/wcdOv2ohgKdd0eayhislMFh7xOOhdBR0sp7?= =?us-ascii?Q?Luu4cEqrlCeJptcLKfUxNeGqxqGdp13lZHCiEAR5orP9wdbRs0Rxun7PKgLi?= =?us-ascii?Q?78C2VCyNsaQHGsK+ExlqTCwzmsYgTUnEMIIqzJA1XO8jlDcrEAQcivs/E0n6?= =?us-ascii?Q?wSMY88CszLOaaTtgI47yKXOGlzFIcJKtv6WwopDlSy+V0Zn6no0GKJlQm5gE?= =?us-ascii?Q?iI4onXcFdQyKC3b2l48WHmi16+6RM4o7aSYlI47iR/Fovy+koMrI1FlSzgEK?= =?us-ascii?Q?A/BkotDgksyhFHxqEpL0mgFmWjp81fHPsIhjN8Hlv/tIYIxkxwSg/+iRkR1f?= =?us-ascii?Q?Za271f82Rg+Mg6yrSlUH9Np9zWBVvbeHG9WWls+Gf4lK95mk7B5gm+rsXVxw?= =?us-ascii?Q?8hPnvJh7TvKin0cdEBTQrJNUhis+FifBb5Y+vWv9xtdhzwuYoQE9CvEHlYra?= =?us-ascii?Q?uQP+ApLzlcEytJ+TVx+gsfGul7jWLNRk8yXNDHyYm0vLWj9nHAHsKjpNByz3?= =?us-ascii?Q?Cw7kwWuGOH1wtd6DAV/8XeCZIf1oLts/64q2Etn99i54ewGARLQD2QIYj9IZ?= =?us-ascii?Q?kxdI5YbE9LCTx8GpCfC3U+vlJp9DCa8kPQlkz8c8uWsWDOGy5wAQTZFgCW/e?= =?us-ascii?Q?CvOxkNvsPgHOsXDOECU6d4z6E0N2D1tv497ZmPGi9EtKAIIpc+CrTcFwv1eg?= =?us-ascii?Q?0iJoraVsJtUxHlzFZGTXor47fISbc8mdGq12tTFHzQSvCWpRsDnqjmeHcXwO?= =?us-ascii?Q?vWblXwmEdhGa3YLVlNOzuAFM?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?1cWqxqKVCo8RoLdZiPbiuZxOyV1wdeQ8LSD52ze3ygXneFXUwdKzYTiZertw?= =?us-ascii?Q?Zh8TEWK0l/OhMbKVRVh1flMc3Pb0D6Piw/GQ3PHJGtWbZ8l977VLX4fm+M5w?= =?us-ascii?Q?NYyzckoFK2fwclLV3ueVN/tCo+fjlj5i+adyqXLKrP2e9HhuEV+TdAzyECxX?= =?us-ascii?Q?W7PgLGPTBJMeVxJ8LFFPZy96alOG4qNPz4cnj5cnuu5Nz1KVDT+PCkXQM7wm?= =?us-ascii?Q?ly0Nmr3GKc3o+Z6cMEYr6bdJThyujW4LAhsZXZHGCZCyI3tTMSykMrYE2ugg?= =?us-ascii?Q?YqjYDrvQP92f2Q+Zv0e3coss0O7B5IFtdpS7DbWcn4zlkob93nt4mPmZ44RR?= =?us-ascii?Q?Mfefu65DfxzigpxvBpqRWkkpPQ7IarLa8tF0RUlrypV885N4hgIi4U9xVVOr?= =?us-ascii?Q?loWwT6dsqPndhiMCHY1IENqmvOBaGpSS4RkkpPeqCVxhvVj2or/D6O2AnMA1?= =?us-ascii?Q?YdVKHGR9aca5hZzUb/MwKvzpzVjcyHtYjQbQX+x4NMIfvbPE+yIwNjTGFgJZ?= =?us-ascii?Q?W+YRbC209/4kOOjySo1CoPK8c+eYfl/qpqppD720MiIe+DVtNRZeC32pMRxB?= =?us-ascii?Q?Bq6et6tlH3tRlaZxCIJkFtPHzD+ZUoUqM4uE0WoI8ciykJ2EKWHj/mCsfkvp?= =?us-ascii?Q?xQ5LZn8VY7i6oO9q7ubbGx8IMSNrG8qPRIn9rWMaAaxgAzeEeVNTc+sp9Z4s?= =?us-ascii?Q?5UshHDcCGp4/Ii/Sjo4j5CwCUq4+pLsplTsf+DOrgbuwo4wDxfNf9XKtOxa1?= =?us-ascii?Q?e1d1UdlzoZcTUPbm3/aEmz51x0U1bBy4jbxeqYRSw9S8dFyGwaMC0AUHrr+P?= =?us-ascii?Q?9u11wN6PtwlptbNn6VkQKVsrTiDWa0dBxgqPl+oUdMLlLN4RUZulxO81TJ9V?= =?us-ascii?Q?srD5qUViSU8l1/6Imy0ePSVyKT1JLNXn3bMdyRAV3A5pzt6FSm8r/fbfOBIg?= =?us-ascii?Q?lrsXsv2lhFlzGahd5Wq5zEccLM07Z0NClvNAEHSOc3BFZ7EtDNlwpp8s8QWB?= =?us-ascii?Q?WI+lKwwZfm09g2+9JVdX2kifr4Qsk/wdOlKoz5ERPTJDrtJ4EZ6Bc939Jk5t?= =?us-ascii?Q?lVsf0LBElccnokzxbyJ14gD1AFQVJFeoyChXkFUS9HSqphpvZLB5MLYnjF96?= =?us-ascii?Q?TMvaWqpWZbHV/Iz6fmFMZK4zDhU+sFdaDGq9YsWvqlTCncAht0Mdt0l/a0fi?= =?us-ascii?Q?ghzRz/Uase/5zzealY2UTLmvyLkXaXRkBdT+GM7eK8cYY7i75ZheXvU07/pD?= =?us-ascii?Q?1dTnHUFZt/WyM38d6tnLWkJZy92KbE2X1p06mqI8iYenKkQItW38otLJv4oA?= =?us-ascii?Q?pyTf9Z3Zz3c37Z+hWicpf8nWUEdbQWJcC5s2wmW5TaUaSr0GlJNOcFxiPg1M?= =?us-ascii?Q?gJcXiKuay2E6QVwPmWihNm1E6XpOry7mjJmpIZw62b/M1fY6qJke80DdfRuL?= =?us-ascii?Q?d1HihzzWoNk2dZG+rdXshIEw7vf7JCXAvgG3T8zBmiIDTFb4+vxLeh8PHuGb?= =?us-ascii?Q?jI38j0sCk9IGshDK/COP5CaJpApELP1zXHJiIP+OvXTTurX5OilWGqQSTYkJ?= =?us-ascii?Q?w/Kv2vJFsxjOiPYxGS7QMziY5cHJOD/SDdj9XxowuNbMy/ruO0GnZLVkW9LI?= =?us-ascii?Q?MLxbCzbT8iOGWF6UJPp5AMU=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ZL8dQ25Ukl+uQ7s5qgtypcxTFPUoLfZo1fVxlC9/5z6mnP6vpuQ+b+5GcNrRXa/QS3UZfFEKZHhKPdDENjfy6tRQnqWcpGCwsr8v8ruUHIAHHB9HAKvb2Rhdp4HhMQiiUd6mJJ0zCD6QFfbbgRshFe4Tbzj9UiBAlsAyZVaYch4Cl4y/9zj141Zq1rzsgp6SK9oXl7VD9T9jdUG9uFckVi1ukjyRsptaPxLHfTIlNLHN/diGrxQiunnBsTjIaDivJjhrxu8x4s4PqA8pD90y0wpH1Fwl+zt/YMwSTMyShr/lpAdh9W5cmZLrLxzfchYez0usaqgfbYElkRuZSGEPbjAfNWsZzE3pBGlf8iRypcxDv5FLkSZeORuGC/i2rMxDkFrvYcEDXcuHOtduXPn+xVNyLAVdiZOkfMcJypXF0kcUqFPl75Z3rJZpTzBJWkBaCXtDHraHDNkND1bhhAP4zBqdvoAv+bC8yWlsj2pJ9RvVnsM51q74BO7YYYztsJ3bgq8ez8fXHLiO4GgODHsuScDe5rhiR20c+RD3YEGMLkXwwlWGG3D25cbgmq9ukZYy0Fz/+ICovtZ1qsbSieb6P4M1zqXUldoSMIyBR2LjUek= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: f674a0f9-2001-488f-6739-08dc8fd7fb98 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:18.2859 (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: CArCkYCB8THhFQuY9MzIqKcFq+FDI4ZyRW31mlB1QiKVW9MbCeQJoa0ScUBw0t9dLzRq+NEIITuoMrgoqO4q84YTpxlvIFaLuMHh2R4lK3I= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-GUID: DvFan6nl07_jfjjaEFKhP8QRb8ieQPi1 X-Proofpoint-ORIG-GUID: DvFan6nl07_jfjjaEFKhP8QRb8ieQPi1 Content-Type: text/plain; charset="utf-8" When storing an entry, we can read the store type that was set from a previous partial walk of the tree. Now that the type of store is known, select the correct write helper function to use to complete the store. Also noinline mas_wr_spanning_store() to limit stack frame usage in mas_wr_store_entry() as it allocates a maple_big_node on the stack. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 54 +++++++++++++++++++++++++++++++++--------------- 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index f40732229c9a..8ae87e512961 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -3780,7 +3780,7 @@ static inline int mas_new_root(struct ma_state *mas, = void *entry) * * Return: 0 on error, positive on success. */ -static inline int mas_wr_spanning_store(struct ma_wr_state *wr_mas) +static noinline int mas_wr_spanning_store(struct ma_wr_state *wr_mas) { struct maple_subtree_state mast; struct maple_big_node b_node; @@ -4206,25 +4206,43 @@ static inline void mas_wr_modify(struct ma_wr_state= *wr_mas) static inline void mas_wr_store_entry(struct ma_wr_state *wr_mas) { struct ma_state *mas =3D wr_mas->mas; + unsigned char new_end =3D mas_wr_new_end(wr_mas); =20 - wr_mas->content =3D mas_start(mas); - if (mas_is_none(mas) || mas_is_ptr(mas)) { - mas_store_root(mas, wr_mas->entry); + switch (mas->store_type) { + case wr_invalid: + MT_BUG_ON(mas->tree, 1); return; - } - - if (unlikely(!mas_wr_walk(wr_mas))) { + case wr_new_root: + mas_new_root(mas, wr_mas->entry); + break; + case wr_store_root: + mas_store_root(mas, wr_mas->entry); + break; + case wr_exact_fit: + rcu_assign_pointer(wr_mas->slots[mas->offset], wr_mas->entry); + if (!!wr_mas->entry ^ !!wr_mas->content) + mas_update_gap(mas); + break; + case wr_append: + mas_wr_append(wr_mas, new_end); + break; + case wr_slot_store: + mas_wr_slot_store(wr_mas); + break; + case wr_node_store: + mas_wr_node_store(wr_mas, new_end); + break; + case wr_spanning_store: mas_wr_spanning_store(wr_mas); - return; + break; + case wr_split_store: + case wr_rebalance: + case wr_bnode: + mas_wr_bnode(wr_mas); + break; } =20 - /* At this point, we are at the leaf node that needs to be altered. */ - mas_wr_end_piv(wr_mas); - /* New root for a single pointer */ - if (unlikely(!mas->index && mas->last =3D=3D ULONG_MAX)) - mas_new_root(mas, wr_mas->entry); - else - mas_wr_modify(wr_mas); + return; } =20 static void mas_wr_store_setup(struct ma_wr_state *wr_mas) @@ -5587,7 +5605,8 @@ void *mas_store(struct ma_state *mas, void *entry) * want to examine what happens if a single store operation was to * overwrite multiple entries within a self-balancing B-Tree. */ - mas_wr_store_setup(&wr_mas); + mas_wr_prealloc_setup(&wr_mas); + mas_wr_store_type(&wr_mas); mas_wr_store_entry(&wr_mas); return wr_mas.content; } @@ -5636,7 +5655,8 @@ void mas_store_prealloc(struct ma_state *mas, void *e= ntry) { MA_WR_STATE(wr_mas, mas, entry); =20 - mas_wr_store_setup(&wr_mas); + mas_wr_prealloc_setup(&wr_mas); + mas_wr_store_type(&wr_mas); trace_ma_write(__func__, mas, 0, entry); mas_wr_store_entry(&wr_mas); MAS_WR_BUG_ON(&wr_mas, mas_is_err(mas)); --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 169CB178CE7 for ; Tue, 18 Jun 2024 20:48:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743729; cv=fail; b=cJFbNUqXb3L1X12PzWd/UKoEo4tonO8dMxJ89vPXhBXC/nWhSPVyJsGClg/cDUFLaKIytzWqbpVz0P8Y0TFMNpe9a2ZZLT9AHIFZDyP/mxWby3fkptz0HbcRCywq4DBKfhVmVdPUOLrCxu9bfJPzk/oeLluzX8Uzt/k3RrZ55u8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743729; c=relaxed/simple; bh=g+h6bCXS3mCIFD4yRSrInXHNWoHz9Qf4YsG2xfDAdxQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=qSnxng9s5rrS2pfgEUDbSqDgHuWaM472kG+oc+l22fgdVohJy59573947eykEZ7oMkPxIeFhT6b25RrTjuU52t1sAAOQOnUqzZo3uXYhzG8G/jOyK67wsxSO/IgkyCVpdSx/Uxt9hQSkAgnAaoumYHoW6q/+gnxAOGbYoIfmIz4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=JIGpGgOT; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=rBFtIlqC; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="JIGpGgOT"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="rBFtIlqC" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUskA029791; Tue, 18 Jun 2024 20:48:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=XP1A/eOgqZMUlcJAiPY9f3/4Q3XZGbvXKJ9jT8yEgaw=; b= JIGpGgOToHk5TqsBKqvuA39BrY812xcbxW0mUOglbpz4Mt+brlJ0JcaiYMGKHfEE Mk+iShgr61A9E3ozq3azP5opMorm9icrwjTNS9Qgp2+tuSMNRlq1smChEMd+MqvL 0dBz4iLxq1/27hxjfdAIK8qoSf6lU1d7Sncczz4y+Jhnn7793aGfa4+jgyi8L+nc ZcmwASlFdKgKyQ8rVMQ93YQefAPWw4KNhJPn5HYQ4Go09RY0F1ZCY6Phs5ySSMM0 I3Wgt8czMO/udVoOpqKBi1mt/UAzqJrJ8GBStXmH1tH6YpsR/KnuNMjfDfeoPXlX FUT+Sa41texVdNhPs3OZ0A== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys2js5tnr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIR034656; Tue, 18 Jun 2024 20:48:32 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NH7X9j0E3CqffwXX+OTU30Bvv/M0DM2SH/aGy1RJjGzrQmZeA3X28k088KIiMe6oc0DbP5NcCvjsF2MCUYsdSmKeVUYZ+eIwIJan/mChMp3zMOeaRfBZeLxuvy0Z1zEqB/LSC4hIPlW+iH2ek4xtmT1SpC+S4iJdlOcYUJJqsY9meLHMOGgnupsGK7eXjsn7kiF61j2CqZqoE2BhrL44vg3CIJ0eEnG1RVdpqgG5ptzZLM0ywFOo9XbhvDaV8p+P6/2qupkhCXFVTrLjitUQUnlrYD1Giv86iNs3lxLpF7l4immxhH5QCDYYdboJxhUsNJF7R3bl/yt3rgTrGp1CnA== 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=XP1A/eOgqZMUlcJAiPY9f3/4Q3XZGbvXKJ9jT8yEgaw=; b=QLTLcdOOIEnAxgyMR+ulGCudhNUG4jF3YIKHcFTdcoOvo7SAXLf9PwKRUb6ah3gMhuWTEqdne9qLUn2KEtBlHPXagEmZnXs0ITX9ZawDDNORUKAsYcM1QNXAfW3XrfHsWj5JdwyPcptmjVCRgNk7rPhdKwW+oDYrLSpmlJ0Stq7WE9tGDsuFTvjU+LS+y5EwohCGG6GPTcIpwX0PsplYKAjjxgHBsAguYvvxLsQAqL+LEwG9uX4drEX2JOldNI9ei3NVPYlGeMMk3oY7PzyAEjzjYzI6dxdY0bkSHmCBrzMRMp5R6sQ4ML5qtCV9dIoTIxEGLdN9uoYknSaOy7I6Ig== 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=XP1A/eOgqZMUlcJAiPY9f3/4Q3XZGbvXKJ9jT8yEgaw=; b=rBFtIlqC84DmUz++KjIlHY8YKJQ41LuHYmTlkPdweeddFtXtS6iKGlWJvlfCQAzFsckJ7DhlHT0NNobktCBxwpxRnEv9uSB+zUtRKgFT7eIiAVLKcNPL4KYZ5Ih70LUstdy4eXr0WrpxURKy+eQCVVjlR+AhllY2KtxeVGeVsdE= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:20 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:20 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 10/16] maple_tree: convert mas_insert() to preallocate nodes Date: Tue, 18 Jun 2024 13:47:44 -0700 Message-ID: <20240618204750.79512-11-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR18CA0008.namprd18.prod.outlook.com (2603:10b6:208:23c::13) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: 75c68de6-2d5b-4b5c-746b-08dc8fd7fd06 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?wqhTsmTk18wjRiulcUEBAqsAPppw3E8eP1U5P+M0qIcKzvaHHdi3mqYgi4aL?= =?us-ascii?Q?U4STxl3CTKfNK3D/I7c/bhX35fpZQ6wlQJkoAOOQc55lVAx20u6UQKabeBS4?= =?us-ascii?Q?TPJUxCVuQu2w4Ki7IWVDr/z0B3CwUsqZOskY/kBMcR7ARkbSlGQf8iThCJKA?= =?us-ascii?Q?s0q0je1dcsZ8z0e7CoPPvn5DergQegQCZv2ahE+j2pVM5YwMPdM0kC8BFrii?= =?us-ascii?Q?Cn9m9pXH4gSaQ5qlyno6Ivw8b2kIWV6kcAr06uzj8/K1eAF5O0oiPcGM/s21?= =?us-ascii?Q?GhkoqUpxanSWb2LUG85WeL7jD/dgVgly2FvconcUkIK69E+XtYW3tPt9bxHW?= =?us-ascii?Q?kCVom3VQvD896D14kygBdaqVlm+v/ZVIoiQz0G+2DmvnypF2XrJueXpD/xuj?= =?us-ascii?Q?UkcbCuczAyqZNtZPXOZO5Wd6Lr9rvSFaTueWgq1cj3hix2ZE1+2Z3Q4bJrB2?= =?us-ascii?Q?bTfAy6XG3sCX0hltsmdr3PBeM8h9zf1AfwB+AyBfe6Y6tsPViAWruWzDi0FV?= =?us-ascii?Q?ZmYKJ9dfpmbvl5tzKNmOoDmwwCGjauspzZfSaAwd9VvG5OxWSrHCoAy8VHCV?= =?us-ascii?Q?57aCG6Vnwu/jjYGjXOlz1M6Dm9LpqSnFNkrixnQ17J11OZ29N6/bVDxfis/5?= =?us-ascii?Q?HK9I5SY0E/wnoIXEFqzOxKe19jlQa+hYmfBaqcj022DS23TFCZFALJnduBf7?= =?us-ascii?Q?pykNqgorWab7IvxksK3XRUch/VdfvvRbQqJtEiV1ozIJS0RJLL2frsN2WVae?= =?us-ascii?Q?erXFT57pqvP3ExEDNRFEaIMmGx8HPGPMhhpAuNSuGQV9nYqhks0h/ACtoLyV?= =?us-ascii?Q?tRP+/RGzro7+j8kl/xPZc1ay8SpwRd85r1dqG6RwLuNLleA3nEP+6eOVpQHO?= =?us-ascii?Q?VpIIw7YYJLY09yjRArKjlJGLF4TxK0+YWxt3LevVFtdIr79M5Ut9FFM2goWN?= =?us-ascii?Q?R59gpFdfE/PPXK+8G6McgEGRSMhzWjKdmuFdCDQVXAcfbajsIodq/Mi/ap26?= =?us-ascii?Q?g+ipvuJsxFxclL9F1IUIA1xT9BKcrjsbkwkTok4dA+9u3x/t1XtFejC3/lmq?= =?us-ascii?Q?EWag3AK/0A96cH6HG9rmXEaC43EKdhL+rI3QQjMfV6vntipd6ykxx6tRx+MG?= =?us-ascii?Q?2C2jSlk6nTi+6VeXybMq9tkIy9vSCFzkp1kB8E6dKiB0GyxfQaAnrYuICLgF?= =?us-ascii?Q?zyjnP9y606nTY0L1WGsP5MiFF27lOmE6npB2vkRDdtb3XWemUrXKRconGoZo?= =?us-ascii?Q?PouoR1A3CKkSnMo6Ie00zoAjnlLICg48hQcbQsgyLTaDatn2pxDH3tyBPUTe?= =?us-ascii?Q?+48laOAGCzKI8JN+64WP+anr?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?gdFM4k3f4CR9MZvxoloUjsq/6ie+PjdIWyUB2vpF+wD9zSh7z1RtznP19Zca?= =?us-ascii?Q?xmXyBvHlfbLsIyLIn6O5qFVCccHGDZGZiexEoxZ9IPFLUluY0CDOqWMHQOml?= =?us-ascii?Q?iBKnZkbeA1aQAhDzkgYEkdPxK+BWOYeDxvEZ+VPyd0jcYf+4vsUbntfBXtGr?= =?us-ascii?Q?X1mPp4hIXEWHfYkBtV/pwVBfscMoPy/QDpAKie3Q2DuRUnsYPNN9fh6dvEyp?= =?us-ascii?Q?+rL113qzTM5sDTSRQs2y3lh9Z1Gl3h/LkYnDPXxFFcnYadIiWHihydqBHsbE?= =?us-ascii?Q?KxWIgnftKIjsw7VuOuygXNHQHLWFPfPaZ7BUREc/GMFViEjMJdQvLR9QYip2?= =?us-ascii?Q?7uTV1Fxm3/1Vzeqcgtu4ibCbEfbPyHZE+J3jJa6ZzEZs1kaUHTpmeVEIcAb4?= =?us-ascii?Q?NHwGWwlmo2IWti1EVFUUI82F5zIx5oQniWgDu65yFMIRkD49LELrQrvImKMs?= =?us-ascii?Q?GyWK/Kq8xGSIVNYGp9YdgeO5R9fPG+aVr89lUnkBEXlQy/SllQg5Jcj4nKrU?= =?us-ascii?Q?NCO9FenJkZoRdIWL/NpD1mOyUYMmr15iBdnZnjtfEKygDRP2OohEW8gDMozw?= =?us-ascii?Q?5c+Rt+GTXtiLGUppxTXt2FQyoUUuy0xDRQvQv1OeUcBnDC+PwmZH7Fhtj+nu?= =?us-ascii?Q?qWGfjaJGZR9lbBJWBvPqjntwDomMf6BHiQrm/WqrGyf5ZxTwkoQtSCcnOPxh?= =?us-ascii?Q?dJkOgrhuyBc6h7At6yTiGbvfDr067VcvBbpQzRZ+fnTnN+Ogdu4F6Jprcu9N?= =?us-ascii?Q?7Cpsz5e+v+7alT29gklgtFLXFmBQ8Q9ed9tto9hsrSua4i0NO8VCYupLQGZ4?= =?us-ascii?Q?E1rbM2TYiODxR2XfxRA4E6EGKMHb7msbQtZbuO9EorWxR75xrOxrq88WEaq+?= =?us-ascii?Q?CXlmdQHbS0mZRIpaeWVk3isj47ZaKAgdwzKHpGsHtvZ5R6qyK5ozD36dPdV0?= =?us-ascii?Q?aF5oenA1dHW+alTyBoq5llHNpOdrX0bEiA/E44FDXOK42ewIfliCZiUKcm2i?= =?us-ascii?Q?N/vRllKqqKftjpC5STOD/3CNGe8WvVQ6UmFI5URGHJXDh9BDUInnUca3g3Jv?= =?us-ascii?Q?4DsoX0oRj/T0Fq0p68xi93QwxuqjPNeFB4iXb7iY0ir93qZCTOwqA9p3nZ6W?= =?us-ascii?Q?1+Hl4+ig9uHshHCf1mzeDCWUzD+DUSwHohluEQDfjINwAM1eX1mgKbI7o0/1?= =?us-ascii?Q?LR8zyvT2iX083o2e4kmv8L4LlbfXhIlc91XsdGhhunhJVyMcSfSNvBf4u9hI?= =?us-ascii?Q?KDKLtwapBgKweNsoV6VgoMg/bgAJnElzunI9q7OTESVZ2qoFxaeTMnHf91u/?= =?us-ascii?Q?O9c6pXySK8XnkocE7Sm7M6lbRC+BCqapRFm7FOHTwUrhkhT4KrGMeonRap43?= =?us-ascii?Q?DE1zPH+Es0aP2rcY3DStp8WM32iJFg+tKtvgw72/KtRGjLNKxmJaOmJ0ZEgW?= =?us-ascii?Q?2nh7PGHQOxUw1SW6NovLTR6yxyfD/q5XTyb920U/bXFu04Jn63LkS/7F94aZ?= =?us-ascii?Q?cnpgj5I+/mXY8XgSsW59aODDpaFaVBzyQyqlTxriMXRcsDnGAGfBADbHeKMm?= =?us-ascii?Q?KIj+RQ1YB+O0nZwbMhSEKPrZ74bUWNSFMdk6N5apH7+MJhB6oKXxemlq6nOy?= =?us-ascii?Q?CpVojDm11KXp+R+z9eHtZVs=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: QCRWEwd/Aeoi80yk5n1Rq3oGfANY0MgipNU58d7dkSaa57woqxKO1cCgHpKnEc8Ne7dFmFHC68BLnXrmhpsr5otgCFrOAdlEBVynHlkiu3aOCiOrAHNv8xfMXpkX/czqYP6S4889olnWh6G3ZI3Z0qdgyE8ZieWI6yjz+f5Bu26/Rtfz/8N/1dVa2aNTPDiuDD2YrDAinS80v9lfVEKkyCrJrOI4GFxzL4pZY/mrh70IpAraxKD499jH+IFsnBUujTmMibhI+Rxf4oCEeedLdYdaTVcdEqxEBId8zPSpgrbComQ9Aj3hW2aTpprPpQWDIVJfH7Tx+cOrN9Kn9ommQszc0ruMewmFF7/VD66sq+7wPZHZje4BeIAG/ho7DN0FzQNpVjGMGRjirnJ1D2IJEFTJuSgf10Fh0hDAOHsQwFIWePdQk9IlAgXpfXjqYV5uD4Ug6W7tfyDV/SCOPO5ZK2FSzteCjbxgbZT2lDuTr2EN5IBXBw0e9+dqiag4yXfB6Q+ttw4eIkHcG25spJiNY8ld07zW5W5qxkPUCo7IcWrCMfQhJeRzOxyvdF1xzKG0wJmUQqfVJ3sZ/sknqy0vDA6loV7ZMypRQPc7ggb/NjE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 75c68de6-2d5b-4b5c-746b-08dc8fd7fd06 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:20.7041 (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: sqvfdGBMpDr2gbQY+xp6kac7IxrwkVKSdpPTCPp7eGyeN2tnt4f6qfsUG23mBrwx5WaSYXCo/Djc4iD/wZ1ApVzHwUNhsBx+myNV0VlcR7o= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: ZwZ1nuokKgIBl60Brqr4t0OFppMXuFhm X-Proofpoint-GUID: ZwZ1nuokKgIBl60Brqr4t0OFppMXuFhm Content-Type: text/plain; charset="utf-8" By setting the store type in mas_insert(), we no longer need to use mas_wr_modify() to determine the correct store function to use. Instead, set the store type and call mas_wr_store_entry(). Also, pass in the requested gfp flags to mas_insert() so they can be passed to the call to mas_wr_preallocate(). Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 8ae87e512961..e53f1f398ece 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4442,11 +4442,12 @@ static inline void mas_wr_preallocate(struct ma_wr_= state *wr_mas, void *entry, g * mas_insert() - Internal call to insert a value * @mas: The maple state * @entry: The entry to store + * @gfp: The GFP_FLAGS to use for allocations * * Return: %NULL or the contents that already exists at the requested index * otherwise. The maple state needs to be checked for error conditions. */ -static inline void *mas_insert(struct ma_state *mas, void *entry) +static inline void *mas_insert(struct ma_state *mas, void *entry, gfp_t gf= p) { MA_WR_STATE(wr_mas, mas, entry); =20 @@ -4468,26 +4469,24 @@ static inline void *mas_insert(struct ma_state *mas= , void *entry) if (wr_mas.content) goto exists; =20 - if (mas_is_none(mas) || mas_is_ptr(mas)) { - mas_store_root(mas, entry); + mas_wr_preallocate(&wr_mas, entry, gfp); + if (mas_is_err(mas)) return NULL; - } =20 /* spanning writes always overwrite something */ - if (!mas_wr_walk(&wr_mas)) + if (mas->store_type =3D=3D wr_spanning_store) goto exists; =20 /* At this point, we are at the leaf node that needs to be altered. */ - wr_mas.offset_end =3D mas->offset; - wr_mas.end_piv =3D wr_mas.r_max; - - if (wr_mas.content || (mas->last > wr_mas.r_max)) - goto exists; + if (mas->store_type !=3D wr_new_root && mas->store_type !=3D wr_store_roo= t) { + wr_mas.offset_end =3D mas->offset; + wr_mas.end_piv =3D wr_mas.r_max; =20 - if (!entry) - return NULL; + if (wr_mas.content || (mas->last > wr_mas.r_max)) + goto exists; + } =20 - mas_wr_modify(&wr_mas); + mas_wr_store_entry(&wr_mas); return wr_mas.content; =20 exists: @@ -4532,7 +4531,7 @@ int mas_alloc_cyclic(struct ma_state *mas, unsigned l= ong *startp, return ret; =20 do { - mas_insert(mas, entry); + mas_insert(mas, entry, gfp); } while (mas_nomem(mas, gfp)); if (mas_is_err(mas)) return xa_err(mas->node); @@ -6536,7 +6535,7 @@ int mtree_insert_range(struct maple_tree *mt, unsigne= d long first, =20 mtree_lock(mt); retry: - mas_insert(&ms, entry); + mas_insert(&ms, entry, gfp); if (mas_nomem(&ms, gfp)) goto retry; =20 @@ -6585,7 +6584,7 @@ int mtree_alloc_range(struct maple_tree *mt, unsigned= long *startp, if (ret) goto unlock; =20 - mas_insert(&mas, entry); + mas_insert(&mas, entry, gfp); /* * mas_nomem() may release the lock, causing the allocated area * to be unavailable, so try to allocate a free area again. @@ -6667,7 +6666,7 @@ int mtree_alloc_rrange(struct maple_tree *mt, unsigne= d long *startp, if (ret) goto unlock; =20 - mas_insert(&mas, entry); + mas_insert(&mas, entry, gfp); /* * mas_nomem() may release the lock, causing the allocated area * to be unavailable, so try to allocate a free area again. --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AF5024D8DC for ; Tue, 18 Jun 2024 20:48:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743726; cv=fail; b=VMVlMphA7xEwAfxfVDgCy3aAxDMdvjs2LsO6QG7tJprqKCfA0ysM21AvJC16c7yr4H86K0CW94tzYIbgyu0Ej2naGabU2LhO91rBgu2Y+2jEHMLODAIwEXVbFBmiBa52gkDx0j5rtBWZzSJELoko9TpcRRXu3XJMcuc5KU8IXlw= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743726; c=relaxed/simple; bh=Pvzx52pE8AYyW/atbB050br5Jnxnxz0qjTaOJ4Yn5iU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=TAV82RjFXy5scBcy7CU1Epe5ZcYyEwAYwn5ZitF1vkKczvkrLXWOPz8lSnuo95+8X3vt9FhhJfhknWQ4wweEQVAEjP5prinJwV2Am6MNnELTxUqPU5K3Bd4sb+RIA8/oG6LJU10jxDeB8LUXU07SicEM72ybGjh4pTTYxuz0sxE= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=UVquG9C1; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=iLsM1fGi; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="UVquG9C1"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="iLsM1fGi" Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUvLA020993; Tue, 18 Jun 2024 20:48:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=32B6ngM4WOWVGCyckbuU6wS0iwX4RANJwBQYctQ4B90=; b= UVquG9C1fNHUZyrkcWzOWktbRcGJrwQFCYMqFzGe0aoPoBjbalhbkPAJyTCcnzeR O/OXUdYQe21BFjwLBnMSEiMeQ0JEZMT+WeuK6ZYXskz4NSOWGGsZfeHCTLcR1Ij1 K8yrHmXm4SPsEUV0I1sMbIZ4DC9yUXPark2Ul+Yocexel8KodpzjU+jmO+KZ+34/ 5WcHkN17t+xvris/H+AMRj+gP/TE+ZcDPtFMagi8mq+GGbZJZ7yrM0xpQ99mxPaD hHkvtW5hlJcREwqelYV8f6t8seTAIclygHmi0eAeGuO3b3jv8HWOR9AqissetzBK 6kQq8/LYp2rxMnkaNy59Zw== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys1vedxn9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:34 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIS034656; Tue, 18 Jun 2024 20:48:32 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-5 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jlpN9RDIDG2+UUJC0ImC6W6qWqr0KxcTRrShySg8ghbVyi9MD30WeJVCCtKO6Rpu6mfjcwaw/Kq4I9gQ1lWfE2FMKKh07MsXfKBjPf6EzHxYIQdmi09XNYOspiPdgS4rIyY5JBfDZGF1wKwyst5s7eB95ayH9Y0Z+oCMu61NU/DHfbBD+DoYGsJ9IqDFmyUjowVLXA4MBi/hiaVFzqsu2w+evq9/2yWXabaEPzFGVLxR3XOOUE8UHoThtrDGPTvuWpQ+n1tpP8AHNp8l6MjoW0bXW4+FobJyW9pSkrl72MnILxrBNqbBjPNWT5B1dPMX0zN0pq7fWUDzTrowr/A8LA== 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=32B6ngM4WOWVGCyckbuU6wS0iwX4RANJwBQYctQ4B90=; b=FkWZaZ6w6U2EZo15s/48+TE+IKTzw+EQB5+QLBdtp9NVQpscS7wkpNrvW6XboYwMOTwssLr3KKRZHqZAlVZ17+vbb6npCwSViOO0144oJRiKo6tM15tDzIR0czQua5NMOjRMl6+3KJqF3YASLbk8R1Zk1aiOdy8tR8TVl31C2hwx+XmLMR9ZcBEsQcrN4DBj17/lHuiWAn0qS6vJeOO8VMvaVJNkvivUbwbbvb/IZ5Do9vy6f76BVq7QskaMwhSZ7Mtp5Jct/N9ZgQ+w3wUC7MzXdJ/wRtC3DE/7NmFmMO70WenKhQsINn0NmpW4f+U5A/gouTkdvWKovtm8ewRKDg== 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=32B6ngM4WOWVGCyckbuU6wS0iwX4RANJwBQYctQ4B90=; b=iLsM1fGiyeJKgmbJp38WrBR8GzSwFMD1k0KtiLUpF3JE0ALYBESxOyCf/SK5pYL0KGk2UYRtSMMHgsFbJ6lcEDsVCxMFrSAENJwiQvA7xTm/vfUyJgye/YZR7CDhsHWO5JbY+SeoZJAYdbFkb6I/KeljcLThHp4I8O8YBO82lJ0= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:23 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:23 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 11/16] maple_tree: simplify mas_commit_b_node() Date: Tue, 18 Jun 2024 13:47:45 -0700 Message-ID: <20240618204750.79512-12-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR03CA0333.namprd03.prod.outlook.com (2603:10b6:a03:39c::8) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: 8d780ca2-e1a5-438f-3767-08dc8fd7fe5a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?FodfimtBjA/shm972txfBr9YDCU1OxxEJPSib+O1J23b+ZL6S64UyFXjEwjb?= =?us-ascii?Q?tqixiargVqGEd7SE4bcdslkU0MC/6oY9KP3s616FN9kq7W6pra37MfisUfwf?= =?us-ascii?Q?e0guLQQPtI6vW+uhaz4mdZr+eQQZpYiOl+W7iBkPKZWUhQcdR5GHCg1GDwG9?= =?us-ascii?Q?DENap8RlZm5U073zFvLr5rNFDjc6RheymEQpuxXHF+jJ5M4YcLSuY0BNy2R4?= =?us-ascii?Q?46PlhKCiBNO9vsOKVDe1a9y385zMrY+Bt542QCFxV14HBcTQBJHJ7jMtNwFL?= =?us-ascii?Q?AD1qSannM2LlWg8sUVuBcSvGEzyAmso4YLsexcRLUTnTIBthEPNgtUSLay1z?= =?us-ascii?Q?U1t33euUEhaMczuN/guFlqChDcE357w/mVCud4vlM/e6hsaE12NrTFpqtTDD?= =?us-ascii?Q?VhOG4dfkJadvgZ53Ks9kHFaFkSKQ2vHQ0JBf+JXVG1jQlTpckoWOTv//FBgT?= =?us-ascii?Q?0553lRi2WOwCyzAqPCHYiSBHUGza4X5m1639GnVIm7L4f//isOeYMZGU+Ci/?= =?us-ascii?Q?GOb8WzjhbirTcwJzX5HQtsdR9t2sm/6g4YUAvnRbUn8AMCLz5QV/G/icZ54H?= =?us-ascii?Q?ZzHBw6u6eR53WDux3JVqa9APcvi/alBm0nC5uYual9XZkv4j25UIdAkSW8DB?= =?us-ascii?Q?HMEnH3NmLmqk2ogD/yDq7CaLfM4emQIqD6rKA9gTeOSqBpMdIwExAfSy979h?= =?us-ascii?Q?ssnvrMOY0nf/ufLUrx7J0cJiLaSvX3zZzc09WrOLGcxRoHVX8AzlcEbdsJqR?= =?us-ascii?Q?f640GxtOlCnTgpj0lbHHg/W+EXI5ZZN+YieB8mZHgHyUFwBUauCNnDcWbRVA?= =?us-ascii?Q?PbBxT9nEKoOiU1Qk/6vdu9luRZHT1ITBy/APfL2dO2bWSokKQpLbU/fHsxPE?= =?us-ascii?Q?finR3c53PNDfZrwBnFs7AZ1qJqRiXmU2bnBHFYFV5c1W8a0b4pvKiNF/QR9N?= =?us-ascii?Q?nY19sVxxd2X12DeyBB6pMDkuS7jdiLdY9BcgrlbOJgbWJcDIlqBarhUQOt2U?= =?us-ascii?Q?AfXzYTZtKHag+bomT5Xp2rFp82optz2306l/cuLDEmEHAjRSK4ZJb+kZm5a7?= =?us-ascii?Q?rDXQlSYU6Ktg4Nbn6pEL7sDYogiKw2o7IsuCeKDEhtyuVaL0gNW0LsH2fuks?= =?us-ascii?Q?FhzX8UeRO3ivfpG8Bn4JgodwS1Lc8MXQ7FFnpVb0TF5TjXnjCOMKKD/Fl1Ot?= =?us-ascii?Q?RIElCzijm6DHD14yDe4+K2CWNm5zI65oqa2L3P9vmDIcgmEJzD2l0JN3dAhn?= =?us-ascii?Q?KNuKLZxa5v683qCY5pr+g2HtIJHp0yRRmSLheWGbJ2nI+alRQoY3aJE37z/4?= =?us-ascii?Q?WD4=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?gGnp1ivA/oRCOvmsmgdyuqoKHgQuC0ipBWR35DTgWCDNmjsXGuNRVAjZ+Wke?= =?us-ascii?Q?HKYxvmccm8Op9U3HLWuPI9ROwCQTbIsOs2onLoWxOwfflbAVK4xoJPcOtQnq?= =?us-ascii?Q?J8vUFlmJxJVU4midaweQpfOaRvxy1OokihMCJoCXRyO9TTd3DXxIvZ5u9grY?= =?us-ascii?Q?MxzyH2OmtgoUWdASxBvVtAJ3PM1JqEJt/4rGViwTXKYYBxsyeL8aLLSmMCUY?= =?us-ascii?Q?bEqy7vTNikF0F3tTmNnLdB7Yh/FbiW1jn5OMrmtlAkus3Lqk2nQ7j6IKVOPX?= =?us-ascii?Q?nY5kJMwIXP5NXHyf2C9r2jVEImP63O6ypBV0J64zsSoRrALp/QjY0RwSsmXd?= =?us-ascii?Q?exacngm2/GW5mJUNv+11Tr57hSfL0RBtDiF3ncGt8lSqwba2zyi7v5DMlisE?= =?us-ascii?Q?36JobsXsYKkOphQQC80gz1nXEtMX9ehR8yAUBsezQ0hdF4L9P4NF+Pb+Qb1N?= =?us-ascii?Q?8qCsWssFiqB7lx/QtU2vSolRj43i7IdDwV/W8HA37MVmtWCrsY7HD5D5vGzD?= =?us-ascii?Q?kZmPiCR2NkNA4F1N1G4tOd0/iTjwwjEUoTsFK1t0GYRCXO2L5eV6+68eN4lU?= =?us-ascii?Q?wAuglhgKyuU+MctAD2XPlhev6yaVbDuxFzAZmx4Rai2JMkSHRs2rE1n1kLcB?= =?us-ascii?Q?L6aMQw+0fVuADmQLm+OalXlndikTS5q91zA4BMvelCPslb8DrljUfZaXTmaz?= =?us-ascii?Q?90mnh7TPgmbuAl6iE1JYT6vB80w4UJcIoypzofKWRghk+7tmuCOUhmf0Y230?= =?us-ascii?Q?sQd9pjdHAgVthBylc1wzlKcCn9J7fZ+vlQwMCxon1vTKCvudN1ujpBZd5w99?= =?us-ascii?Q?upSKqWNYw5FouEKgxaQ9zSC2t57KikB31lqWZ0bnR59VJSRsUPZnvUhaLU+6?= =?us-ascii?Q?n99XDU46E7RL0xThW0DF2H9pNIqIiRnZi9CzW5ho8sfh9QINNcy5D5Ot3IQm?= =?us-ascii?Q?oJiehN62nt4U9vV1miNWsD3j/FvNGjhhbfULiAwO/j5sKzujkloPnJn2hKYx?= =?us-ascii?Q?H26MeM06cS4apYXfhhqha6j0wOhrsmaL3PJ67y20ilp6MyYXCwdDSA4Moa/f?= =?us-ascii?Q?Is/tY4NYVaUH6tN+xg9TSPE73r0BL6gMUKNwP40oOHx5nNbAL/0hW7DzZJv3?= =?us-ascii?Q?QFv6zx2pdY7VPu38BbIbFXsaV59pkQlsnXvsXSFXbJpb2csDWvn7r80+77z8?= =?us-ascii?Q?cx6Hja9p4jx7bzRuk00FNN+ESsQhTYvknsI2cC08usIyZNsbAArueI7czeu9?= =?us-ascii?Q?jKCU7/v9rwCF1kbOsQZvy2Y6MZom37ZojzZ/UItz0Ef5E/cE7XF2S1dMgSm+?= =?us-ascii?Q?gSZIr9mO0q7vyNtJlH0JJUHME9hcUmsfznbkAvOwTlpHtva2ZlqgKQX0lNXM?= =?us-ascii?Q?+o+uZuARglBVUneJ571BxzZtaIBkMxIU84yod/3ctLfJwtKc5fCK57+8+Qka?= =?us-ascii?Q?wPq0BhsoDy/+0lpRYhffFA1uSTXTzGjQa2K4h79x5jYTOh0FcVOJeB9aJk+p?= =?us-ascii?Q?0HgqrYZOr1t9tDM0YFRqwFUGeqo07mT6QTJ6hrxeFkhObkqxUzFfm6KWBl+e?= =?us-ascii?Q?8uCfIyNC3yMvEB4mPDALAe5rP2+ywaYmHj5SO+KpZrWX6DyoFq/5RdyRnlrR?= =?us-ascii?Q?h8PrK7R9Yq2H3SXH+slw9uQ=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 1T7D5hH6HkupmR9NRzxJA5xvXizBjGh5+juKn2s3U6rfQzsG1W+422WuDh/51v6/xRKN6bvX/YTEn93QDLv1ZajBtuFiU5d8g7/za72jCYN1MT2hb7jnPQxbPIDiPzUn16+JFU7QscR3R0Xa+pvZsshkMNSEreCOaSdykhF7dsD2wI+Fv1EKE6WcQ4L2AWtP7qY3u7P7+pxm/C4IoyLT1Z6XK4h1koxvhSQj42RN/mimrAHqU3Sr9T4LM7Kz1e9Y5NYDSn8NanV48/oduuAhJYUCFR2nPdlw4tyrdC2ryYrglDuGQ2VduRxdf9jfLk7MBDO9MgWIzcX3UPHmNnuwwTdceqEDaBz4RxwKOkb2rnSUZb4Cmba8qOTManU5suN/sSXrGJuG12lHK9ODEcN1ziw3s6ROwkKglqNLrOqhI3QTkeowCOLiupA56bcOa5xcKqNEhls5sB0SPEaALBwbfoG2q2NNMYzwWQa/2R4pPc8XiWWo3UgNcW2V6K2u8vGluu1wgk3auPre8PA8SzM/30/6V8MuQT64gHcclTK8o/2dDjlxRe6TAsNfHQfh3wwWtr9J1BqBochOBBhBoGWbchVbH79bl0OS0R6Hf6jmIvE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8d780ca2-e1a5-438f-3767-08dc8fd7fe5a X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:23.0030 (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: Mf1Db37eQQjn8yB1O81H0UJs5DqyRuMiKmiY0qcT2NapYE+5Dcnz5FWrMjXtPDG76RrGAxKPnExJN5iDviSzL5k15qmSK7TBT09jOKbEekw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: bamwehXJsUT65StQ9w5cyiGGeXUF1A1v X-Proofpoint-GUID: bamwehXJsUT65StQ9w5cyiGGeXUF1A1v Content-Type: text/plain; charset="utf-8" Use mas->store_type to simplify the logic of identifying the type of write. We can also use mas_new_ma_node() instead of mt_mk_node() to remove b_type and clean up the local variables. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index e53f1f398ece..b2062e034f89 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -3431,18 +3431,14 @@ static inline bool mas_reuse_node(struct ma_wr_stat= e *wr_mas, static noinline_for_kasan int mas_commit_b_node(struct ma_wr_state *wr_mas, struct maple_big_node *b_node, unsigned char end) { - struct maple_node *node; - struct maple_enode *old_enode; - unsigned char b_end =3D b_node->b_end; - enum maple_type b_type =3D b_node->type; + unsigned char b_end =3D 0; + struct maple_enode *new_enode; + struct maple_enode *old_enode =3D wr_mas->mas->node; =20 - old_enode =3D wr_mas->mas->node; - if ((b_end < mt_min_slots[b_type]) && - (!mte_is_root(old_enode)) && - (mas_mt_height(wr_mas->mas) > 1)) + if (wr_mas->mas->store_type =3D=3D wr_rebalance) return mas_rebalance(wr_mas->mas, b_node); =20 - if (b_end >=3D mt_slots[b_type]) + if (wr_mas->mas->store_type =3D=3D wr_split_store) return mas_split(wr_mas->mas, b_node); =20 if (mas_reuse_node(wr_mas, b_node, end)) @@ -3452,9 +3448,10 @@ static noinline_for_kasan int mas_commit_b_node(stru= ct ma_wr_state *wr_mas, if (mas_is_err(wr_mas->mas)) return 0; =20 - node =3D mas_pop_node(wr_mas->mas); - node->parent =3D mas_mn(wr_mas->mas)->parent; - wr_mas->mas->node =3D mt_mk_node(node, b_type); + b_end =3D b_node->b_end; + new_enode =3D mas_new_ma_node(wr_mas->mas, b_node); + mte_to_node(new_enode)->parent =3D mte_to_node(old_enode)->parent; + wr_mas->mas->node =3D new_enode; mab_mas_cp(b_node, 0, b_end, wr_mas->mas, false); mas_replace_node(wr_mas->mas, old_enode); reuse_node: --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B6F00178365 for ; Tue, 18 Jun 2024 20:48:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743728; cv=fail; b=YbF6drLyrzWBCzqyXmsGNqGQMJDnZN7u2+nMIfKBuJ6c1Y3YKn9axwlrmYt0OmaO3acRBLLwfEqsGQ6AZsloScJ29nnaO08L5zeRprfQdkur6Fy/mirU+DZfi47lc9WMBYVcqk0/2s4vT1oqOjrAtfrk66KZA2sdqfuGQmtx0X8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743728; c=relaxed/simple; bh=zCbaNvaBmVmJlyd5o5WUXlr5wo97P0c7jmpqQjWVnqE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=e/2k4WgZJMTmcJlSTOVe+CWOU+PKAFYEejpjrFCnZW+lCdGpKxGPfHi6I6AqeYcShAHOxKTNQdYw4UOIwl1viU+NZCR8ZmiRzRCZctV0gDSJ6yOBbzCOCdIUHEmejITwOT07X56NkbBVvk7F4+ZpSXhgUs3CHxeWHjz+pnxEMgs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=opwmJ/mN; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=GYwFZZmr; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="opwmJ/mN"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="GYwFZZmr" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUkgb029421; Tue, 18 Jun 2024 20:48:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=+7Q97s4qRY3TtX0Im3NHWdCMkhGqb6Gnlnqsc/XlV58=; b= opwmJ/mNWTXe9s6j3D8XjU9gfHRQmVg+Oj/xf6xlyWTJNwmNuPmMn5Mz/xKZMEB/ DZqZf7lFoMyrVSpVtGmHNtpCMTO8fNUBvTGII6DD5FxInUv/VaXFpIMG6j3oJyXJ qGWoE9XawfO6e2cY2JPp6O3lSriqArpc3QOa863bMixOHj/HWbnnYMkObTLdjBVb 8DyAnB4vcZ6V0ogm8qUB3EituBkYzKyXlTjpRm0sto50TZ9q895gkCIb5Xr1kV5E MF7uQ1+8PlQv7nQYfZVp8ZjoDm6vGObK6JCwl/BjqvqqtLKqIp32PqSVCMfmAong ETpvNZLELifWxoUbCKBgpQ== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys2js5tnx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIT034656; Tue, 18 Jun 2024 20:48:33 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-6 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NpNH5RdnRp88SV4ZUBvxXeA2b5tFa5byx8qX0GDbDMuxNDqtq5ojRXwe/FV6hLnOiC8h3OLIc4eHsBiIICNm3xmDCOJUKhssVxsaxrZeu6nrOrONCMtpAs5+xu6X2EKPGXeLe5V+KtbAvYtUUlvVKHrUhCEis2IyJqAMNfgyISIRn3Lj4eDMvc0DSt6D5BMAUfxKnRiLUJoiTBrSBZaicePAJN2I0twYcN6uoD3q80NyqBfAlcF5gUpDTTepHNiq9vzU/szC63biSb6d119XKMN+QGqsGe+NPzJWwWUsEoaq83R4L/fSg8xql0ZXXuy1LsI5Bo/74oUdO3k+dDV+BQ== 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=+7Q97s4qRY3TtX0Im3NHWdCMkhGqb6Gnlnqsc/XlV58=; b=GENVcuvL+zhYWOJdsmsVTjQql/LgZ7fc+ZSQD69VY1exblXsSP5QssQlyt6BYhccBPb4qb/9RwTiDen/vK6PUxdz7Ui/CTi7VVK744TubhqGdRItpoihPCdfIRfDAfNk5RR2VBW0VO0TrTVsc7f+oy6FKlhI+WN6x0AhLBg5RWExAX6QQ//gXx6RYgdElBUghAYA1fB7/77Fj9Cmx58F5aS1tFdjhXG/O92GmKPTpCDKOCTD0wTngJ/3vxWSve69b1NH+f/wqSBpR1g/m5X4XBj7byhV4jnVxQ+VesEsOuiMYH1ICo3EULgyXxNQDIs0FPQtE3qnXvALkeFyRSsnvw== 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=+7Q97s4qRY3TtX0Im3NHWdCMkhGqb6Gnlnqsc/XlV58=; b=GYwFZZmrvNnAsGmFtOszJqW2/+Mqr+fh1cWOoCmOLfCs6bb2cjS6ZAPxsBQY/SF23rgSSd5AMvrTjoImYne7IpHWRsI+X9tHOK8KqVnXaXEYd8WNgRp1JDBpoRPmB0/c1r4K6D/sohnj0cAz5XTIkLf6bG123fAfXsfoY4Xs3JU= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:25 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:25 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 12/16] maple_tree: remove mas_wr_modify() Date: Tue, 18 Jun 2024 13:47:46 -0700 Message-ID: <20240618204750.79512-13-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR04CA0022.namprd04.prod.outlook.com (2603:10b6:a03:40::35) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: dd3ae489-917c-4026-ffb4-08dc8fd7ffba X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?TQTP7I1oyLVCC5JVedKXu4MPKqKRL8NvoRvdcMQ0EpzXzUxGuU9IvDH8Q0qn?= =?us-ascii?Q?b2CupDznOnHdDZkak8EShdfYWxaBRv/KgOWG4QXNRYoVEgGJGkL5zQ9P6htT?= =?us-ascii?Q?7C7YdzIztG9MJ36uNewUPuIB8Z0/NB+3J0nJTewuHU3VJPKdNgJcTbnCU7rB?= =?us-ascii?Q?OfeZr+su7vS3FEvHbnQprCs6mlQSb/rQpZ+W8BEbyu415fO9zcBSk4D7ku9c?= =?us-ascii?Q?ATIUVxVjP4hxvwqtgALJomrjViZdfiDE/WFxcEa0s10Z9oI7twAVncMPbuiW?= =?us-ascii?Q?8iUZ2PaihzvtedJva+gDatOUDwdnfc6xZYCJOVOTJ6whQdBSkT8RMmTAwQWH?= =?us-ascii?Q?5l1yzM/uGmwu3kRfMki5UcqEx+2kDaJwA5xS/QUox+Y+egVY6c3BUhk1tevG?= =?us-ascii?Q?KFdtN4EI+/HTuWnVe2if8xxIfsYOJwA57kzDEejN2nvDLnGa50Gg4BI5tRQj?= =?us-ascii?Q?/KLJWu4FuFiwPgFJf1Dfxxq+fSbMvPPJCzxsWcKXPtyViE79M0iZO0C78mfC?= =?us-ascii?Q?O1RuYFa5kgjV8cpUdjSmInXgaRcLkKtuBzTTMKUPkpNPxl1aIXqQPbSniOXP?= =?us-ascii?Q?+RmtAB4ZXqAXJhNBWrVzIe9XFjeH0Co4ojr7HCut1Hdj8uefJUhoTpZbeGGx?= =?us-ascii?Q?HJtwtmiiIgPPdVqmvBrAF5WwTDx2qEM0MyK0szwF36epFEqbt/yVMvcV8d2w?= =?us-ascii?Q?1kXXHM3GZ7VTQ0Ade+2x1nN/dMj8ptsfABYC2TtJBp+pujsIVj+pyfMwtuWF?= =?us-ascii?Q?YExhL4YYTQxesUoknKDcZa02R+uyG7LOcIxpUJ6WCnV9v5MgoczJUWoO3N7O?= =?us-ascii?Q?NFInzosFlt83r+27xXqJ7X2Rj1P34FcU/+AklN/A+OYKLw0PDeGBX14i6p1j?= =?us-ascii?Q?emPPCapRdmIKGPIurSwa3tQOL8DvzUzEs2WUTmPDbsQgp6zFMnCI2v5LcD5U?= =?us-ascii?Q?9j0BaLyhmja3R/vzu+Nsea5y8+WzPzhV+eHq+vykShaOWr87CeWnVLyIp/2m?= =?us-ascii?Q?4jc4liQA6InoQ4o52jFIOGVtaV7/QfLN5lH9J7LxwBO2WMhrgdLeNLR3ZXsN?= =?us-ascii?Q?caRjjk2cOVt5WCFcnlymuZ5n9HQYciES1H31QZlZhCQRCpNLncG1EC4M7w44?= =?us-ascii?Q?P4Vv7HljB1bBbzjtz1NTuyRFn0xE5WIIsYZ29DB6qsGcwZ97aHlGxrwywNoA?= =?us-ascii?Q?gHGczzTtY5N1hhUNHbpWPI1uj/Me+ptZW6wi3KYM/NG/VYlqynSOTJMMAVgt?= =?us-ascii?Q?veEQ4v3IUOpHNsfS5VZ5vtvIuCZZa9Pfeaz83P6jZXOKMmcKUCzN1RhtwC6h?= =?us-ascii?Q?zGg=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?1pAjqSFGFwhtkGxoVT0a43ZRLrW38uDJyR/AJdQiaoQVuPaWD71ILDALpoQL?= =?us-ascii?Q?bX7L3iIDhmKEB79XzDDKW2O2HQXsChAo5X1IFB0drFmwZg42gHFMHcQr9963?= =?us-ascii?Q?4MBBeHjP3OZE8Jyyf+43QVNVHr8ICqPW+JghpLO3Aq2OJVtQutqIHN/uwVy6?= =?us-ascii?Q?7Z7I46tk1ZJi/AxaPIDl4ERcVdJgtrULKuTZq79bRkAlMTrSgEACRjnPbp1n?= =?us-ascii?Q?vPcEstCnf+jya9Km8zFdE6u5itmT4xhSJOfvQmir7QX2p7btJiAX8ZmdVT/z?= =?us-ascii?Q?HfyaXzbeoQF2KjAPoq7bz1Pm+ABmM1NQvAQIGBduAjEnYtQHfBmlMantHJR7?= =?us-ascii?Q?ptzJSjnYS6zCGlC8vY4dPQvsB/qA3F7aTk1zOUzGMWr6aazqw8Hg28T+ITCq?= =?us-ascii?Q?irQe/H5cRrGotrzXL5efcFmS/JV8ti0nmScU6r1tvxlVjyuPIhf81X3eIXNM?= =?us-ascii?Q?EuDPCafWoEavfwOPfixTlAEa93I8JfqrtR9Iaax7E44yj+pDBrdBv7H7wW6Y?= =?us-ascii?Q?zJ345tqoYO36zvSxdw2jrF8gjK0wIehQXf1D6MO6yzVDcN4KUm0O5tfo/pwX?= =?us-ascii?Q?LeFLtaHusjc72JKmCGbzq9nYEHdvcEC+lkfVKUQIBx1agdiDfnzGRxv4fxG+?= =?us-ascii?Q?eFEk4D1opEbnpAuMjyDGxWPYM5IEjHPFXOtQ57VuYSIFFqQmsO65WjtVdVO7?= =?us-ascii?Q?LD4lv76QRSvru03Ef65BcOCktJb+ucYDWBvTGik4rwLPohBoMsluM4iDQ9Gg?= =?us-ascii?Q?yMLwf97voO5mWJFupNKjETxpDr2cmO5gjbzt2OWNXSIkPY1/d3IZxjuy7caL?= =?us-ascii?Q?NBhgvoj5HTJIeHaq1Xg5A0/Cyv6CdPA9CKcTfSYdPXfggENqTmmphsJyVmep?= =?us-ascii?Q?dsL8QVcICqaUQHag9Tg1tZ5HppjZbg/tiYNgBmY2G0u2PwwB2gA0gMBG0GTH?= =?us-ascii?Q?DXcDOMe36cy8WWALf22ljy90t51zT+uxVWC8T+aGe9F+ObUUOq2XQX/Ik4Ac?= =?us-ascii?Q?8yNjNjpdUbRJMWHFiQD14Ry2INTeN6lDmSuobc3FtsE6C1YxMupqt6dUn3ly?= =?us-ascii?Q?C6WO3/EQmTmuxaOUXh3dt2CeCk18+VLUaDuX/WqhHeb3pRvU+QeiwjLKfYIl?= =?us-ascii?Q?OeiZY9wGO6xgUJQqA5QNgsfe4bLlI0vLZngLaKoqYUU+RSmbf/e9LMkN+W/H?= =?us-ascii?Q?+CCMy0qFX0MimEePRHbo+ABzmmkVLyq9t4VTmxQ5dLKfRWPTiPavK9sfpcK9?= =?us-ascii?Q?e/me+7m+gzqoDWkh77KLvn8Ws5VNw8jvvBzd7dr2mLy6mavU45Cp3KeJG0dg?= =?us-ascii?Q?ZuFXbkDlkMmAVrQsUPSuSVDdB3ymV0DCUu1/AbzHv14AGDlOZWInOWZygmiJ?= =?us-ascii?Q?ui6pHhxiPPvhqF/YHF+A0A19IaGa3nmQ2EIUcAfr5uPu+pNSYi1sJ6A1Y5ug?= =?us-ascii?Q?d5zYs7K7LjHI+iMku8GSPV/v9os+Eirf3fqcDxpsssNK8UyytlI2LwDZuNqm?= =?us-ascii?Q?N2K1cPWYzFEUs614/5e+9AwpHWdQDyi9r+TcTUXuAWO3xw2xkuyE1xWyeah1?= =?us-ascii?Q?suV6kMTm/RQEAjlA4ze36UsLuzG2sMsUVhdWCo8SLXKrUCJbBu1TuRryM6tp?= =?us-ascii?Q?85hEzBIsfwYgfc3ulZG3lVI=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: xL9KqQPuPiZTTaUC2AAKrjtfTnXWetyI9FO7Rc8z9L4G9VEL4GzgrDG6N96w2lxgO0N7k0JHVtBXYmmRAWlygA8L15dMzPd/nIF6d7eTJ5yP/Cv3DpUk3SeDXaGmalQC42xxvBOh5+atf4/0F7rS+PL721pSzPTgNMqZgIXbffLhmpG+Kjcfvyn8D68EWipS9j9ETEpm0vuEtFempLuXl2EKCteK41264XVBeclWVa6Qv0fJq3ocELkCXuIYt4FoZDAAA3iZDAfpknaQ9PawXZ49bAONIM8YGfxt/Ure2rNxkpsszaJMjVDnVC4M9yZK2zTjZXamsKzb0D9wLMZDgh+7QnqbslDTko6D6sBq1TykAK7M8ygec2evZxli5oxl8LnAeYEMIP9BAPAGxFE2d3Ck6BM3RVaCT4q7P0l/77M74tuYcYXWmFWYyHLiiNk+/AEE8FG/t+IWs/qs8LCsdqgCzUjCzQ4SPz3a3vFQeSl6EqozzeOVH8Uo9Urnbt6M7r3bg6W+AJsdsmrycS6vn0h8UVBrnlgDVZ1PLvQUw/CAa3pg/zvsthNpUg71CKsUQ9PKMfy0HxQuU0X+EZ+SU8k/aRTQNq6MYQMVbvCU2hc= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: dd3ae489-917c-4026-ffb4-08dc8fd7ffba X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:25.2591 (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: 433mKzRK86Ervj+OT4INQrr2XEvgTZq7/1oUJkug2eV27iltZ3hDyDoE7vfdz9LXZzXsORxDvtHy9Pvysbrg6jvvFO6FyFT1FcgqxOAhCYY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: sVJTecTe5WnNxmJPMsQ8mhMJWQ2MqGcQ X-Proofpoint-GUID: sVJTecTe5WnNxmJPMsQ8mhMJWQ2MqGcQ Content-Type: text/plain; charset="utf-8" There are no more users of the function, safely remove it. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 38 -------------------------------------- 1 file changed, 38 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index b2062e034f89..98c64aaedb55 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4155,44 +4155,6 @@ static void mas_wr_bnode(struct ma_wr_state *wr_mas) mas_commit_b_node(wr_mas, &b_node, wr_mas->mas->end); } =20 -static inline void mas_wr_modify(struct ma_wr_state *wr_mas) -{ - struct ma_state *mas =3D wr_mas->mas; - unsigned char new_end; - - /* Direct replacement */ - if (wr_mas->r_min =3D=3D mas->index && wr_mas->r_max =3D=3D mas->last) { - rcu_assign_pointer(wr_mas->slots[mas->offset], wr_mas->entry); - if (!!wr_mas->entry ^ !!wr_mas->content) - mas_update_gap(mas); - return; - } - - /* - * new_end exceeds the size of the maple node and cannot enter the fast - * path. - */ - new_end =3D mas_wr_new_end(wr_mas); - if (new_end >=3D mt_slots[wr_mas->type]) - goto slow_path; - - /* Attempt to append */ - if (mas_wr_append(wr_mas, new_end)) - return; - - if (new_end =3D=3D mas->end && mas_wr_slot_store(wr_mas)) - return; - - if (mas_wr_node_store(wr_mas, new_end)) - return; - - if (mas_is_err(mas)) - return; - -slow_path: - mas_wr_bnode(wr_mas); -} - /* * mas_wr_store_entry() - Internal call to store a value * @mas: The maple state --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6155317A93F for ; Tue, 18 Jun 2024 20:48:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743731; cv=fail; b=FUW0Dc8y3uUQzqw1dYS1WrR3Ea/TojrkVWqVA06t51JXgZ18H0ePK7WD3jim6+MIThkkRIf3dqEhhXrdAOTUmxeajI/aKpRlBeCyUgLaBdQGuMBvg8XEOPsq1cjPSsjWoHPUi3RM4vb40c7oYwFBxFUbErI8xc/VVrNfqMnBnI0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743731; c=relaxed/simple; bh=bP2qc4Wwgdvj0sOA5xZY/D+BmNR03ipFgS0k0L+jYTQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=rm89ejtc2yEOck73QpH2uKSjVb9zcix0HPvptAWGOPkGHO4sW2hldFOa9fi3ma9sPEsZTIh7erOgWLLXyoQGa7teePPPrNs5KdBN7Xldk680dW7ZNQ8HDaAxa2wHoUwk4rxeRevOiR+UR6A7FeJRiQTBpCkpISNj9rGNiiL+pts= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=o0CPx6Xl; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=pHllqfjW; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="o0CPx6Xl"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="pHllqfjW" Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUo5Q001568; Tue, 18 Jun 2024 20:48:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=ufcKmhI0a06m227Amm2QLiJQHiBuHSuMUYBepJaIpeI=; b= o0CPx6XlsYCtt165HO3NV5VBX7kL4yRTALa/lUrg0RDAUznPgUW9E6E2xJ2L2loC YOl6sxsA9wrE8DqNTg+AhbZu6KBKyNhtlvx8aOr2qnRf4Z6jyWhPQYwUN3segl4C az6U35pTRpIGG47Mh6Me2VcrjBwRkFXJlEO+yaqz0kt2ZgkK2pB7B8kUgrm0zjoI GUxirLKfv5b1XI8A0GwprvBx7ZF5GBLIEqeCXCQ6cT4mgMUjVXBu+7ZvoycrrYRl sHxlP4XjpSJIzIg3EXa1bclEOjtgTWpf3y218XQzQsn7eFQI2+HoLHZ6Zm4HGkNV bEyqvBC/F0dryt+YFIUHnw== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys3gsnw8v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:35 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIW034656; Tue, 18 Jun 2024 20:48:34 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-9 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nSU5upelj8Efh6gkvY4EgGvOIZw059UtCaLLChX4FCgx2Q3PMYRzqpZiLRrAR121uVYAaheKGSLTifJdtR9JQJFjdui5gQBdmxmYENAs99DIcSHLEw43YqHt5pruTRZIBEk0QoLZe37VpgJVYV1Zk+2lGwlR1+ryUYltUL2BPBmVJTwJbJXLy9GdMBC+UOPZByYjpLb0k/Eu1068t1CO3PXbVUotvDyKiVmrlmLRHWWlCmcIG6OClpxvhieA9BPMEjwgG+0jKYixdQ8lLowjEx6DT4oyEcefnLh268U3WUf16Q0WQLmUr1XhX3BNwREHOx2mPoqQG7tJlvti3J24OA== 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=ufcKmhI0a06m227Amm2QLiJQHiBuHSuMUYBepJaIpeI=; b=OYmu4WhWM4OWmEqnXvQoQ0+iSyQr3/Lr5p6eCYVUwjCAaw79mVVUL4goAKnmYutSqVEk5dhixQd6SYg9BIUFu4DXTB2mzXSWGCpA8iINvfhrx/kYdj9PBafISepnZ4oPkRhMRMp2ElZe5C8D0HzNjmu20bFqm6VKjeIfsZCEellPaycy0S6dgOsfgbAfFczXeOsf5t7HT/ZPHk/hP6PKYYYYOLqn8ZK9d1mYBpe0PlQf/UfK4YdJERyYhpOjLNn/hmI/btX59qn7de6zTf6oCX5xPn/G9oxv2xCeLsFxLWh8eyYBGUr6qsfuQ9lTZr4EdtBd2o4AEJPWpDGSsmI/fQ== 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=ufcKmhI0a06m227Amm2QLiJQHiBuHSuMUYBepJaIpeI=; b=pHllqfjWOpEyOhQdvdQGI/TOC+oJqi+gU2eG9gxRnsTM7z4zPYzXSXSkqynsLlspDuTEcOe1sfrAJdoY440CNWKlUd8HmldZQVrIOefANJQmTS9rzUfWk/FGsygxGZY4jWHTemrRWl3SvPSSZXd5oRBCwz76AM7YE2WZMXrg+JE= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:27 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:27 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 13/16] maple_tree: have mas_store() allocate nodes if needed Date: Tue, 18 Jun 2024 13:47:47 -0700 Message-ID: <20240618204750.79512-14-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR04CA0030.namprd04.prod.outlook.com (2603:10b6:a03:40::43) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: 7409078f-5286-4708-7270-08dc8fd800f2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?T43cBfcq/9chhrXLe1LWXzj0cvE9GJxWyo+5JBvbuezbUoHa+bC6vM1rhH4P?= =?us-ascii?Q?RF1LDKAa56ivmi22y7Jr3zVYDh3C7GDoAMOim3O5kbt/dZ2uAuSflGK8LstV?= =?us-ascii?Q?R6RqAaxWKSOi0iVhQMLB88rVgBxyQ9nu3DL1/IuUfm14mk6gqXAnlm4excvp?= =?us-ascii?Q?3HgD5y2FbxfO7c3IoFyHryV+LSsAS5NmS+aTzfEqRpryyVwEjjGYxckWWiBx?= =?us-ascii?Q?brfXPnlGOh1lp0cE0sgeZg4egzBjPJQ5ENVd366bHWUaQmup4s0jBAt8a5BJ?= =?us-ascii?Q?oNry2HiS+bl+PcK22Uer6ceSXmq1K9esogF3TCUIyZfPrBOdl0YXkSbDwOrj?= =?us-ascii?Q?C1fzacL9cq/xvX3CYBoOysGUi3d5TUqjF5JsjKjIZorfWFV+kBH4+SUuqp+4?= =?us-ascii?Q?GAzVAr4ubDsiRzcWvk1JWOimqM04hskN17wXtJK+v8o9DGkMlQLMuBihS/XN?= =?us-ascii?Q?z34/tRujNZhP7VKaI6OU2vA9aE2Ps8eLdLCG+GZ6nkvf4i6BOQsK3N6EKWyy?= =?us-ascii?Q?tqcLpsqUJRaBTClRHzOGcri1wj5BtV88VucGec84NyiqslykGmDASwBfBgwE?= =?us-ascii?Q?RFE3KtfCh7UjOh6BrN+a8QeRoZelkTu4ipRM0xtvEF7Y8w5ipIc55hw9BndM?= =?us-ascii?Q?48G5mAVRS0DhU3eG3KLan1bKmAue5jP6GD2tiMMktLj7loKMwastSe45tmsV?= =?us-ascii?Q?UAqEgYLcROZfQxb6LbPTQgfUmlOgsHfVmpPCArH+cTi5mkH18QcL6ZOSWIva?= =?us-ascii?Q?efkwXXR3XEkwDWilpQyLf4ejL1vkpdgt94+npD+mCmd2O88FluF0HP8ETeNM?= =?us-ascii?Q?ExgtjQqL+unv7LOoTCFAAp6KG51IRFVJYr/N6lBt7in/5GdO18E1R873QUC2?= =?us-ascii?Q?NNNT5R//p5R7Hi20cIHakY4D6DSJyMvVZV2WsJLR0Ow+2XBfpRt6OlZaXRW0?= =?us-ascii?Q?0aPlV552+Wx5ggKVTxULolHa16k83zXaCeE4nnouMpMaXP8JXUcIKHQ7h8hZ?= =?us-ascii?Q?VrYi5E43q7sHzgJA3Zllg7vuH0ge8qXH3oaP34Ql3jE27P6fmn6Y3f6A4Wuq?= =?us-ascii?Q?s1UVJQTfvU4LrKVS81fFr1N11psodDiSvKtorBhOtG2opoWhehke7tAeRW7x?= =?us-ascii?Q?fZVWS38K5eDCs8mwEuhiSRElBiK3x0slFfM+Sv3N+x9xdXdQL98KjNP0hqXO?= =?us-ascii?Q?ZiqxtxU8Gjso6fJzqakWazJUMylV3sKpaNlLrcACM7RSaLadQO1+uwy+d0fi?= =?us-ascii?Q?KGcllH5eMSpG/u0OANlBPL+eZk1hZJ2XBegIQT3F/BFbR6vogyu4fTDQUVeh?= =?us-ascii?Q?5n8=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?5p696o8GXnaf9WuoQrkak7tX6Om1J99d0kahf1DuhttDuBcfFDI7OI+jqAC7?= =?us-ascii?Q?SYedihekJOjmg+jfua+ZrOEoYmFbOD8+uHZBbJoizLPEisyhY9tdfLn8dkIl?= =?us-ascii?Q?ww/9UVTz59saAONDWjzIFgfPkY+YCxc/e0rEW4IPHgKgi8x6sm4/4FN9x7Me?= =?us-ascii?Q?KV7yq3OBnLpCEjrVmFSuWfL32ywtzURM6NgMLet2k0MHlpeY2iAAcfJ43RCw?= =?us-ascii?Q?q5AOBkTmKd0Paf88qPT+gZK5MoilZoFjjo6CqiBG3C8bjgmmjATktEG+s7Ta?= =?us-ascii?Q?7iGGcwP+xYAey2yowOGpET8im07c7NV59HRu5JIhTg8bXhEFJEJlEpqxwby5?= =?us-ascii?Q?WkPUuER92NsPb9pQUWZrkFb9Im5BBQehF2wq6dGYTKNKB8ypLCS3+6cK6PVk?= =?us-ascii?Q?WynUmvS5PkTLIX+J4LDBIA6Kr0xcuqvYoNTnJAjcv+3MFz7kFZkYhM9FNVBc?= =?us-ascii?Q?4HOT6mWAUGmpH0bXsNTy5KIl4wtep3fF+SA9wyW9rvibDUkrGq95jz/QOhdh?= =?us-ascii?Q?lpyUfJsh8tSbzxFixqUy9M+7dd2/trydSNhDQck3oK/ECCfUE10kANNda764?= =?us-ascii?Q?ionDgzkPrTszpUxUpXfO+y5E22qJ4mhR+xoOtrcDhO5kMgJUmCPJytfzkL7O?= =?us-ascii?Q?sxuNnyqJSqxRlMyRlDrkgMQgHY9o8UwmN8zitCGr4bdP0Pp22OVuBtZAgxfJ?= =?us-ascii?Q?fyJ2os/JtsyZOdXRi2QaoYljXKCRYD67/G2qeQZCbsUPipr59J/tY4OEtvPU?= =?us-ascii?Q?H16eulqgDQRi57HZeCweLPPurd58/mpkvQPiIkPQs34KfOE8TnqTTqSlytv+?= =?us-ascii?Q?JpmBo+hXs27epZDIpWtbg0QJNtc7cTjsodE1iM9Slu/aZ9JL9g8wcPxqzMx6?= =?us-ascii?Q?mliapIM2F5udKIPLiDWZIBX6sPkE6t2d9HIIjvzn9ijXT+qbwTgoIAJvH/rS?= =?us-ascii?Q?4tY3LyGiUqBrkDpQ7O1SqS+lZHAAKjHXOkpP0pJXRzYg2N01/EMxKZZnwDsR?= =?us-ascii?Q?xAPaJT9JsSkCs0uoi+H57RRA1pjTp02hdJgb8h36wpmB3lweabhp2952C6m5?= =?us-ascii?Q?N6uUodIbHgq0C/3pJ8B9nCpQEZOHTrVWZruooTFpZG1NIMkV3eeHTeUcWIIZ?= =?us-ascii?Q?6xRwHVwKGypEDnjN6+s8rAKohw9PydgCgaaWRosu9Kw00GjPscyRUQByQCfF?= =?us-ascii?Q?XPD3iqy0w+DHLUoXKqjsDPzSQ/Bv0aj00WDFcshVnD2+ct+364/m53fWTl7c?= =?us-ascii?Q?dJYYyE4AWDLRkF0cod5H8ziHS6E068RSh2IrtorvR3UBcKBM8FJ2OXdq2MhJ?= =?us-ascii?Q?vCSaQZ3+EQZ6LUZufKMJDmKayVqTvZp2W3iw6nPOf7/eQXm+MftiiyQyuBUG?= =?us-ascii?Q?Ui1nyEUgZivh/Z03A6VrNgaG1p3YYlNGtFWt1YHviMsr9I+JSFBjOAYt+1mI?= =?us-ascii?Q?XiRsYml+gxEYuNC2qZHelRAMbG8gF8lJAEjThnv0vP6+aXXAPLPEEq2NLkBm?= =?us-ascii?Q?BudBsaTYVPXijqJ0CE2XkPyEZmdfJJzhzSKpcLT10SFElPmE6y0sKXDYEK5E?= =?us-ascii?Q?iucz4QRlO0pMvD9F1JI+2h1v4yoUNTEDgPWvq7t9gSHM/baxloCFtHWKccuD?= =?us-ascii?Q?O4Vnh6DAmFCnXTXMHwcFq2U=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: UjTfgKRNNHr4ItMgRg1icyaOv+gMetpcy4bLY2Ybn/fkBC1Z5AGO9BT8JMUplMbzg1m8XvBdNiZo0cVJhP4skK8oM9RFqmKBpwkgdSnMaDK6podiaS5+4rSm/m3NTLFFnyZe1HqKfAz0o4PyCG3hZnj4GWLxTeZiqtOyunxjroGFdWYmfyQ7UisgLRFtUfelfQpqrCb3jdkBY2V/hbWvIyjEU2KtKwYBpTSJteyEq/Zl+bUVgnTyuucyCd/kX2Kg3DM1tlJi1AiGr5K3gqUOlvY8DK4W/2nfvd6kLhTtkDGsCkDzS2I4r6io7RwA7m17HeEGhKxMf+z1j1gFvi4Pu/WxsCjRnKan+jxomrT4GMMpHg7YvZVz9Nn1glG/NPeppGRaZhQiAuZ8Ayzf25K7JiD2Ykqh7SB4CrKzdYBErV2kCbmDC7G0yvQs9ac4r41lcgYmOG3fFRvaLBV8r+YP6TD2+rbsaIcyUfbUccPGOaSbZCrQ0DMNniafVZIkkldILI1beKSruTmEtjJxcaj3u3NjDVZ/2pH1Sd64gOLT8yKhvMevaktjPeLodnMD0zLQ5IzoKNZCP2rGeMSrXrGoPpk/DvcN6fhjCPq5Bn9QSwQ= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7409078f-5286-4708-7270-08dc8fd800f2 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:27.3171 (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: 58uE0oZzb83TiW2KbfbwLFySnLq/Xy5D/K902PNLOq0cy2+6ijAagLVMbFzOd9sjLTpESFAwGmFpFsP/K+aORhcbe8olABYKlLzY6TdInjw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: IKVFcOnYnJ8T9Mn0Wo5s0oRaKcuoK8Kw X-Proofpoint-GUID: IKVFcOnYnJ8T9Mn0Wo5s0oRaKcuoK8Kw Content-Type: text/plain; charset="utf-8" Not all users of mas_store() enter with nodes already preallocated. Check for the MA_STATE_PREALLOC flag to decide whether to preallocate nodes within mas_store() rather than relying on future write helper functions to perform the allocations. This allows the write helper functions to be simplified as they do not have to do checks to make sure there are enough allocated nodes to perform the write. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 98c64aaedb55..46bdc4ce6662 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5536,13 +5536,12 @@ static inline void mte_destroy_walk(struct maple_en= ode *enode, * @entry: The entry to store. * * The @mas->index and @mas->last is used to set the range for the @entry. - * Note: The @mas should have pre-allocated entries to ensure there is mem= ory to - * store the entry. Please see mas_expected_entries()/mas_destroy() for m= ore details. * * Return: the first entry between mas->index and mas->last or %NULL. */ void *mas_store(struct ma_state *mas, void *entry) { + int request; MA_WR_STATE(wr_mas, mas, entry); =20 trace_ma_write(__func__, mas, 0, entry); @@ -5565,7 +5564,24 @@ void *mas_store(struct ma_state *mas, void *entry) */ mas_wr_prealloc_setup(&wr_mas); mas_wr_store_type(&wr_mas); + WARN_ON_ONCE(mas->store_type =3D=3D wr_invalid); + if (mas->mas_flags & MA_STATE_PREALLOC) { + mas_wr_store_entry(&wr_mas); + MAS_WR_BUG_ON(&wr_mas, mas_is_err(mas)); + return wr_mas.content; + } + + request =3D mas_prealloc_calc(mas, entry); + if (!request) + goto store; + + mas_node_count(mas, request); + if (mas_is_err(mas)) + return NULL; + +store: mas_wr_store_entry(&wr_mas); + mas_destroy(mas); return wr_mas.content; } EXPORT_SYMBOL_GPL(mas_store); --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B4BA7176FBE for ; Tue, 18 Jun 2024 20:48:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743725; cv=fail; b=N/p172ARY+B2pQeyiPKiHcRp+2cHvjMKcPvAcAzg4/zuZgM6dYEDw8RX0Cj3DzIt+IMK9vl9Xr1jDOkp7iMMqxdy0Nyi6MYgBQ1+zDpEskA9mz/0xj2F+97w5Og/5a3+OgmzAMQc8iSl3egfMNa63IN9ToQal2QIgvdLrwg0NWs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743725; c=relaxed/simple; bh=OSpY1Yj6DpzyDLPUgfkJBOLS5OkEEvnc8KhI0wqSPGY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=XNZldP8kew2O27XTug7meN9fWyr2NFHCYCS56fjhEyKFGTHZg+ecMjUGzx/ppcbjpD3SrOxGN8Joy2jYvcyl88aonuFp3slDm0Mh1PzyAcooYqTCaUE9+miVezcXT88bUq+neN/YNGrsFTKhlKfUhvkeDkUT9AEk5CcXvQXD6ZY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=Q9dULSPy; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=oaHEhFF+; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="Q9dULSPy"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="oaHEhFF+" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUuo7029804; Tue, 18 Jun 2024 20:48:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=TtkocouQTFTPgXp+1BjOXz5ILXZUoo9Pc8T1JgZ0Wmg=; b= Q9dULSPyjHAbH2EuB2O3txrwJy/Qq+in7gxCpsKfORLDZ1UrTlsrx4hIl/RWnEWg EovbaM8OpxvmBvwEacoMXEcF1Hc9F2DaMfsstkXv/YaxSpFyFGyMgzDOKVccR91x xtJi39PZflVE25l9TMLpOQyksjdxHDHs77FemtcewK3C1/tnQhi6qr0xdmyxTJNK C5U/rlLtApRPqTGoIL5AYGF84qSk5pQB74dBskNVdCq4iMeNgP5Fp3ifeDEuaBps Nki06ucLQ1zQgYnYCfFo7m/uHcWjjF+0fmKAix/kDggMBvWuNxOypsu5n3clxY6J 7BgDpl1QHJq/mPtDIGwXAA== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys2js5tp3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:34 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIU034656; Tue, 18 Jun 2024 20:48:33 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-7 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SN2mSWXCvnpFjtivEU1sMb1sorJRDsKZj1Z/eA84lvtes9o2sSpzSdVkYZYV07/q13xxvvZpSkbilskLdGXqXTcbmmPym8h8GaCm7XgbQvNIFdsD4ZinXrWTIuXukhDtILDrPf5F7xUWdWQBmmDfGb0GeuyLOwXn89V8va9SKFpr2ev+5R+mRbzrpFv4kW41NtyGBj7lT4FEPnL9/WsmACBw9PsoDSsiOxn4Bg75aAdSqFOyxuXyNiJmiFNCBvKKcX82pAuTIz+k/LoOKnDYLpOy2FttRkHAPnzAmBGsBXCrCiPZUermm5b8vsm2UxAH6cqtqAxmbuZVkoE9c6w+Jw== 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=TtkocouQTFTPgXp+1BjOXz5ILXZUoo9Pc8T1JgZ0Wmg=; b=Qbwrq28+9bifv4Wvao7GtBp1qQLXDjkAbHCLIUDpxQ6yFYDi3aOrmKkQM3CKSOn/HzOBPPFi9CWUfvyWbqkUnYRdtZ8WRlIvP1A6KM1E6K9s6lRORLj3Mac40lYmK3G0vSic9BWmXvqwtPp7uKADP0jw9ntyU6vMYK2Yh2D5e2z2WwhcWixXWj8L4qYAKaFD/xU8yAOXDpOlKAshcvQzpaouYtE1PhZqj8/b8qqJ/XiI7Wa0vPEwlvuccwpa8YNshSAJ45gF7aHUMLuVnAlpIQbftgFaWIigwXu/5EujvIn7kC8nLmOr/RlJYILyUfpCkrAcGBzB5wBp6s6x3GXzdQ== 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=TtkocouQTFTPgXp+1BjOXz5ILXZUoo9Pc8T1JgZ0Wmg=; b=oaHEhFF+wOOJNgdGw38X/2C5xSHUAUHXqHprQ61RhaaFLJaOfnpqtsszg3RLz+RzNOYLe+ONUIsjvQjAdJDYKSDI5sga6quePEoi6nogCiU8PIaNqw4HISvoU+ouLYBdNJBE6ieaFxtKc/p+d6t7CXF30VzdX59uFLOOBJBO7lM= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:29 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:29 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 14/16] maple_tree: remove node allocations from various write helper functions Date: Tue, 18 Jun 2024 13:47:48 -0700 Message-ID: <20240618204750.79512-15-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR03CA0351.namprd03.prod.outlook.com (2603:10b6:a03:39c::26) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: 020b6d64-cf06-4bca-0568-08dc8fd80254 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?2pwymMc4WzK9ZCdcv2hOo2xs7uDQOhhLfboWyFh+GygZuBXGc6JK7xRd7aoD?= =?us-ascii?Q?YwFXGpfNyMxjKV1h3IQ1+BJXtdlrsPkHW7hYQeKEr3lmx72vtJ4ck4gx12ju?= =?us-ascii?Q?S/Lj4rKdvsxAWGxF0en+agyJ5YqsQ/YAJRiRW4JT9XF9/oZm9gF4Px4Q3+6o?= =?us-ascii?Q?CHEPWTmi/2KCgsNr1aN2niwO7YkOkCp3HyPSxXMNHKb21B79geHW8bj6frZ/?= =?us-ascii?Q?Zq0p8MP7x2oYfQBtZN6jfKF9chIvG3fLtMkVQnRXZJfURmwuML+5pSEaZg9h?= =?us-ascii?Q?a9Lc2+xdG7bXzVZuB7S35Wv6DXV0Je/ftlRkPE2QS1xEpKQQpnzreCC50t3/?= =?us-ascii?Q?dT/PwF94S4A+FXanMhuv4LpnZsRffIcDzUrzASZOMoICdgf3tlllhxFb8Ftq?= =?us-ascii?Q?7D1l8tRRexxLw8O+v/f+JYOfA7PamkCH355HOHbsGZroPd86o0rTRoOV+r+t?= =?us-ascii?Q?X19kAFB7AK86LyhUXv4CoDDyNTguchXoGLOFjKmeqd3PbHPtn3uOUZnhN5Cp?= =?us-ascii?Q?PqejlFcKdxV7McQnO505bUl9eiRbNyvv+sF2F7dK1YkAb/CvU9vpkRl0VKkQ?= =?us-ascii?Q?6D+dzmsNv0i8v+FP3d7zUMRKByUOmZz05s4WxQBq5iMDa6CPUCZvr0Y2KU0z?= =?us-ascii?Q?qPM8H0WCJDB32grFY4wuCVHOW1/HwhcMYTJkeE2rJDGzIP4zAg+HoMPYyEw/?= =?us-ascii?Q?6+legzI3gijMXoR2DXw04VdlAMhKBoWQmhiFeIJp1vXsdZhkxOxsJvvxjOSX?= =?us-ascii?Q?cmyrC6Am9ygw5ZznM2ZwJvtiEMHOgvLAYFKBjPv2pIaCi1aox/JaSZv7i92q?= =?us-ascii?Q?oKe75lK1TADlQCU7XWdhcBcM1cPiDxp2ieB9bpHvIOBRDTgGZudBzBXA284a?= =?us-ascii?Q?uu/dfSOZus+T9Nb5PkIbwb4T5mcXTaW2/I67DKK4YLH6aPJvw8gCod/zNywJ?= =?us-ascii?Q?kuQxbxjp0U402w6cehWPWJo2XYzwihbriPeRzY2fr84Ev10TQ0Sp7l7aOVBQ?= =?us-ascii?Q?kDXNVzASHWKZUbNjUa4vg3Qj5yHTWrP8NCASDIOHLvxUhlNXR09xGwEB2lWy?= =?us-ascii?Q?FCgZVD7geFgD3+n4h2zJFGPBduqPB5HO5Ticx7q9akfM6yUDqnK/pqmvT7Sp?= =?us-ascii?Q?2BZ0n81rb1X4c7c0VwdP3YIAtq9E9xVRFn/+kbZFrQM6DJp4VTPh5xIDQYyJ?= =?us-ascii?Q?vdrK/wOckxM5gTltixLwx6yZbUOap62NCmvP9QS0/g3F3TNeew0IhGZAr0hG?= =?us-ascii?Q?Ydbj0euE3gEswH0ekiS3SiP5l5Xjox9C5tdVifceqoej8ofvzmf+NjD591Th?= =?us-ascii?Q?YsGgRqrIHlX8QGRo7/cv1NiS?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?AIEA9x7eHs/OCSJ9M13LEaTsfqil1ugIYHVWOLCdQ7DWGcq7cBPa90YkqrrQ?= =?us-ascii?Q?FD3Pstm9O9W8rkhUW/Vc3vljx95WXs2dfWKpGWl/ayDhIbwZnZ+f/RaNs0XK?= =?us-ascii?Q?Q8y8NOB/cgoxny6DFH9CV0OuopYjJUQyt8itidCRXnetHzwQdk3fMdpDDDG8?= =?us-ascii?Q?YRA8y+g6eKXUpu9Roxc4eSv46TO+flJ4zRikGxm5MGKk62PVTTOslxAnZ34Z?= =?us-ascii?Q?8KYdfL+FN4ackab1SBFBlcrKdKpiJYWnuBMXp1qZxHZMwc0cbFT5sqhgbVtS?= =?us-ascii?Q?hfDX4899SnY4sVsUNWRBTUuXekNLZ1fs30E4E+ERkJjM/AeTQX2TQBoFxMrd?= =?us-ascii?Q?/U7JExB1Zl0vw+dmBRWw3AjPdCtgNj3FeOWYLPU8ufDDlzsMBUTgeQAU7XyF?= =?us-ascii?Q?yW+e44Md6nRRNA53Pm4zzAq/BQchxsBkiVZdQp2QU6vNSy/cKv3VunehzKc5?= =?us-ascii?Q?8Mz4tWsYA4lOljRIQvGTGVzvifqrKLbhxhD+Ta7qY0eVGgESqcUuOxxKwSQu?= =?us-ascii?Q?0GcYrE0Zc5GgZ1Vqe4G3MsXZyLdz4wOodxkRZCUHp/mi4Ev55nz228QId3lu?= =?us-ascii?Q?UAXlSGjq2naLH17J4Aj9ioe2ETuBmKp2Leb6f4mZJD6sfsp8+sZH73ZaYRVJ?= =?us-ascii?Q?wPVJqYMpWix37SuYfTXR8U7QQckJKNvymBpxTsvM62+pkySr782B5GRI3og8?= =?us-ascii?Q?Wn7MO4temXGFY98doLq8J/IR2FKs+yoxHZqz+q6fBCEdzDpPzkNo5WWTWYga?= =?us-ascii?Q?LZCTDjZue7uVSkIIbjByxBXgSfC+0lA5ZQ4L+vR+THLP3h6Lyy2tWaEMp1mF?= =?us-ascii?Q?OWmmgzWTQByzVayFUzWrFvehhnl5ggUPd4/nVZlYJNwP6LL/nzugnd0PgGw3?= =?us-ascii?Q?fmbaBahb0KN3+zq3JPcE6Bw1uryV7wuf7tInxSYo6kXe/enjRwnqtvF4PLKe?= =?us-ascii?Q?MXhVwJT6Rtmxo0vG43SmnKM/t8DLJTjokaN+JLboYEPcCr3qe1/u24Ep0tIo?= =?us-ascii?Q?dgr3lVjHjst6t6/xzXcZyqDALXVFTCFZ9F2G1yCuL5yrF19vCixnDnTNbx1z?= =?us-ascii?Q?P893udNvMCUfMj4YnbMdKkvg0avJeXOVYIRDyPxVUx1Wes8vApqCnTGvP7aN?= =?us-ascii?Q?7pCBulyhSbDNrIqvfip5kifgzgfVhBuwCbqP7GioL5Zoo503PYUy9oj+oJnZ?= =?us-ascii?Q?WR5xyL36v0CtmclXm63E6R0MC59Ek1J6yDWx/6xenyeevDNeIGO5CApFwRaZ?= =?us-ascii?Q?Mbvt8C0oMLEx8H69N5fcxBEYvnYKmfLy8vrUFoyl5uEewBF0RxAWuuBYA++n?= =?us-ascii?Q?4r7kCBqtLuSbJYwY9WOyJT/RkSigROykK5Wa6nfX4u5b3oDuQKxV/ffpuAPC?= =?us-ascii?Q?Tcy7EWuO5oK8+dqKYq2QUYD46fcbPRS4dsO81DSvzzq26U5CZxX5zpIn4LxL?= =?us-ascii?Q?U9b6+lSJ75aYrOdVFNXNw3sbblsYAXrNW/O7AbszJZqU506HGNA9cAMtBApg?= =?us-ascii?Q?k1mfy4SEVMkRyv5k/ZCr2pWgYuie01jaD5F3EqW2zyqCkFMaZV6qAm7MuwJU?= =?us-ascii?Q?iHiERaOBZPFIONwT6aEkchVTLkvtxDegFa7outoywe5xL7O7h6m1+dsh8iVP?= =?us-ascii?Q?WF+qu/FNn/9hoBV7Y1roXwg=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: fNYGez856hRm71gqYtD9pUQ2TatF4TwkqVJ59MNXY46glmgKTnXdbCYFQ583IggXIsysRjZYD5QZ489imaYdBW2UDyY6YBsL/MwD6A9mMYvObabFaM/AX7T/3sn5Qyg2JubYmfLQpP/uQT0ZJidN1PaPrkIYt363ybKqpA6YVO/c7OaV9PsIB6lE7jvD2HSiTg0gMATfN35ft8CSm6bDm8449hMv1foWKO/3KGupNFFMhQjmfvaQAXo/Ok43lMUpBU9xy8d8RtRtfW96VfVJLgP8z8IDVP1c1HL1BkvJHXqUFODoHABaRp9U9t53nsxgVfWDpdajT66ECQ6xmcz3vB0J1ctvUnGVby7Ht5AOxesxzyZR1iGB35K8X42faZ0hvMj7Em2o+DIFVF7RPV1t5M/93o+KtYieU8yXDIz5C5P5OENJJs6NH38429flDkEqC7IHw/4a5zdqRgwgbcLP+YNeh91U7HN4OcQEG8MeEVODUofLtIpvw3x8a2n0AoSYSxXqn2Kcdhx31liy3wZMhJ+fo7G9bwh5crv5DL177v/JBoRBO+5mjRR8UnMRid6xP+3qYy8dqscr19p0EUpcAw8KQEyh8p5h2vEwKZLAs0c= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 020b6d64-cf06-4bca-0568-08dc8fd80254 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:29.6083 (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: NmpESqylId/Pti9x+Wd0LvJesS/XwDkNSLW3gxo9bYD3A7gMSPN0F6LXcVjol61/D3aousE8b9/zNmqfxqvbrmphG/32wUCSZVTykdwHAPs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: LG-n3IqnHaeHNZ2HbgU6l5uJ_F73b5Ve X-Proofpoint-GUID: LG-n3IqnHaeHNZ2HbgU6l5uJ_F73b5Ve Content-Type: text/plain; charset="utf-8" These write helper functions are all called from store paths which preallocate enough nodes that will be needed for the write. There is no more need to allocate within the functions themselves. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 46bdc4ce6662..9ab8a6b6fb0d 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -2976,9 +2976,6 @@ static inline int mas_rebalance(struct ma_state *mas, * tries to combine the data in the same way. If one node contains the * entire range of the tree, then that node is used as a new root node. */ - mas_node_count(mas, empty_count * 2 - 1); - if (mas_is_err(mas)) - return 0; =20 mast.orig_l =3D &l_mas; mast.orig_r =3D &r_mas; @@ -3029,11 +3026,6 @@ static inline void mas_destroy_rebalance(struct ma_s= tate *mas, unsigned char end =20 /* set up node. */ if (in_rcu) { - /* Allocate for both left and right as well as parent. */ - mas_node_count(mas, 3); - if (mas_is_err(mas)) - return; - newnode =3D mas_pop_node(mas); } else { newnode =3D &reuse; @@ -3341,10 +3333,6 @@ static int mas_split(struct ma_state *mas, struct ma= ple_big_node *b_node) =20 trace_ma_op(__func__, mas); mas->depth =3D mas_mt_height(mas); - /* Allocation failures will happen early. */ - mas_node_count(mas, 1 + mas->depth * 2); - if (mas_is_err(mas)) - return 0; =20 mast.l =3D &l_mas; mast.r =3D &r_mas; @@ -3444,10 +3432,6 @@ static noinline_for_kasan int mas_commit_b_node(stru= ct ma_wr_state *wr_mas, if (mas_reuse_node(wr_mas, b_node, end)) goto reuse_node; =20 - mas_node_count(wr_mas->mas, 1); - if (mas_is_err(wr_mas->mas)) - return 0; - b_end =3D b_node->b_end; new_enode =3D mas_new_ma_node(wr_mas->mas, b_node); mte_to_node(new_enode)->parent =3D mte_to_node(old_enode)->parent; @@ -3474,10 +3458,6 @@ static inline int mas_root_expand(struct ma_state *m= as, void *entry) unsigned long *pivots; int slot =3D 0; =20 - mas_node_count(mas, 1); - if (unlikely(mas_is_err(mas))) - return 0; - node =3D mas_pop_node(mas); pivots =3D ma_pivots(node, type); slots =3D ma_slots(node, type); @@ -3746,10 +3726,6 @@ static inline int mas_new_root(struct ma_state *mas,= void *entry) goto done; } =20 - mas_node_count(mas, 1); - if (mas_is_err(mas)) - return 0; - node =3D mas_pop_node(mas); pivots =3D ma_pivots(node, type); slots =3D ma_slots(node, type); @@ -3812,9 +3788,6 @@ static noinline int mas_wr_spanning_store(struct ma_w= r_state *wr_mas) * entries per level plus a new root. */ height =3D mas_mt_height(mas); - mas_node_count(mas, 1 + height * 3); - if (mas_is_err(mas)) - return 0; =20 /* * Set up right side. Need to get to the next offset after the spanning @@ -3898,10 +3871,6 @@ static inline bool mas_wr_node_store(struct ma_wr_st= ate *wr_mas, =20 /* set up node. */ if (in_rcu) { - mas_node_count(mas, 1); - if (mas_is_err(mas)) - return false; - newnode =3D mas_pop_node(mas); } else { memset(&reuse, 0, sizeof(struct maple_node)); --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CE4D116D328 for ; Tue, 18 Jun 2024 20:49:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743758; cv=fail; b=XPqbHDX8AGWMQdeW4Eu+iyg84qKt5l32K8JiT7MSC4eTReAoAvAz2RbcXgTHA7TrMHsW5piGuzDfnGLr8I4aZvXx0/rZMV49KFI8XXVT8vnhxUNPClkIxrF8Em8A3HVqy6snl0yTjQHEwjPJPjC5dA+VYRDFBSonPOjhdy5PIVo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743758; c=relaxed/simple; bh=hyWjt2ypJFN6gAQfrGq1kOrW3s+UAH4GgN9QZBm8VuI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=jD0WkRRIWmpwWtXAec+MzGWhUA8l7KVtxWh+/iPHCRvLNy5xE5ukkOjEIz7s2PpnW7ZXW4Zm3VfU1RNT9YkzE4dokHAAxydOqYzfCtUR27HJgPehbWQlcDLnseLNESqjhAhkHMApzGOLjeukQdv8+XTl4I8w+q4Kj328KwA6Z50= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=UHQRfxSM; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=gupwCIVs; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="UHQRfxSM"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="gupwCIVs" Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUmOH005328; Tue, 18 Jun 2024 20:48:35 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=FlmQ+Ohn1bKajxcZtx4NBjWdyayPRi4zWW6jf8dYlsA=; b= UHQRfxSMHAdcM7xaTsFJ9BOdNRQ+4muUkUzkV5N8MyePyiEgB77/8+0+b4S+ySFB gc4Siw7SipxCqg0WU9YFSiS6I4nlwhMnMDL694esfF2xlp4Zkd6oVC1SpGJRNyEX f9vIT3dyUz1dwGyLejX0zjMZYqT4ThfPO0hNIUD38zlKx77FkyvuG6kbt89Fzs+b uCbeFEyMjH5+y1I7GaW+tnhbMSqShTSYP7fOMF3Jrd0teTe1xlnqEzUf4NFmKy9z hz/n0j4hL6V9p9fH++4G3vtH/6eSViYkFSYM/WJbhpuzrUnSXzU2KFCoBCDiMFi/ DCctyVUZS5ygtGVx1CloTA== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys1j05xar-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:35 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJlTIV034656; Tue, 18 Jun 2024 20:48:34 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1dey4ud-8 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aATCMwwDgHu/OgsrESl32IbQ2jJmn+2PPUrc85/6iiZDByp0hW9fzF85I5d49etQ0KlFWe5hfioFRGjVylcE0WpLfEmfuHauX1rPuBdQrgyKe8itlecc1p6CpiiLbDmuI5btz1sYR+jdiOX59+77y7zPEk2Rav3de+WOInVrRQ9Fr9S2da3RpBuibEYFu7utUrq6jgOUg51WfpHyRbt2sgS4aE+XtpIc2nkemZi5x2TJ5x9hDKcUTpaBv+SUM/IwQH8z29uEVCM/zbaHVK9F8r+RcScG4nbtZfZ1mcW8OAUJNwCtnNDWWEkkYodGEmgnVgPcHcFtIiz0cX4kC9+ZYw== 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=FlmQ+Ohn1bKajxcZtx4NBjWdyayPRi4zWW6jf8dYlsA=; b=Pbw5N0JeX2L4T3WludlX+L3dKBVfOJcrtazCa+tJypx1SklG5v/ntlib4mreLAx/FLPRBs6wvekSsKOLBwvpQjw+i8j5v42BtY/VzrB8CaZ2M22r8olYSc4PfYaBaP8bvaPtj47BSj/6p/8gABYzeQJOYGlLmcKtL6o0JYmsJuazgzHT3lqnmEkPMRxd23MIBn4fm15b9cvqvGQGDDDDKNIhfO+/9bPjrpIEMBQtzJJnjRcpcfhUO6yq/tv5o5D4/c8gc+yHADC+4o86zNDsUwvn2FlCVtUyDjcaU5uUV8vuseocYcfqn6nU/aSHVu1oyCuNYoQlgl5USmfWySRT9g== 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=FlmQ+Ohn1bKajxcZtx4NBjWdyayPRi4zWW6jf8dYlsA=; b=gupwCIVsReAS+ZGS2j/k98FKyD7hCauZHqvYa0jfm8/oIVlabJeYYZ5ZEWXZTF/xy8zvz52F+bYVxudeIHU2kqOk/vOgL3C/XkT5TSzFAMkSf5gnZdxkYzIZ0lEvOwsHzmkDEARhEY0wDx97tEBnFY73sQ2Gjd2JeLcuCkFbaKE= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:31 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:31 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 15/16] maple_tree: remove repeated sanity checks from mas_wr_append() Date: Tue, 18 Jun 2024 13:47:49 -0700 Message-ID: <20240618204750.79512-16-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR07CA0036.namprd07.prod.outlook.com (2603:10b6:a02:bc::49) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: f6508bdf-3449-4d6c-a005-08dc8fd803a4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?D8Pf4BLa2wCQWcN3o1QAsk5ZpF6gnKPtWWdm/+qtANVejAtCZKI6qJ9VQ7i6?= =?us-ascii?Q?BSZgzjR163geHd9UH2zF4T+Hk9FnJqCfqOjm7nmZ+WduNYbp4gb4xHyZyjml?= =?us-ascii?Q?kmyqTDskJNznYLxxKJ3B01EQBL1G0cCmPIiFEWFUF1PFEg6+E+Ti70HM7oaj?= =?us-ascii?Q?bvRO1DCxaC+0jK5wzkxxJ+RveksvIJA5uZ8Q0XvTVwLu8O6CwjhGY603nDK/?= =?us-ascii?Q?a4Yu/05zbzp3qATszptSCshxqnhjgIHd3ybdop7xr3AyKKGFkTDVo85nxipO?= =?us-ascii?Q?FFUYlw7O14XvJ+CkAREBenN+vVc1H9HLFaqX9UtN12+0FOvu77PoicbQadjH?= =?us-ascii?Q?nfA9ic7AKWcaByaPOR7FMzE6j/FwRsAqVhOXuVbD+WQZPfw1fAEloRChZkQw?= =?us-ascii?Q?RMfvIG9bSdHcKgQHn6euPRl5lVlx1TpbA6MqgUUKekniVhwNYWLMqGUHUHRc?= =?us-ascii?Q?F7HBQdq1SJo1ieSnCgsdqdhW/dZnwIwQr1g3rvvf5t1UuDDfpZl0GOpMIvFC?= =?us-ascii?Q?QNegRolRGDAevsmvsCF2D8RjvRR/bXujS66R/Lgf4MCwWZHNu7BwnJ76sPtw?= =?us-ascii?Q?yf1PTlyJQPmIT9dyM57wMQp+L2zzx2Enzb6gbJvqvh+603dQsO97XrtGWox7?= =?us-ascii?Q?2RZ0nq6qlvm+2rZKjZH7x39VPT6y6lPx70u7U+Vy20hds303gKTJI/ZLGjNe?= =?us-ascii?Q?nE3geZXhsQhIVGZvNr0mn5mzFOuGXoaNoVbbFaKk106HsnudZwy06Tpcl4km?= =?us-ascii?Q?seZBi8L3a+webjN11vK9plG/8rfDprw+9BqGggJ2PK9UBMF5gB1eWtiPC/TT?= =?us-ascii?Q?burN3H2rF5rsiNMssA0dMuqStXskzm9Kkl4LwWNWymr2YjZRIy/yqFd1kjjn?= =?us-ascii?Q?TwFDDsxDXjakp1mPvaqBnoalP/6lAn2w1KPY0YG0sB0SIjneQfci1SYpSOv2?= =?us-ascii?Q?IQKU7WUsJg2ZWZHwc38lapZ4gGdAcTR6N4wyVz1mqwQLUGp4AorryP+Bua6l?= =?us-ascii?Q?qJK43Cap2UKaH2mm10lkPMXh4Fkzx4SwEmtSaCV2houNxl0SCLF+RZtPOFzM?= =?us-ascii?Q?MJZ90wblnKk2R/khQkV7omRtEI/EJB6h4cED5xDmryEr7a40MI0q7IEiVSsW?= =?us-ascii?Q?r0K1eHJyWN8VCjchYUDoVJNd9tZezcHJPOZ9V4UgdIkoz1UmYA8ebmuGNttA?= =?us-ascii?Q?usNVsaFKmpoFN87W8gqqnqCLu6CHtzlqJxn5p4S2fBQ3GP0kjSQCq1PKEcFX?= =?us-ascii?Q?VliUQqlqMguQGrByRXmNG6hpjms/fRalHA8tjUJl2Mx49rIE5X+0KXTp6H2D?= =?us-ascii?Q?hKs=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CEi3vc+7NX23qRfYeeIHeDrK1BwsTyx0sR3+PKLATWaFxCps9HAxP7Qcm0oN?= =?us-ascii?Q?esM1o0neAOjA7JTaVuvOIU2B/0b8EGXgzrCILP650ILUP8zTe2RTQTjEbkcs?= =?us-ascii?Q?m35A/OijCfTgiN3DXfSul4DN5NCshuUWi3WUGBMia2GDTl/VLOPeFUf+M8ET?= =?us-ascii?Q?WNa2WyPF/1oOe/GCaimf4+EEpFo9guB+NHV6fKogSqvwJ8iuwK+Tv7dvQTLK?= =?us-ascii?Q?5rVQUtjxvyXDFdn0/8+Q0z3OkFnlrkmA86NcN/yGOXKHHdDUpCHOc3TJ66x/?= =?us-ascii?Q?5sj3odnGsY8EXunk3iJTEyXgBaQUDYquXbwAcUPq7sDxagD/SccWu+QT/28e?= =?us-ascii?Q?5ak3bpdLPYP86l9upquMZlP//fcI6xWQ9SJXWhLukLtTcQgg79nrpFkQPJuQ?= =?us-ascii?Q?4V7/XutXp6e+sBP24VGT2xt8sd0L7bxUzgo/l2wR7VTiu0bjlH4ZtXY9E0/8?= =?us-ascii?Q?9+lyHgQ8auHgekMcSo8HtBD2q6qzui0bBkcFF3KoXAongL7QW/iRD85XP95z?= =?us-ascii?Q?oPXUhlTySIqan7reUeBhB9dv0ye9VT9lyT+423bPXeXDDrLvCOFevyFACORv?= =?us-ascii?Q?PiFOCqI5QfPSXPs2HGzVQU1LRLawGEW5VAlA3esgFO2LYzyEpha7aySiU+J8?= =?us-ascii?Q?56Oacz43dppEAmvpro7sYCmHM6jpsjvR/AFQUUsq3xaQ376cyJPVsg8yPYN6?= =?us-ascii?Q?3VzrGB3r77J++mepUQn9qMN/NENTBq+HBy1Vp43FyIqKWP7z4BQdOcLbnx7V?= =?us-ascii?Q?+xHyLCy83yOCmpAbSPvWmfI6qlrV6MU3c/xeZty09/ifuoFA+uSAzWRmHLE5?= =?us-ascii?Q?J5uok3ma3qEngtCsOyM3sq3PsmpoFRXej2mc26SfpL7DzxGUS8gNCgQKfStY?= =?us-ascii?Q?2CLughWu2dz9tW8jDApLEppPt3RrqwOCl+Qzp8GNCGvroYBLuU06fLNU/ICI?= =?us-ascii?Q?KP5ElTzakZYsiHK21daYQkWPJEa7rxMeeQkSBT21NIwNwBoaICP7sM1Rni6R?= =?us-ascii?Q?mibS6mSTQEtMNdNDHp5sbtp110UrLqT1sD8aMB5OtX29bLtJJVVIHxtiwxvV?= =?us-ascii?Q?770SOwPUP8BYezwSjE6zKtNRAsj63NCdkSnfCWvhW7Q2wa0QXg++L3w0rG+g?= =?us-ascii?Q?zO0ROdqvGEYLJWKJhE9amQ9+ucqTzjC/7/hdE1zfwrnwlQDcz093EhSRugX2?= =?us-ascii?Q?FStJk6TTiUiFxwGd2Vh5fLpgnf0/ArzlDYSPqvO57VxTHM+jHQD7+NuoUeow?= =?us-ascii?Q?e0w0zvZ1XiGQwgEk8lFHH88blp+hxk7Sk33XrRw+Eh/fU4lZ5ErfOFoEalEg?= =?us-ascii?Q?ohY06u/HcsidPBYyoF/Y3HWns7twudX3wBPjtkd0qWYYy4gmBAW0bYzzrY9B?= =?us-ascii?Q?Iwtf6DhXMUGRUR+w8t8i09YOZfMV/uqra6/AdhPmFa71h8QPdgfWUNiZAq11?= =?us-ascii?Q?zw+nfdIKx7Y4HR0nEomGr5jEcXdhkHzNc8EV0WIRNRTmaimPvykSZvLJx3oO?= =?us-ascii?Q?et3Bm3ckd+gl/xyIV5m7v2KDgcvfrBmq8915yQP0U9Na0Rn41lOUevUrQc2g?= =?us-ascii?Q?rQJGg50mCmH68eorLDmHYb7gVZpfGrO5jL4/vABC+g160WNBp50pfqPc4ftm?= =?us-ascii?Q?tD9n4AktQrKVksAJObjS9us=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: WMuL2jyibCM+WiKK5QojurPYR+y6nLLiHcHVA0uQLH0tyVecByHMe5jBRryqzCNw3UxmfVyV10F/+iGlYCks+0mY+Pa1MSg4HryJ4HqgeCpvRTIrre1usbHFyJhmdokpxKv7XyMfcNdzizWEAZH/QUHa14Is7WWB/svXLC9eS3ijLWJ0l4MdOmtC2DxdNrT57LyuUNBUuPXP9MRCm6yqraDMz1C+hmhmhgzu7muLNVIVl5PalxU65tHdP55/D1IYqGpZp8+Lk4h79Pw18mkE/pPogT1c2DFH6tgUL8v+xy5vVeUwCQxrz3A8N97iyvTRiVe4ZDkQhXj0xMIV+TPKXW7YLy52qwODAv7BPDGqgse8cVOqZB4OKSBe56EEwvZvP9htsd611vEFWbjLJsNaEqluNuawo99uHN3DfEiCIdXFz8aqSAvccx3EeQ5GTUYvCGBelxlVVDiTFU2c3iqfu0GWqlhqEKRo6+dZOXus3PpkxRp1+EbQNP3FkooXsy4p5ai5PDTMLqBBpRJThcIj8jp2j80Jhhj9136eyMz9fICpuU+6S8jFvZdcVDlbKHqBdvP9ZLQrMypoS5AqqXF9+M5mjXZMy6410TAIPqnusGY= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: f6508bdf-3449-4d6c-a005-08dc8fd803a4 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:31.7656 (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: ugBV+KlxWDAjLpY24zg25xHMZ6DAN1t9FlCmfypCYv1ev+5QtNQ03AYiS1sV83RHb+Yq9KupHphhYH7BJ9uaFFJy6PgDHwB4w9GHU98sY18= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-GUID: x6O2Iweo3iN4rOlHPQbIbnF_NbsrsNZz X-Proofpoint-ORIG-GUID: x6O2Iweo3iN4rOlHPQbIbnF_NbsrsNZz Content-Type: text/plain; charset="utf-8" These sanity checks are now redundant as they are already checked in mas_wr_store_type(). We can remove them from mas_wr_append(). Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 9ab8a6b6fb0d..f6a09bb7b291 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4061,17 +4061,9 @@ static inline unsigned char mas_wr_new_end(struct ma= _wr_state *wr_mas) static inline bool mas_wr_append(struct ma_wr_state *wr_mas, unsigned char new_end) { - struct ma_state *mas; + struct ma_state *mas =3D wr_mas->mas; void __rcu **slots; - unsigned char end; - - mas =3D wr_mas->mas; - if (mt_in_rcu(mas->tree)) - return false; - - end =3D mas->end; - if (mas->offset !=3D end) - return false; + unsigned char end =3D mas->end; =20 if (new_end < mt_pivots[wr_mas->type]) { wr_mas->pivots[new_end] =3D wr_mas->pivots[end]; --=20 2.45.2 From nobody Thu Dec 18 12:12:03 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8C936176FDB for ; Tue, 18 Jun 2024 20:48:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743727; cv=fail; b=HQPJPY/V8inZEPdV3eVv3NZ3iOFtftUMmocA4Duv57otl/3/+vHsYUUpytzH5wl1DPn/lvFzEw2+MjMgEOE3Yn6+vYREAFsSjoWM0/E/fmQGY0vUE0U34VWLY/5Hn+p5OYmpk0N5YDtDN6H97oHfyTVBzFZgUElMzKhUw1nQdqM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718743727; c=relaxed/simple; bh=IwpaJ2IUCxxD+AQQ1J9nHRnSUn1Z6U4+gRZG6Dv/y1g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=Z7ZqPu4kL68l6tvpKSFC7FEnEfS5Ltc57aBhltuy/54Ff68TrHpv77KPth/Byc53F2eYcjF7s2b9gX+Hxynbq3BpT/CwLomW2URACGJWvN+w7vJ/5soGvGnLI60Pxp9znebRZMS4966jsJj4HxL8kbz152eTIjqAycKhNivnIYg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=boYNq4MN; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=uLQ8f45j; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="boYNq4MN"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="uLQ8f45j" Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45IIUsVr021513; Tue, 18 Jun 2024 20:48:37 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :content-transfer-encoding:content-type:mime-version; s= corp-2023-11-20; bh=E0GVOIGhfEZhyYYlOLkhmH0oDChns675y8AWzaIQW3U=; b= boYNq4MN2uhY4Wxv5p477CBT375X1xmCCQzh7xnlytMAJOrm87iDI7TKk1grIWWn DDdeqdhgnW/2a6aggswz38uc8wVcYGqX9rg8+m+OJ2BcsqwlfQVcCu/k6VvBSaMn nWXk+5OvcVf1M3c3a+RdLM6oouu1NtzqrgobIhjwUy2/9sMaiBK/yWwumfSfu6PT lhyS1GnIIIl6W9G9rVvrOdvBdziskfZoSMEPDLKlR6QoVtg9tgBnXmMpetvwDSqE SLezYy/AOazsTlcrqQm3gIi+4+Cf+086i+ZWoPDhmqJDpJg6CdI1jX1FC8Ajt7aX 6e53hNYNTPrL/OqiJ7MYYQ== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3ys1cc5u8s-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:37 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 45IJFhpU034903; Tue, 18 Jun 2024 20:48:36 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ys1d8p72s-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 Jun 2024 20:48:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IPtSW00aNCiIo2uu+SgBzlPNw9tkGGkKV6zTRH6eBUXVQ9kCDRJnR5hJ0GYtxad07ondN8xAtoT1R9Xlw6eDgTlx2ZlJ2JnPSifdA032FNSddwr0ux1dbiRH7e0PiTnou0hhvIjGgN2s3THCNYsVJlJcCBEnmwihRbxTtPb+bu0jbIUyWsVJMrNgaGJYp/YhbX/uf/cq7csK0yFvFnfp0V7bp/L5z0Jvv4LB8W1kWfQJP8OL3FuDuu0JvBEWxwUEoH+wP1PkIueNgY4zmfBAPRxa/bFYrPMdcubhlBgLF+5O949hgnnq2VJ6NQhD+s0UMZk38E5dER725nUDteO4XQ== 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=E0GVOIGhfEZhyYYlOLkhmH0oDChns675y8AWzaIQW3U=; b=JeBpFQrrFhGCAq0wuk6Pmea7nQ6Y0Pbtvq6nJU01fgIfBM76+qIFrtXyDY9PJHTto7qJuTXYF3v1ac671glb/73/hJ5Vd1Jgm6Lrt33aQ8EMyM+5XqFQLSyiYsXwY8kEro37O3E9aqzzqIMk+iX2XHkUMBWQ2e06EMyc5QE1yZOejDwMb6pZWirctedwkfX+tKb6XXSgfx1Bh3dZ4zCv/qt7cRm7D15R1/66UlJA6IeYdVEISs/futnvVP8x5O7qMgzPYZollWqWFN/BjQ3ZoPBTh9gVaOrFPV7LLcdZG1mSNcr+ZQK91B6RK+VzfrSU+02h8c/0ACMCj4Q2oBeaRA== 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=E0GVOIGhfEZhyYYlOLkhmH0oDChns675y8AWzaIQW3U=; b=uLQ8f45jRhTRm3WtxwPCgkQWvNAo4Prc6Wu0GMOpgBuoelt/004RQnK4vO2p6sDfp4668u6kJF8yb91FtJeU73n3fGkF2LIGmI8ziHcnDJVhfD9en3WNnqe+Hbg3mgjlUHKc7QCkUIqrNiLH+44cgMCUqFTjOfpWJOSlJJcSQhw= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by CY8PR10MB6465.namprd10.prod.outlook.com (2603:10b6:930:63::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 20:48:34 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%7]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 20:48:34 +0000 From: Sidhartha Kumar To: linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org Cc: linux-mm@kvack.org, akpm@linux-foundation.org, liam.howlett@oracle.com, willy@infradead.org, Sidhartha Kumar Subject: [PATCH v3 16/16] maple_tree: remove unneeded mas_wr_walk() in mas_store_prealloc() Date: Tue, 18 Jun 2024 13:47:50 -0700 Message-ID: <20240618204750.79512-17-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240618204750.79512-1-sidhartha.kumar@oracle.com> References: <20240618204750.79512-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR02CA0002.namprd02.prod.outlook.com (2603:10b6:a02:ee::15) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|CY8PR10MB6465:EE_ X-MS-Office365-Filtering-Correlation-Id: 3a1111f5-c4ab-4685-7901-08dc8fd80512 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230037|366013|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?T+JNupauxEaQjSfYuQOaTjJA/4SKBYWwNLhN4yPCY9YAZeBgCMSFy9MuLWts?= =?us-ascii?Q?erzokUdohI7Sz2NWO2zbjZUuKHhx8OtgYnnHkj74mppJrXZ0lj82+5PBKDSS?= =?us-ascii?Q?yTs/TRvOtUor1HFqYNj9yW2aszys6vTdC3cFp4mMuZewR8lc/U/dnDutshGL?= =?us-ascii?Q?Vrp9QsVAjz0p3o5Iu+t3AHGY/fSvMXQwpgE38CHLTSEvNECEq+CzoQOauCTQ?= =?us-ascii?Q?2po/ezMbemvYOPcpRV+sFaAgUZ+6dE6aryA+I8Yd4/bOuzenPS8xINVokY7g?= =?us-ascii?Q?IIFCKr5gwRdOXEMjCq6k7mOV/voY9GRzUjCwtVvntfRAp00Aq7WLZCOQ1xdd?= =?us-ascii?Q?z4cGKIk2NImsNL/GTHf7KX0DMQf5EpX5rzwqEUsfpJOlV3wb6FsKafAbTOhY?= =?us-ascii?Q?aMuFt+ideGtZctfCJyu6I1Zg7XMmbVDTfkDDuriKI8nWllv1yliY98f7I6ZT?= =?us-ascii?Q?6n/i+wzJHlu0KT8sQ3vrF4vZbta+2ct9tWYKeC+y10lsqfhNdPIDB0af9aWH?= =?us-ascii?Q?LnLelO8gq5AZ4xHR/GvF28itOdZauk4oBFz2BWZ44zMUhnUgY89KBtP4XA5a?= =?us-ascii?Q?gUFVIggkEjEM7sEr1NT7uN0u7a19bqEoc21jFeTPZ1poPdwoNdY3UJuceGUb?= =?us-ascii?Q?bgkFPXO7mVgvEfjLwz7/jEUP+R8d6p9gGof/sxSZqbpKaGvNs07jsVJtornV?= =?us-ascii?Q?plgdyq28uUzVmlPHBJF/l0VliYr+UfHy8lAlNxv9/80Gf63BV9xyreTerxQi?= =?us-ascii?Q?H8tI0rjiL0TzAcZSpEsylGKMbNz8THjKi9GTPrcQfnEcm1cwdata4DcRHlaI?= =?us-ascii?Q?qYtAjEaMFuBbL+3XSpzWJ9OvoRKxABOoO6tSLJQMjSZEDiUbu9gikqcNFGQy?= =?us-ascii?Q?qjMdR4CRgXTdtgK2qDUTEeXRihucnvD/y/hG4rwgbShp0VgksQpaV6KizETN?= =?us-ascii?Q?Pjy1atw2fqgyKPs0Nf+6hSE0dUr/nTs/a/4NLo6I1ibLtaKzvu5YrohNStF7?= =?us-ascii?Q?qiU5uEVhvC27goE8movT1R8Tj0uJhzvophm4QWcpDfL+laKaDDYEXxgb0U3d?= =?us-ascii?Q?lOeIGP6FraOTqj8je+AEq5bewu70KCa6cpHJeOmn0tuAQYBBTMaSKHvqHxMf?= =?us-ascii?Q?UF75MP9+veqwvsZjrNf2sQCbzTwfzn0/h5eqVImjFtqoaTF11G/JBTmkKPh1?= =?us-ascii?Q?1WveGMKNUVkXGvL5SUUHIjHoTkYFXxI9na9awpSN376t/fQjGs/i3FwnajMO?= =?us-ascii?Q?c27kFq8tQoJTjQo9bT2JNkTQsBam+EVWlkQtH49m5vs4FGv2mfyClkB5Shzj?= =?us-ascii?Q?d5k=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(366013)(376011)(1800799021);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?m7L/IlrfDVgCBKbslpvjaBtV5KvHlN2tQGRL4yXFJIxEdRaj/GRii6kwwU5w?= =?us-ascii?Q?T2XtLoR8kpcMAl5puum5sThPX1aFA3rxcqVoqmGYyDtRBkU9POhzsBh9SG4W?= =?us-ascii?Q?RbVxSyLC99E+QlGm0QTs4bL7Ukxgc4qdcfMFEplVwzh4IwPjKueKb5wrx7xU?= =?us-ascii?Q?ZwYH7sy+v5Mgb3/9547IjS4ueOVAocHbmTgNrfWD9EqsqnKnENi8bxfnrIYF?= =?us-ascii?Q?6eR4SP71m/ZNQCxhm6j37Lj4pVnKcNJpErQ6n/aSPM7vEazX6adRdBpszahn?= =?us-ascii?Q?jdNQOSu7FoKMYlpifUBL25nv1TR5mp89Q+A3RrIqjOK20nM+UWZwZZ+8NBVT?= =?us-ascii?Q?tgyigoth4hoznv7KDCtFHELrPwM2rHEbzjz2Z1JVxQsm8LNabRd/mvLLwBfc?= =?us-ascii?Q?IqSNQ5+lnuCcPsxSJT+0TXbyiP48i07FzMxi6WtMKdXNgA6mpCQVimiAr0IZ?= =?us-ascii?Q?NQ+iZL5W6m5AY06W/WjZ59KbcmXvacH9K79+onuI9GFfxu5Zx/71NVYww3+h?= =?us-ascii?Q?WmL6+eUOC4kRXUgPBhs1qguNFrYL+9aDblupWPola8KRug3zqZAi41wOtkzT?= =?us-ascii?Q?0iWu41JYRyI180nKzOdNR/VKUXvH070y2HhFLmbxB+hsDuGmUA6DQZ3ZLJoP?= =?us-ascii?Q?MNVH4ie5gFuvux2OoZ1NUYXfJjilImDI6Vy0cFZAfskcSpx6Q6rzZumrSsM3?= =?us-ascii?Q?S1o1AU37YSa+/7djzpkERtbm/ibWGTXB7NuC6pP0TCtIyCqGnrDHpaJo8o5F?= =?us-ascii?Q?3xCzF2PAtIrqEo+avrwkFTgNw2OV5LIPghNPqj+sCVl+clbImn1cnDWn6XXh?= =?us-ascii?Q?W6ashKrAQcJKvf6cB1EVRmqbZYh0AZV7fTgj1Etgacti2F8J7Dli/mbgeiWT?= =?us-ascii?Q?pRzdkMgWhboFDP3/k3EKjeLpqQpE8POT62PfLeTThPdLxXVorV5ChVVj/kmV?= =?us-ascii?Q?batWvS1oQmn1n7YG97ayyZaXALHXuLI+IgTEkMHZZGjjRRL+k/T8vRoXxRdW?= =?us-ascii?Q?sFDrKvz/zrRhUYW/cH2FA8h/Z+Xk572F6h7lP7n9cdhqyaC0zijZoIQSJoPe?= =?us-ascii?Q?HNbWx5A4DObLTq84/HPg87tAbKaQKOarMwcv7TT4HryV6squTOC9AvzUOK8A?= =?us-ascii?Q?KYJmgxkapB0pROA1IQusAX9hDrL5I16aJdTvBow3EeK30WZMTFfXYNT+YHHC?= =?us-ascii?Q?y0I7vMEKzKOSCqNcbJe0c0r5SpR7yk549hvyeI7RzdAOxnPzKdJbC5xpX26n?= =?us-ascii?Q?tImjp4oINCdy/frQr1ec88d275Fn35hzKjmf2Eq1ZO0xegRUtNRmzjuGLCqD?= =?us-ascii?Q?PsipEpEc2Yc8kUhmiz0AOg0vCItKkY/aQdbZtSn5c9wa6wJQNO7MORveemYo?= =?us-ascii?Q?UilPxakvifHc668uLHYMLhMLbeeELfA5GKyxwf7WaNgVG0NmhtRNNeloCAwq?= =?us-ascii?Q?mN3JUquJWiBxcHMDIidKYFwV8OvHMl41uKAGgZHln4eNgjTnGcKY75dQLoc/?= =?us-ascii?Q?lGPigt4HWCRiwpLQ2/RrznJhUQ4KJTfx7X+eeNnZKaOIsSBAVh535uPGhvei?= =?us-ascii?Q?+WGOASsiqerICqn7hYbfhJTz5rbcjjJvUSVdtlusiEDj+A1h4FkxfIhk2kog?= =?us-ascii?Q?S+rZ0alBR3xqJa8BcLgz0wc=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: idJF2EESqEVegcyUv5ELQJ8fl7mLAa6q+Afl21R57Pf4zOUw3qVDeFyHFqPP1PgME3nGa7n5oo0E/gw3RwVXb7pT1JUO5mXO0JoyRcaA+ntLz9tQr+z4Bvaz4rRON4GskZkAtVFqSI4pzOFjv6w7yKiL5ELmG8Cyxh7GB4lnco5Tn7yt1ulnz//e3Ec1OINgekXMaV6ZRd7yNmV6nI13BKkDElXBtH9LszFmjZBcBZDajk/+4a8/mx5RsX5BveTpVieCJxD6y3tSb3l2DESxMNnnBR3mWrVtTiCtZEA59ot/5z6q4bIpxjrXaEXxY/F+g13/1UNbuGCHNVdlUgmDFHujmiPJzulFbi0bSNh2idANzKiDo5bSTZdwKSgoHuDnaJxpAEXqZ1P5RMVwOSmedguoPBhBAC70ryQBRc2NvuLj7WDnzwchDoMS+wvr0lfaOIX7YS44LB0lDe22V5EuGhMWLfKgS6Fb66RX7Xs/ZM8/OjfQ1hDGaIBA3B/1ihBIBIqUkPGr7gUzdSYuB5hgTpO0rgqAgt3uKE3p8oprIhOeB/4fq+lBM6ww4Dd0Hb0NNIjdLFLhG9QAH5+9rHemCOoMs90tTcxBYswX1XmCAZo= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a1111f5-c4ab-4685-7901-08dc8fd80512 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2024 20:48:34.2050 (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: OPuKw2g3Wcrn/v5DV3A+BeRNOONaNRgLR4d2uH6daNe5qYwSpUlmcK/cBayKQtvgd8HgcPoG/8aSZF/TxbVVE/ATqmBQKZUzU/3i6T9Fb94= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR10MB6465 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-18_04,2024-06-17_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0 malwarescore=0 phishscore=0 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406180153 X-Proofpoint-ORIG-GUID: 4K9HPRc4i9ptI9TLJBr2lDursMnWy7Mc X-Proofpoint-GUID: 4K9HPRc4i9ptI9TLJBr2lDursMnWy7Mc Content-Type: text/plain; charset="utf-8" Users of mas_store_prealloc() enter this function with nodes already preallocated. This means the store type must be already set. We can then remove the call to mas_wr_store_type() and initialize the write state to continue the partial walk that was done when determining the store type. Signed-off-by: Sidhartha Kumar Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index f6a09bb7b291..634d49e39a02 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4027,9 +4027,6 @@ static inline void mas_wr_end_piv(struct ma_wr_state = *wr_mas) wr_mas->end_piv =3D wr_mas->pivots[wr_mas->offset_end]; else wr_mas->end_piv =3D wr_mas->mas->max; - - if (!wr_mas->entry) - mas_wr_extend_null(wr_mas); } =20 static inline unsigned char mas_wr_new_end(struct ma_wr_state *wr_mas) @@ -5590,8 +5587,19 @@ void mas_store_prealloc(struct ma_state *mas, void *= entry) { MA_WR_STATE(wr_mas, mas, entry); =20 - mas_wr_prealloc_setup(&wr_mas); - mas_wr_store_type(&wr_mas); + if (mas->store_type =3D=3D wr_store_root) { + mas_wr_prealloc_setup(&wr_mas); + goto store; + } + + mas_wr_walk_descend(&wr_mas); + if (mas->store_type !=3D wr_spanning_store) { + /* set wr_mas->content to current slot */ + wr_mas.content =3D mas_slot_locked(mas, wr_mas.slots, mas->offset); + mas_wr_end_piv(&wr_mas); + } + +store: trace_ma_write(__func__, mas, 0, entry); mas_wr_store_entry(&wr_mas); MAS_WR_BUG_ON(&wr_mas, mas_is_err(mas)); --=20 2.45.2