From nobody Thu Feb 12 19:04:02 2026 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 9CF7413E8BE for ; Fri, 7 Jun 2024 18:53:22 +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=1717786404; cv=fail; b=e32y0bEjPXwnmHo9X78PVraeTyStFsjsu9dDWNd0R8/B949hKUJ5kdriPzB3eVbP3u0YCAfEprx74ojTqPZDxGZ1QHbbRn/4UZR1GoMDWc6MoGblhKZf36Iv0qZ45EBtLrIuo7X2of9AsKl54qPD6ufd8HnwPngIYjLmmyfoO28= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786404; c=relaxed/simple; bh=lDABn5SjPNrxUvSQc3A2HvzKzQmvC0N4sLlSBKKZ130=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=Ex/QwRWXcARY7F3s+9G9UolxFaj1twUWhlxvIwAZ9KC0dHZbrtquLLCJpUPxhfvJKzEX9MHulkI8tfwyTRapa9U6PRt1M9donJ4sNATeK94XqDG88yvMB2mwCSQMyN7eNsEUD7wrrCq5mg1mo+5PbmTkRo0bUIRYRz8pFKh7p4M= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=IRczB/Ya; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=fnL7zQLN; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="IRczB/Ya"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="fnL7zQLN" Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuWo9020011; Fri, 7 Jun 2024 18:53:09 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=LbRUqzQTGgReNrj5x/34j4uZL7gNsaS8wJAQGdq1eJ8=; b=IRczB/Ya9ZM+uXRzxNER434FqHxwFs76qofFTZb0cNvZ75Yk1uZ7Cwlg0OHxr6by7o8+ 9xzfiYFKTwLkfwK+7MQVUJa3dwsi44Vkp1RtWBoflx44aBgwKF/IsaJTE9T8DB0L3JkT T1lIU6MSTrH8FVBDVRq5EM5Yy+1QPZE4PChqA0N+eCQM9sHjPTuQxfo7JLGl43F//lKf sPutDnIEO+HdwenR0oFWAnIcw5hSsxJ2P/1H/azxdRK+OWzgsWv/PuQsBQ/p9IrSMLDW IqSBP9U6v4CUgY5KHIMnJlrKNkAXCgYmMdSgW3RY+JBYv+NvjqaWDFS6EgA5Y464HpCQ zQ== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbsye9bd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:08 +0000 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 457I2CcO015604; Fri, 7 Jun 2024 18:53:07 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrjh0dx4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:07 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CqwOvHwXjrD4uLQUWd0ocCSZg5xVEi8Bv2BO14URL+mJ21VwcjFl825+sgSUxGeP1oJGcEALsuhPd8jeHfA2HkQJ66/n4rTBRniEBan8A0oeJ3uMXas+kjGv39I1PWPHMvCZJD/Q8oVG0I0os7Fg5uv1Kn3h9RRJ0hWlh3u3i8kzXXlZUZ2ZW0lZaolMaesW3yvdNdE8XrDytG+nNjiNjmyqvpZYosZKsASabSxkKwYJfN9kyUmuPAeuGxAgulQRFgedakkPjo+QBx+eJxM902NhPSSlxec7lxICni4O5YQ6bwYV6LiGL5rFg1P5h8jcinm4gjZd8RwkpgNCEwPSMg== 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=RIgLfl5wnL41jb17iyTvIN3jYfYz5BWwvOy7B0jmrGnfuvo7tz0Nh23x4CdV/s54aahUjUUh30z38gBID06nZW8olfY1yuGNuAPeovCuu78StCwGHLnt65zmBbIK6VQuFQxbpmL3Gu28iYW6wR8FAl6AA/LjLUgTGRa+7IER/ez+sLPv3gtdBTug1b0xJnHcplLVzuyM+o/F2c8ajIZi7lcf/pJgIGobEugQAMOyufMA8BcgWIsVw2tW3+hMOtqgOg4hSYnbVU9mxWejTQ60Ed/mD3tFa15VfhIlVay0jtfK0ETeRvGmTks4jK1mnkl9Zj4ZBMKeIKYKeoANflUFHw== 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=fnL7zQLN8XifaGc9UWzjg1BgEAb5hANHiIcIXatWRgbAzeBZ/M/i3KLvTiVPLloay2Ryu1GFHzwT0QFp1BLctmrSBjZhID9dqkWozLe74OtmO2L8FIq1ZHODSAAkoUe03ODoxlrx1c6Iy8AZJ60/L3GisQFxaUHbkYs/RKUUwYU= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:05 +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.7633.034; Fri, 7 Jun 2024 18:53:05 +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 v2 01/16] maple_tree: introduce store_type enum Date: Fri, 7 Jun 2024 11:52:42 -0700 Message-ID: <20240607185257.963768-2-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL0PR02CA0055.namprd02.prod.outlook.com (2603:10b6:207:3d::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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 8ce4634e-dea9-4af3-944d-08dc87231095 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?M4veIoouNrwZt65Cs/RQRWiDLqSGpoynm+7xBylhw7kEeHJdS8cYvaJOjjQ+?= =?us-ascii?Q?IboRyJ3XXhxS6+qS15vB22FbXd+GSkZ0XIYEyJGe1fdBt03fnb7cGbSyj+9v?= =?us-ascii?Q?F/19GXIY40bYsZ3k1MRNSuPWkvJ1++qwUr8KjxfbW05i24W8HqK5+MF6p0SU?= =?us-ascii?Q?L8V/2NkvuP0v89uFuHVzhQorRsD5t3hdOvgSsPNW5gHwouCAIN4dC1XXAoCh?= =?us-ascii?Q?UXG56DX781W8q2EcVZUA7Zmt0VN9rTDWpTbjOio4LPiuvh6umZ+Z3jmHEpcV?= =?us-ascii?Q?SwfSLT7aE4QKgQ+z1EJxW40t1re3hfcWOJeqv0tKmenyq/oI+rPzkCUvbxhr?= =?us-ascii?Q?iWGbqpAFb78lfp97Sbx7CGsChHjVw5Y71FeL3pj70wiJukmjmHxn9n3jDy5l?= =?us-ascii?Q?QP9DvGv3PWllvEZkSu4pyrArXnYhlY9oGA/IhqXzV3XJRo7v3y5pBqG1yxiu?= =?us-ascii?Q?wXXkaL79pj8IvobAvrGSDwyGLWS2oQsEQw828AB18COxuufljzJeCU+KdGzq?= =?us-ascii?Q?woTaO+xvdLHmV8ad70L+zsC8CTaWxWjkwU9lJ1ECFQR9nAX2tLNZEEbuDP0J?= =?us-ascii?Q?7/uPMZnvOZfbEEu3gfzUWbLC9HdnaBGwJvEM3V8gemVwFhwbi6PMHdk5ull6?= =?us-ascii?Q?h/+ZHSNn2fKk+YqDHfrccwqRCO8vJcrD5gqkARvTyulIyXAfG2SLId9HdPEb?= =?us-ascii?Q?OnLWr2zCOMjNUfuSpLRd6xdNO574t5wn8o399KFQAjBeIyg583j3huZmmLoI?= =?us-ascii?Q?NEUlygpMB0gV5yuE22mz92nX2wgobkPzJRd1JCfjpleYc5k9snJHzJrZ+o4I?= =?us-ascii?Q?ikuwnrzfm0DhJ7kSRjn+bY9psYXYM1FFt1oMjR9vtEdidd8HOSdnYLxNIa8G?= =?us-ascii?Q?yXqURvzpMaXaVkbdWFATozonZ3BFS9ohSZm5paVFivdGbS0iFKlv0DyLZqpI?= =?us-ascii?Q?J1LZ1eN36vSegmFNeOtimkKfkpcfr3O1sRgLjrVloD+aCZYMPBcen7yAoYlT?= =?us-ascii?Q?ngHPRu9Y0dsIfWoOcEiR7kpVP/sUdyz44ov/pei0HHMjo4uqTrcvwm36kf7f?= =?us-ascii?Q?vffEV9o4JM9uxP9XikZkhavlXduM2SLb4LZhOgHmGlwiTeoVbR6NXCmGp0BD?= =?us-ascii?Q?8Jm9MgZ60GOw7cbeHLbyuRlRDhGYsRjnTY/LgaTdueIpP70rh9NgUdHKTPl8?= =?us-ascii?Q?aemkHyxapbolZM+g3UzoIdXKPjJNfJ8UaBB7uAi6R5RRHzpD0+GWd5B6MT37?= =?us-ascii?Q?YyDclbJeK0FrxswjDP4m5DGN+1a3WZgr4w4PETcwkR45I72HgMhIiIcf6S2H?= =?us-ascii?Q?BvfJSA8kAzvXLjH6VxzFl9lu?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?MrhQ2n5ydVqXd3V3eLkeMGLU6LoQ76EKKsdyvtQgRSlSgZNi/e5DqVeB5MoC?= =?us-ascii?Q?2mbJn/ZiJfkenFFZ00rnyo9a5jGIOWiTwvLljRLOUW4qW6OxoRphRIxKQS3N?= =?us-ascii?Q?erJs8zZk3oKHyGK0l1Nr+O91K2G0fhggn8ueUJdK3DrLZ/uPbyC3mB1zuOyi?= =?us-ascii?Q?exRviGGQOWFNc/6IYeThEZeES7j79qdezjdWirMfwdg9VZQSqc1+L54vfGh8?= =?us-ascii?Q?Ijo5tDr3BSI0o6gMhgX9vvvZq3ZkIWG49CQ74zPaKCdEQydb30wB7u0BLT7b?= =?us-ascii?Q?Aq4q2t2KXzMKcvBaOr6YNxevHPR+CHEnVkjC9+dzzTjQ3RMsfdoMqKBB2Bq7?= =?us-ascii?Q?z9li3I5ccJJKek32yPO+phh6mfE/RX5+knLImUADH8VUx0E8Y2e+2n30TDYL?= =?us-ascii?Q?XsZTYToopyeX8WDZDSyhNlmWHNkDeIVv3X7tICYn91hd+CpU6eIsZKVhPXvU?= =?us-ascii?Q?rBz1+V888tJuFkujp9gaF4LcSQ6+z7WRM846c64EDGPZiJ1AKm265ZI/C2BG?= =?us-ascii?Q?/tv162MSUMnPxIrCTv/VfvNV3YiQtZra5MYsMGWbKYb/qMIw3kvBBL/Mj1/e?= =?us-ascii?Q?SYGtZN/e/tyLNgJlvkxZ5bpJHyJUs4Qt4qCeoVGuID21c+WS3isY5XfBUAKa?= =?us-ascii?Q?Q7Vu+8MOX2d73FkQiHpYDqXhl/RoZs9W+5lDmH0/cTPy3h9RQGzQvfFeTtge?= =?us-ascii?Q?zZSLceqIqQkpAlWfAdz/Wr9Dp03QJD5MbxPPpywChRYjpH8TlZIAHvQcdcjD?= =?us-ascii?Q?8cHRRhMk/AlvZBAAYEu1h912Y2amiOd4xqD5iS47cnf3WE0+kTQj/4v25gni?= =?us-ascii?Q?/tI0XvuSoJ+VWz/rrqlul+RXEFb80jSwTZc7d0HzIJq4WjuFm4gLKbyzj3mN?= =?us-ascii?Q?qWOdIfInVflbhD284mB1yqx7Zg8gFW2q4QDwA6UzsP1FUqYURW6dLd5Jtv1P?= =?us-ascii?Q?9YjOjHucBoWOKs818lNXFnQFQGOdJ7msUdDcVMB5B/P2cZ0uQ8A6BXdT6Gat?= =?us-ascii?Q?hU3djEwCEDAWOJD97rDXWwKj/5j5t8hWyQZDQzEJ/KueGYxFvTjpYp1W9MRM?= =?us-ascii?Q?51KEpxV5XP8IuFh4GRcgbr1kCmUbYI2tCupeaIXt98BlzA6aqxwJzmQQhvWb?= =?us-ascii?Q?k0DIdyrHUgFXTXudpN9J4aBECMOMx3mLFExz8TKlnjE3KwPwCHrTKHscI0PB?= =?us-ascii?Q?RhqZUjAflez7XVS+wiUf0XEkdidrZmlmVE1cUnX1GLaj0AD/VfsGgio1YUBI?= =?us-ascii?Q?vldznvWnbNPutMr6PVgohakN96gSXjCgW6q+Rgab5EY+kwjsbVed2s9i6KQe?= =?us-ascii?Q?GRdsdPPTiUDhASh7ZINMZpdB/cQZQg4WXSalJKvl3c2lhOykV90NWeU8iBa2?= =?us-ascii?Q?BmVMsYpF1szrwlAKAgXM0kssW7rmHj+Ya3WSuuLqtP6AeyikmVi4K48WXlOa?= =?us-ascii?Q?qbMJvz1mkt4DIi9db5Lqf9be3SrHIKRGXLI7QBcJDL/yStq0aDaj2W/CRkGZ?= =?us-ascii?Q?aM7RFa/IzYYMCo6TJLhqNb462W95hKZfuUn3nPkGiRO2V67SuUnuOT/mk45I?= =?us-ascii?Q?l3VyKC778DW2Nss/O6VgaFO3S4/hTJJqZC4ai4l2mpOQLjAt0/y/R5ZIrtbC?= =?us-ascii?Q?gsw3oEPrFRy/0u5lpocMilY=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 1t2Ce0c2UI4WczZQOsfKkFMntp5cBwO9NZY/iFsqF3rtJyfE2Gt5aV6BHmtMW/sKvfDPy1c6kCzNPS6vnmSxmwmCFf0r5RAgSpj2dqTyyzbhEmHjGZ09eOi7nFL9zwoLHJdg/43I7aOv3WlAcscV6sVPO8rzywyEquV3N0NK3n8sMX5XS0jQYEWWTKh4khWz2gLamnpksFvRctxXR92mUE7pQrODl7d7xu5CeJRxLr2lsAIjsAJAlxvahfI58++5YN/H62TC+pgXgeCzzy8DYU5fl4tfBA0NdzzH8By5xj9Z8TimGGkMhVUSE5iarYRc9h4Adb3ON2Ang/YO5snqeZ6etK4nOh4QZtXIVwqqK6z1BiZzbkbMAIaedc1Y3YIMfC6Wj/nxBQaczuolXDCeJblsGxGBPDN/6KLfc5g3cTwbCYPsmfNkPKntTvf/w5e061mjhgcMG+lcsQx1AvbOat9woTb+Ns478MZXMuX5GynZz9S74hUjyfWmXL1Dzvai5Tcj7XMCtghOZndJaDwUJne64voFKfmHwWEGrJeUJciP5seXZ/Qij/EWa3yqj+QqRk2i4otGLQmOHhy0MOTiP+kocfGRng2hEb4lEJc/RSY= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8ce4634e-dea9-4af3-944d-08dc87231095 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:05.6911 (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: 4C5QC7q7PC7G1BATfw2UUpNzE7uYTJQnVeVFZgXvKQmG5nUhH7HeMNUqUOkJ08hTFPxXAeIgybdsc8N/AMYl7sP73KEz7B36YWAVHE6GAts= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 adultscore=0 bulkscore=0 spamscore=0 malwarescore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070137 X-Proofpoint-GUID: hIZLWV9gHGRM7VKUA9tebrIbWu-7Ccgt X-Proofpoint-ORIG-GUID: hIZLWV9gHGRM7VKUA9tebrIbWu-7Ccgt 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 --- 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 Feb 12 19:04:02 2026 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 6084A13EFE0 for ; Fri, 7 Jun 2024 18:53:21 +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=1717786403; cv=fail; b=Y2bqwDQs8IywQ0TH4tKpU3G4n2RFaQnp/XcqCCTIxvQstrrZndx4luENGSoyZZDM/V6+XrJR48A7rHxOdTyY5TMUFGWA99OQ5I+0MQPiFVXGsDd6IQkQKGNC1xosWPoVBm2y/aUE5qGQPwmgkbq+C3cYsB4KS0XK+Y1Tm9j37cc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786403; c=relaxed/simple; bh=W4W4OB2htE50fVmGDGbCW5xtZ3NaCK/dngSRSfiAB00=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=PpYhzaUcgohFuxKyNnGA4Iyb7ix5d/J9wMkOp1hDGzxT4a4X9uyQxn5jwaQVdtGVR5MUeaOdyW+J8czpt+/0uHrNBd0zlZ/tjFItkHqdsMImY8SOrm6r1dreSHOytWX2KsYq6hUYuGEhy3tloVjQmxPHgNAanel7hRBEHUuubaY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=SrZjdlJS; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=feqNBvCJ; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="SrZjdlJS"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="feqNBvCJ" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuUSj023582; Fri, 7 Jun 2024 18:53:11 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=R5DSk3bdiGslX9Z7wkh3/TmOZQ0ej4zmzvHswv6wkU8=; b=SrZjdlJSQi0Or8bhoRBC3BOv+mKPrkFAY2NocLf8u/dww8jAlvLZIAOhW2SBxjEU+62c rb+yTnKewUmUS9NApWXkHzYNLUHAoDa+uc9WNOCFEqCH4HFUCGhR+jBkYW305V/iSp/K KPpLrrKq/yWgun09pgcTnLK5ZJqSb8mzsomViSB/mmO0iot+vW+lhJtb0tslM3D+adbr gwgnU1qxFBAM0NgQ1qVAJ08HZY4nkuUaAl2NIM9mrG1oP6yBF++lw9E68diftVxGzz0i S22mpAQFB4cTFxyCEb9vdeIm5Stj7z6oInJK1WcH0/3PBrFFBVjAGy1MkXRkyeqFL2fr 1A== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbrse5ja-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:10 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457Ik5lj020634; Fri, 7 Jun 2024 18:53:10 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrj6xy8d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=girx4l3d2GFdHMlJTc7Cst6oTS3+8ad5+tmIUhxctlnnSKuL6NngvXUWlDWJMO/LlI524mBYKLTZLU8FF5ND+OnwCXcCwgjJfgTD6RQxq4amojsexa4tlyAuX/inA/cclg8n2mBPoR3Kb75y63OPs6bQKogpoISmx+jG0wF57UoQpDjR/Mj9PKa9pPd243lVLLTuzYUn7VoLOtckH6TvhcwDA4xcZ/HI3MTlWUOGcTpX8oOjIGAUHf1MTMc5415faNwycWskLi1cbH1c+EqpOtHm2c16PI0rbQq9Ep0ob8tzTbt4gzYCkxJ5SnS/tOY8t8QUJq92GoD4vOEGJDhFhA== 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=R5DSk3bdiGslX9Z7wkh3/TmOZQ0ej4zmzvHswv6wkU8=; b=RHwoM91F5A93wtnWA+ovRRCeIZ9R6FfLZzjn+HQ36nrfxkx+u9qa8jgzeBiDyqtQDGqJN1MAdRJPgN8zl6PpqF6+kkhuG8Lt2oeCqgsOK8e1OD3YrvRFXZfqyy5CHMYrp4QLhvI8bJpqCA7EyKgE/2Y9UGeRKw8+3AEWTtKMOE/pmjSGhT1iHX23kg9lRRY4JOeiUrvfxR/cX7Dpyp8NYuJqaC+5+WDVq9au+lw9kHlRXh0enTK8lhlj4f4X5nbtAZnPJz9zkKmFQ+EH6p47QPGPat57N4M9dXbAsNZW+d9I2V60UUV586oiKfxKtN7P3GAIbE88AaCNIp9VNrCNJQ== 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=R5DSk3bdiGslX9Z7wkh3/TmOZQ0ej4zmzvHswv6wkU8=; b=feqNBvCJ6Q+Lppft7sRsNeeIA+AHvBYGIfDlcOVMwYUkoLRMN28yJcCH2Rjd7Oi0lVQfW4CMUzDFd8LWzj02RT4u+P0Z74s0h1u1qGfBJ/EEOpZI73sL1p5m3V7UjjcGAVq0FcXpT5DjX/zlpdBl8muYujvQiFAO7EUB4Os1vxw= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:08 +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.7633.034; Fri, 7 Jun 2024 18:53: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 v2 02/16] maple_tree: introduce mas_wr_prealloc_setup() Date: Fri, 7 Jun 2024 11:52:43 -0700 Message-ID: <20240607185257.963768-3-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1P223CA0024.NAMP223.PROD.OUTLOOK.COM (2603:10b6:208:2c4::29) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: a665820b-41ed-4c94-053d-08dc8723121f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Y36SVGahmumVXVN9w/QrGYrQDQZY66ynzTEN/nwNQzgYb67YQDRi3AeTYUGd?= =?us-ascii?Q?hQ3UKRHDEpXfCmwT0CCjsBYkU9OWoWShyVYbAMDV0+3DJ1vRWBhIXxyE7dZL?= =?us-ascii?Q?B8pezMkL4DiTFrrcm/zNRk6pS5oc36KseGL3Qfzk0Jvc8LQ3BBD++vfFUkPz?= =?us-ascii?Q?rReeAiBfhQjq0URJEvh6HYqCVrjZCNelkfiyERPhqOzszykQ63iUcmjHd5Ot?= =?us-ascii?Q?0RDwgcC3Pe27VlNrtVpkiboRPjUbxO1+JnZjzstZc442cW27WLwIETwQi0C0?= =?us-ascii?Q?XJ/DZ9KLxaHE8ex0wlDlFv9jcGIUQ5YbfYlUheenPTJSvhEnAyJFQNimFz22?= =?us-ascii?Q?MrjPnbuomCCPaAc5fFpjGDKe0fP85IPm3JVgE4T/U3YmOAiocBoTfeXZQWMa?= =?us-ascii?Q?wbT25sU745FhMUQ7BW3Z5Uzdq+sCchnG9Fom1POlr2/7BBsx+p5CN1iweAh7?= =?us-ascii?Q?5FnGFEaVwOfPASQck1qPhl4lzGBOugZVBsvHVIlzkqixA31SiCd2mpicAKb0?= =?us-ascii?Q?hOU/Ju/mqOtS0q7y9vvb6zSNJDfrJIDQd7sL246MG1xmwS0XAihDlO0Y5grr?= =?us-ascii?Q?wIh4f5AJPcccEr4L5p37UPZrfjDBXkvDbh3+tqje9ynHGrMVHevlaTm6NZv2?= =?us-ascii?Q?pRZ8B8/eW62Yn1T5Gv3nO4GO+kAl4rmqsQ3mAD8yot7QqrT9r5/S7sIduNpw?= =?us-ascii?Q?w7igQLwwP9OMWTmpMXHplJ8axe3wXXbzRO8hCcwaB+XPdstQ6wkaZd8j38JQ?= =?us-ascii?Q?olI95wqoWuuBAnP6P/2ySxBR0bxiGpxnjbcFs2vkidGbc80shmJ9VLuAadlr?= =?us-ascii?Q?iAVAd6LxYip/xbHfdSWPFROY3RWy7AzlIb8KR/omARGA1AGe8mN98TuohgSe?= =?us-ascii?Q?7LOVhhoeroR270QTLk1+aWJ9O4L5+CNR+eyYo/asJXihMaFokqjEyqC21quO?= =?us-ascii?Q?an24YH/Klaugqo3cSTBHkpmzjU1aHC+r3fKeGQ7wmiTUe0oS35El4mYShnG8?= =?us-ascii?Q?bRn9qbgVg6MtWYQYKVz8ix6qDPOXslo8/699EtwPY4QnwYQ77aSZy7EYP/38?= =?us-ascii?Q?Ahk3meP1PRRFoMccQdQByVHI18IYBoiuZHPC8wnuTIca4G8aoTkjigxii1cR?= =?us-ascii?Q?ASTJ6ydQGI4w6VBdLqFXQ2CsrThH3++705XrCLeDwXdHgo1PUlNZIImWgTJG?= =?us-ascii?Q?6wkki/h2MPV4yZXdf3wdQXnPJqQfvA4XBiUGukTecXcAEag9VnJJOsQ1ta88?= =?us-ascii?Q?Dqm/emZg5E5uCyhkIF/tb9v/hrhvfTEQA55YfWWsAO6jdZxE2YB5t4MhWH/T?= =?us-ascii?Q?rMt7aO+rw6Y2oeh2bWFjQhmj?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?WLtB4uZA2/Wf1iwUa4Y8fZqKKpq88SxbzBrqzRVKHnMAXaX3WTeWP5u1QjaT?= =?us-ascii?Q?lkqeC3cbBE9sm09Wq1qJZdbRsivyiWaS4HqfwXfEYj7u1SFtl1xPaDEHMfyl?= =?us-ascii?Q?0dCQv+/rSnBUALmT9XmKujzVkSp7YSbw9wgpFYb9l4CGE+o8OJ958zPuLI0D?= =?us-ascii?Q?5E41to+ZFILWZUBBptZb87DON2CzVcN3nvE9iqmmJJZdyzgbWCqmVVFXtEWk?= =?us-ascii?Q?AZ7MvWTAG+1MWTOUsaTMmxH9f0/yZng4U4SxAcKcjbuENqaWLG2qgtVcMetI?= =?us-ascii?Q?LhZgm6JYM6AM3S1YMf0R6FJBXGBDg0Hb5zVoGDLaYJqdIcWM45smrjrRFUwj?= =?us-ascii?Q?M5PiMyrkfbalkVJQNCZZJ8Yd4cEGPKtZsdCmay6tlIj6EA70AEMd6AYSAjj8?= =?us-ascii?Q?WEamPUOQ03xjU/xOoofpIDtLwR7XzlOaFU1OPKa21RTth2NmlLW5QBzBAHv/?= =?us-ascii?Q?lFmFIrQep8aSqCTqm8rHk3PVCjflIEkRQIvt8ATzJF4ShcY/flLkBqDVUZ+q?= =?us-ascii?Q?lJqWXf3CyPWcs/uGSIqWvqet+0sFlZn8auBQ1H34asO6uYCC4dUpAU/uqSsG?= =?us-ascii?Q?ei2zh4PbcW0hH/ZYhbyKpfnIRVpY/rFQ2b4NS5m3GtOIxWmhGOBECNTj9v6v?= =?us-ascii?Q?KbtrXknetsQHO2Kd3S9MtHgX7ztfukvIXzHg20eooyPuV0CMpfM7osYM/PdV?= =?us-ascii?Q?kqjK5l56Ja9fEXULTok2arKLTIPTFwoUAn6mt4QA+CbXqt89iEuCpAKGBNqK?= =?us-ascii?Q?C05rytv3YMltRP/pNmt8+LMYWMDpf7YOut5L0ZK+119Vq7+SmPBpctAN+F97?= =?us-ascii?Q?VrKDtpzy2Tlif3r8/B19j4+WvLOUtxJCnY/N33EZI1cl2x/tFfSZta8d+AeR?= =?us-ascii?Q?OEMw2YWa021JKzYXQtXRfuPNtnNqSenwug9ThQwJ4LCm+KCQn6y4fQi0HBYa?= =?us-ascii?Q?Xudm622PjcsnIhFKmV8B8TNbeJDMcv0s7yyymGJOhNzgbFw7KkJRDCrbrR28?= =?us-ascii?Q?nhYhaUE/CBXP83Wavclyqg2KAewDFoJyGrOcJsT2sy+UVVAuTLtTseYnTXAV?= =?us-ascii?Q?9d7kk6zgdpyDGnTjMxriMbABJQ73aTOYQ2BNjhgi6OKDjyWuvqUYVcZ51nHg?= =?us-ascii?Q?QMJWNj97/3phN+/jRl+KLjtddWJMllSe1FQKwd/ELft52HLqauiwJaP976cZ?= =?us-ascii?Q?v4dcQ0PE/ABYmGeANJ0WKa1gq3vfwlues6zngFO6Poy1Nkj0DEzXxwSc/HWx?= =?us-ascii?Q?704z7//2RSCzQSoPOxx+qc+f/JEJLyjSq/qMNwL7zxsN9AYwgDvdtS4N4Qoq?= =?us-ascii?Q?M80UbsL4GXVxGuINaeFAaThhmF7peWJmRa24mBxi/8ge0LQO0Hk2m5N/2aqu?= =?us-ascii?Q?gd39jbO0Sh3RtdH5yZkj+IcrODYURzRrpTJC34V4PnsPUBv/WX5ssrjtJrZO?= =?us-ascii?Q?5JTJQyagNUhjHkJIadLMFfDGTxmrmHZpfufYE1d1fi8Nk81d4Cf8QIgEbGSL?= =?us-ascii?Q?gAGnIAk/p8OlhcdKUeYK1OcXBt4tHqX27KigMhQlXl1G6488AL/711G3EFvg?= =?us-ascii?Q?jyo89ST+yYnofHPnJc8HkBQhQarsni3DI9l9CVifcNfeuxrQOPyy9GWQH80m?= =?us-ascii?Q?2h4ehKdtJyTLyFIXp9+gWZ4=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ClmEHYhk3Qk6clmAs/K0nudBEz4vpjGzL3rgF7VJYDR7+zMlYy0ZsVRcUDJAZ6WgXmX58gLeOPOlekxhPcoptIdSbO1tNtjh+Xp0N6Y2aXQSPC/FgAtDZCo8YhRMct+Gv490tmOPz61aw72GEJEPxGtKlIZY60Yatjse8A4kJ/ZRF9fzEsaNgGFWz/qqYKooeeARm7Nvr2N7WfMnp5ktlV51tTETPBLOjgrOrlsyPyGE0qmskUsQqBaztJif87yE0KR4kl5+Axi2aIIALIkNv1Ic/ml3MrOwLp5E1Sde2OSg4sFBITPSjgA/HLzA04KugmRf3VIJ9NRvTVGRKRozkjMsJefOKrs3g1CV1SrO6HqdbseDLf46uqfYzVUIh7FeotncGppIHpPg1JYULkAj2To5uVZvsye9+Pj3p+yU7FBx59wWVsnJn4lvt6J72Xhe0xXW9qAQ7WwwzGC+GdlDRpXIGZLPXxVAzVVRVdZm2cyg6dyd3S9Z4Bx7F3ItwayMniyL1bEnGclVYZLYVF8v1uS7OstAFdQ6qXML+AxK4YBRup2t5rFGyEjcomK7Sw8IfyuvMgEwBYeaMEA5zhLE1ynByEOBgA9HkOqZMfrWJO0= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: a665820b-41ed-4c94-053d-08dc8723121f X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:07.8644 (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: LGwA4+zctvNE3gUkzfdRbamTI1FL+rDRDbdeG32WcTOHE64lLB44aRnAJzuMCAYBy9MfFiwJY1KrGvVxiskeGSTsfDMgiMivo99S+Brg77o= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 phishscore=0 bulkscore=0 adultscore=0 spamscore=0 mlxlogscore=999 suspectscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070137 X-Proofpoint-ORIG-GUID: y0HlS3sp1E0qKoPNvEr7C4JUB0XeEYbi X-Proofpoint-GUID: y0HlS3sp1E0qKoPNvEr7C4JUB0XeEYbi 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 --- 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 2d7d27e6ae3c..ccbec0f66562 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5402,6 +5402,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 /** @@ -5507,8 +5514,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 Feb 12 19:04:02 2026 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 E26D510A24 for ; Fri, 7 Jun 2024 18:54:23 +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=1717786465; cv=fail; b=F3jcRzPthxR9DoZ7OJONMv4sJt3Q03/f69v7px19EWX8BzH00pqJq7SIydvtfru66Rnb0LP3b8tFU3xHzaOZCcHg6rA5riOH2GW8s6cNAge45Ec/C9uSH+rxCS2lHw7SnZAxt3QJnjNvRoilfFr3flBq2l0U8mprffDY+dZI4Vg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786465; c=relaxed/simple; bh=fuvIPhajJNRabpEHZzbmIovAgzCxH70E2kLeBAtf2+Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=BSTZkLnuEcwq+Dl1REw1RjwMa+OBfcLFmhTdG+Ib3GOw/GtHdPqXzuqXppV62mkQXKbheBogJiFaOtuDeuyrVq/U3wIkYtMx2UjNBE9kTVFIZDQwD0yvKc4cAZv1tILkVrQmpuO3nP4q0j9v7OWhQ8OcoQd4bVDVo34hTCZ2BmA= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=PO+2rqbe; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=CeYSPjwK; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="PO+2rqbe"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="CeYSPjwK" Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457Cubmj015442; Fri, 7 Jun 2024 18:54:14 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=4/F43IRAGhI8ljuTq8SfDFEQovm5z5taHx5vw5SWya4=; b=PO+2rqbeAyNn1P3F6/EaytYEhFx0iAtvU5kbbF6H7Y88+4XuNd458/qsa51AsaCoI3/5 yTzmhvZFTgmyZtWcfeF9k966s2CxjY+KfL+YixfVeqd7wYMubPafuorM/DRXXznVsgNS 88z64U3FDET6x30EsE0PmL9DAg1/WFwWIluUXNxudlhRRssBK6LD9Ly3B46SV4ka2COg qEcPHU3lpyIMHkmappwA+uUs+09J+lZhmV6OBJD9SGqFQ3Rhw8GkFwb5PRyaApN2s4DF 1Z9GUUbLBu1CU2sV9NMFyGYO9ZoKQpGwj5HiJAVJ9wLpA6VMdtqfotrpMbkyu3mc647I /g== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjvwd495m-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:14 +0000 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 457IojwW025263; Fri, 7 Jun 2024 18:54:13 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 3ygrtdbxts-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:13 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VD/Z3oaw47JuXBNsg4j4V5rnL6M5zRo/lOqN7kAgDfEjfMWnxV0PK5iEnMVjB6NqhH9pUj5C6MGGc9LyWsVsXCVjkrjSMzRmA3SYYuewKxSAyCVkRkmTxQxzQA2dz1+NRMD6z8DejbjFAQACC5Oxxxq6pXq4qhs1D7iJNHHEzeEYA/M+ooH2qicX5CBQphjyMMv/Zja4HcatQRzMJbQLriCBTHlDKYKgc3I4qeG7qgyww1w4nRbp/9DN+rVbyNcVsLbabSD4zln6Bb+rSijSzFI4IM/3Cwq8zh9sOnb03vD+R4Y2xyvOb0jsInUpT7ab3eIBZKuu/TfNCgUU3MzgTA== 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=4/F43IRAGhI8ljuTq8SfDFEQovm5z5taHx5vw5SWya4=; b=ExjLqBOW9ae+S4HzqTqtQathKu3TOGEwMHYf4/dLskvrXSpLoDt0ttNK6OUO/KkI0z0wUoRvn3bqEglLOBGtqHrkkbZBX4Jty89Qroxtco8jg5pcR9/e3vT3W/5Bf8BzG2tF54YbEO6dCEFKNp/yYfak1PWdp5n9UUnIICJ0iuuYeZNVxf1V712ggnM5sCVgFkDnWgn/uz4W8Dr6v9fUxhKyKlHJLBnMR0Ye9fc8pHcrqsZ5J1aRuHo2Fu6D/fgCWChkVpmOQ8fW70N7keUJB9VNRgTgfLZIkSoVYpuu3Sbk6UdH25K/2b0xhXzgPs8TVLeGSuondrlWkM6kuWxhVA== 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=4/F43IRAGhI8ljuTq8SfDFEQovm5z5taHx5vw5SWya4=; b=CeYSPjwKXnYzXKDMAe32zqalt4sUP82S9Eibf+0I7C/eNqBmEuEJI905VhMq490XSHMYTbnm3HgN4YnSHSxM8no2wgF7MwcG2ZFw0ynwxO/ErPNXu0IGCpGCYyw2cyNFJN2ablcSJ/diq3fRMk6KNDTA3yzb8WO8OOBVP2RwCgM= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:10 +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.7633.034; Fri, 7 Jun 2024 18:53:10 +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 v2 03/16] maple_tree: move up mas_wr_store_setup() and mas_wr_prealloc_setup() Date: Fri, 7 Jun 2024 11:52:44 -0700 Message-ID: <20240607185257.963768-4-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1PR13CA0361.namprd13.prod.outlook.com (2603:10b6:208:2c0::6) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 92f28d1f-1c8f-4264-ea6b-08dc87231374 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?VRRT/d7YwfCnQma8nJwO2OFokOWGSXpfwIfZitQ8ksZW2W+RA0Au8MmuM3ug?= =?us-ascii?Q?hCtK5C9SNM5Qce+TtRbm5NoBLZlI6xK4IdPOGacz8KPXlr3T15STcFefk+7v?= =?us-ascii?Q?0d5y8rhwxJ/hE7+kuVxykodhbsl5MGArjSHwrtDVYhg244n8cWYceHl69yin?= =?us-ascii?Q?xP0fu3H8Jh2knC28SN9UpIyCPX/YCf4RCvFxFK3Yv3WqnsLg9JIjbJV+njv+?= =?us-ascii?Q?hBZRcK/nIZwbIMiqw2YrAjzJiavO5CEdVI5mcJ8qbmn1SE9qQZZ1GKkH9oKG?= =?us-ascii?Q?ZskXLpTpIDaWSzxuv4KHCiy/iDgIswMthY5SYvRR1pp16kw5MFG02dBUBW2i?= =?us-ascii?Q?9C9p0LOdEfFrLI9W0saooxlCj8lbbik4BgFBgIX5rIo0VxRhwmPZrSuBFGvI?= =?us-ascii?Q?wi3EP9h0vR832kndLm8C1FO5zyKb28RqLDj5grY3omyEmgVrJSidK823OlDM?= =?us-ascii?Q?Hy90ay1qHTxvdanRhiBQE4i0JZjfl8Rpfl5RsSefOTPe4Ul3Bg07zxhhxJaL?= =?us-ascii?Q?lH0cRvKmx+nEciixexv+4mO4DTEhb6FQ4GSjh+y9nAUck4/1b5TN6uvEJzuo?= =?us-ascii?Q?IvL1w9cjQuGkBzHQWP4WIm3bSDaYo4YEWKnQ3v+zl/PT+VWIY0cM6BUbnasj?= =?us-ascii?Q?foSfy5Ny+onfSLVyOE+PRr5yl3pQR57Vk1ybhjK0bdYHtZ62mo83mOm1ZK1J?= =?us-ascii?Q?SRVAhXbaag5bViQBhMgMHNV+MRlAchLiF1ODlfCDFPiv5JFpvvaut2xnrFs+?= =?us-ascii?Q?VtGprMgkD7soDLO5cwfuqhhzPjOf1BjWVNZ6QhVRHUJ1LHtB+eR4Q7+tofkw?= =?us-ascii?Q?g68GiCE+kJbb7NcEmP78Bi4ySEZQ3h/6JzBccEXDVO4CCYDsAtzeNR+RnEmB?= =?us-ascii?Q?CpX06k12CzqbRrK1FT/bufLaCP36UYohc5d1K6OzSgoVFKORK4rma/oGcHLe?= =?us-ascii?Q?s80tAagV8CWGuxqbUbA1MLd5AHxihHXr15rtgqQEM1axdVxhYIwz/iktMtgQ?= =?us-ascii?Q?i86KAP27bmtdVrXcFx9CjlwW9d7N7L7jdH+MZf3ragdur2A4Z+Es/xDgV7ht?= =?us-ascii?Q?SwjLt04/hD42CsfEJWXF1jTkBZaOBioMX0yL1ToHu8Jp209HB58oXDQt6cKL?= =?us-ascii?Q?f/LE46FaTf8fYzMYzuKNILbk85ock4z0NI6/vom/ueLSQS6F+14E7yPp0Ewu?= =?us-ascii?Q?t/XECTc0GO/QZkOawsjURsVUaYw0Nta7ETDjWeNShxwA5/U9YbDuYohk4uNL?= =?us-ascii?Q?jTfxWLE2kEceI+ZYwJJLjfs+j8ia02DB32Gi91CDEuaBmlqRS3cuYQic89RO?= =?us-ascii?Q?ETg=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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?h2VlLFcwolEUvlxi3fFsXZToyLt4ytwY+tI53Xc7Ehq7tOu6DJf8PQJQa4/+?= =?us-ascii?Q?3TqCUBIyTXrZ0okEIGuxe7fgr35I4bPOAIaC255gmvTeGFwFZUIEn5/Rk0zq?= =?us-ascii?Q?Q6y+KCU1UIaI2nRB6PEVS0AqLjQMhdm7jRU9mF+QKI61uqkDUrxoSdc6K/Vm?= =?us-ascii?Q?UshIOiMlXYcL//hcdx3qF8BFFv6CN1DkXcUAMnvQqZOkaBVWwdhuamu87BBx?= =?us-ascii?Q?BA6din8BLVfBIoOUOJNoqso87yyDXS+LY/yjXN4YaFSy4REgDeL+fZO1yON1?= =?us-ascii?Q?1hmKU3vF9o7qA3lsTKBuCGq1eTBMqPlYwPch2H/W9Hkix8KsAif5xQONnKXf?= =?us-ascii?Q?ubMFDDiQoZ+aBn+81tnMz+4+CFZppMoeT4ZUjcXGbECJxKghC6S1Lc9zzM/2?= =?us-ascii?Q?NvOBJHVXsoRGfN0Uy96qAMUE24m3mSo33c2e2mgrno9F8ti+TY1057cf9gbo?= =?us-ascii?Q?YOj2/RzSv03YpVntCQHEIql9w+/H7PoETLzoDhe4YiqMdUWRLDoVg8sKETIV?= =?us-ascii?Q?KZ2JXnFRj6kp/OOd0wpL6CfQBrl8/704qr7FC4DpqVm5oqeA6bHo5MGIFPwv?= =?us-ascii?Q?K6/Px22M8J3Qdb9ABMIqs0zXVulYkysX2TARQtnsHzMZ5WIv1fZ8NILCXMYU?= =?us-ascii?Q?9UxXld4HUKlVMqfysFjseT8ruyujqcOBsFrh30sWNyKeg8HTg1Ppk+3W1DUE?= =?us-ascii?Q?KtUTyKq49iGZL6iM5DKpb8rLLEG1Dg85JyGjLmaT2tkS9br5tcwvD8kuYEWE?= =?us-ascii?Q?t9dQ3vPX/TAful1mhU3Myhll29YA+qUrbCDKuaX1EmLLvq/EJsYjURmK9YsL?= =?us-ascii?Q?q8Z83O4H8zedkGrdRVYwWhCXb5ifd0lgZHxWcNsKSkuRw1HaNJu+xyJxRWer?= =?us-ascii?Q?smMluswbOIMLmWfQKWIZH4c/mizd6LajLNk0iK6kd4lgZ6WDZTWs8Dj75NcP?= =?us-ascii?Q?0E4xTJ+i6Sz69Cm9ijgZrSk4F4GKHRJP0cY9ol3JnsuLxYR+CeU2snbrvpjW?= =?us-ascii?Q?P8efr+FL8gmnRPv1BRhRdHo4Bbf+dzPXRIfdMeiKqVMS/Qn4WNAc61CcYgM4?= =?us-ascii?Q?Vf2fVryq9zWrFeYtFRFLPM2X3eI7G4JHf07BOJjDUSrEpWwUvM2498nWn+PI?= =?us-ascii?Q?XM99M6KTAfYr3dwqinoD8N7RbL8z6qdfdGB1c9kbDiF+8d0L3P1XLRUgqz4s?= =?us-ascii?Q?4VM7VeKPJeZZfVO2uazhO9MfurdQhrKigfs5AYlgMFF6wt+M0yCYwT4eUnn7?= =?us-ascii?Q?k55v57opYDgnXvNfjdPNznjja0ufzcCpz0EeiaHtfXsBC8vTSs23GDRUS6Gw?= =?us-ascii?Q?FCgrM1JTYptVEI3fs1am3cMhm2GtjP+Jfm58Jh8FADMrUdhvVqBZl+HIv9VR?= =?us-ascii?Q?GH+A3Pt32/rAO7HxAbvghnsRQXvQ8pFuyxY/uNfUbsVQDTuxQazMWUohYx9Z?= =?us-ascii?Q?WyMXIlaEZka7yeUA9WeohXQUaS0VM6htsyvC6OzV3raE5uvMdWcS/RZbQLGS?= =?us-ascii?Q?ppj0NnwZDoaBWbrNJA/w9gHULiNQcHDqKiloLSNXrr2VEUJpFJJpeq0yXDwb?= =?us-ascii?Q?cXyDzzhjaoTPMukFpN/QFv2JU8bqjWy7YOY81PHjxgRrL+1MGHMxDeae97RM?= =?us-ascii?Q?+QK24FeDabrn8ofTXplXXHU=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Z0xu6/b4/otVCuodc4D8DiZtksPlckk+ddd2Cl5i3M/VeCAOIOKI0xF1S57tXtPoW8bSn67rsMQFg+L1/+vLbg/wSipSDs4vl8Cnh+xb2WuLE+pvNrZgigUkuihLLu2nrncfUyMyaOfvg+yE13VLubegWdp7uXLoysofW9DwxjwPjwExDV7hitjYDX3h0KfV+25w4JokjBdm2mbICTDLtKbGIlUn5GbJpa7TovmLH836qZcgUWMsAcjOwUHqCuPx4UEmhYZXLZ/+QryswB9vcEWJQoyseUHGfUYRvO7UWkPjrwXqWukOlYx0Is/z0b1Tvf+qfzNeL8K8R0jX9QY+PtvYlQc0mHdlApmpLGFJZHP3YyneNGKMFzHv3iS7Hsk2A7r431HzAfA7bP/f/Ez9FOGe0rJUHf5luIvSu+tpSCRM+tMecktSaz9M964YQdo8/9f2KdcB/TrfIG3vUoWt6xWoHDXym09eGeV0+Lul/XhlpStqh4TuIQT+SDzFQXNT/dnUmIOjDZ6OQQEheYMrWQc6kvuNPUBTNnbA3Ph6hfD6ZmB+WDj5AqsQHQ1AB6cqChVE5PWWCRQhOy6msDc+yNGrcqMKmUvHHmXAFikRtY8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 92f28d1f-1c8f-4264-ea6b-08dc87231374 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:10.0903 (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: raBcw4kWm4WZ7gDXxBrOK1qp7FuIQgUZHIZBvu6DgMCeFKTM2yEX4vr0WxW/eJScgI6SYjMlhmpIWhEDWeAjrns4x8JmmHmA0K3gp4i0wAo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 bulkscore=0 spamscore=0 adultscore=0 suspectscore=0 malwarescore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-ORIG-GUID: Vqs0oFtGowhjzcu6taGi3dfmscJ6TrZF X-Proofpoint-GUID: Vqs0oFtGowhjzcu6taGi3dfmscJ6TrZF Content-Type: text/plain; charset="utf-8" Subsequent patches require these definitions to be higher, no functional changes intended. Signed-off-by: Sidhartha Kumar --- 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 ccbec0f66562..2558d15bb748 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4230,6 +4230,54 @@ static inline void *mas_wr_store_entry(struct ma_wr_= state *wr_mas) return wr_mas->content; } =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 @@ -5361,54 +5409,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 Feb 12 19:04:02 2026 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 6626D14EC51 for ; Fri, 7 Jun 2024 18:53:48 +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=1717786430; cv=fail; b=rZGfqdnPkBVGsqTzrrvqgY9WDropS0+F38cIpBfVNqEe0rVo/yuYxby1fS68WKNLc65ZqHEbZ2RY9QqEyl46JCi2Lk7M51RQEFwfm7CIAfp3dEmDRtnD1nYIKUT0BatWyvQpyAw0Db0CUFec+1BS2hwjxe2Jkl5eRNPHzFU5QCY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786430; c=relaxed/simple; bh=dh+BZ+NdEG+lHxUKjZNZMxLDJghdgJCSwI+g6CDvBpc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=JngH1oEjlQLaLHP+QAYl1Xiat57Wx6w6O4Vmlv2mzxhGqrvntfsOM3LkLMEcRRYKeT1vPlgR69Y/D8dTAQOVPrWU6RZJcgcCFneFF/88q0j/tAxAJuWarQWvln3DErSbSgHpcRL9CSzcnNjEP5cT5HnByampi1kr3HxpqEVYXPk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=b0suqnGl; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=YJd83HVo; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="b0suqnGl"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="YJd83HVo" Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuohI016403; Fri, 7 Jun 2024 18:53:38 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=Ptz/vKOmx/6gJSxm1UZRQYH6YHM5m8G21lDx876xCFc=; b=b0suqnGlyglM10cbwi5Uc7e1QIGMP1WBcgZK1c7ol2WWRdxMzzlAW2P93f/vJ2XInGr9 CJJvJ+uUaB5ih7U25s5phGRIV2PX03siORFBYNYnWVvmMIBTUsb9Io414zYi4F4Dry/T ofmkfmmSfwHYNBWGW3iriirotMr/1ejw+FEtTGx6JjGJUv+Nh/UGyz+kNzqyZGswWlrS zk/WLiBvMH4yOeXBS3P/q/sZnyRN7DwS0hxjbzkYUy37/+2/AMH5WyRpvjTHqo2aYM49 14mcEpytQdBDwvlqKaWcMeU/8qYbu9DsYubOVr8gdEx/bQ0kEe96ZF6uy/rs1kh/zi/Q vQ== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbqn69h2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:38 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR40023938; Fri, 7 Jun 2024 18:53:36 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nq1Bz+v1S3u8rH1twhIJWyKLJhu9RkXkUBzR9Z1NaXqX0YIS3uUDVH2eWikkxkZPZC0IAvRSc0dmgmp2A8ekRReCSRA5G8n0RiwNCV3efHb6JqoFjXLEVfn0UPAnHYklV2F0kqFjeJtanbFIbDk7iUEXbzm3Z0k1ThfqURxjP3QrzEiX/V5TrCPPLzm0bMUN6tRr90XWY0WqSv0OB9z47ZwWi3ssV5BH3KylsiKFtz2tnl/h+6G+Gpk3iWPbhwH/Qp7r3UlFrFEeMxHG25MDLc4fPaQHvNWfJbq22+cvO2U5UnPumJDR2InuCDg56QVhUSt5QYqykqdp6zP5UK7Xog== 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=Ptz/vKOmx/6gJSxm1UZRQYH6YHM5m8G21lDx876xCFc=; b=ixs08E8vMk9kWk2lNUeP61VfUQ6WFKV3ItsCQI8W9k9jyKB2/Ih4ErLWn67fF4xlB8uY/oHXqo19L97ajTRKAOr1SI6wAvG7ZjPg2qXlhVrSKj7qSTBjXb1ZsHoCrtkIPqG5dNPLbc+L6RtN0XclwEYiKGuXvt2eYl0rpDJUX+u63i1m2cwRFPG1h+OAy0qII6B2NsBZQLid25r0VZIcnMBX0HCb1gM+b+Qp8S9lVzDCeZGd2ZS8JhifiOhuKuRHZ8pKfEKj1ZIV080qE5jGYsscUIKT+AdxDuPP7EFt2gWPBEOo7ROaBZw15EkRls5qHZqu9Bp2RYfjH450JrvO3g== 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=Ptz/vKOmx/6gJSxm1UZRQYH6YHM5m8G21lDx876xCFc=; b=YJd83HVoCDFIKYJFdm47ldRcLVD3c46lpYMKwt5zY6BGaDcU9zND/ci1SGwFHB1/QHR/LmfsVmkRPW/IdD5zKbPLaRH8Xa1Qthu4ej/y169B/PIAFePtt94vePifmvubqwLWIca25ugB8q2q8ag2lC2LVx9MLu8uB7EKwcXWM1o= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:12 +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.7633.034; Fri, 7 Jun 2024 18:53:12 +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 v2 04/16] maple_tree: introduce mas_wr_store_type() Date: Fri, 7 Jun 2024 11:52:45 -0700 Message-ID: <20240607185257.963768-5-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR18CA0004.namprd18.prod.outlook.com (2603:10b6:208:23c::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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 031b9898-8ec2-4137-3449-08dc872314cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?c5byJYA1XM1xzWjyxgGiY2Oyl99JkOtbyNgB3i8WGy31Rse7HcXefJbHerbO?= =?us-ascii?Q?3JfHvD6G57gC/OZEAwXcQ9ioUyB7zX9o43qRlaw/0lTQM73BvkKyMNM7blLl?= =?us-ascii?Q?BVX0YxTeQD3KzW/zWevEJ+chbCTfnQAWp+FJd37fVdcKFr+jlISZqjH9XVgZ?= =?us-ascii?Q?H8QXLX10z4hqyMQFU8E+EAYIuQdBd66VSXZmQovZCfWFitD+2pC7GIYhgTin?= =?us-ascii?Q?nbv+q+drIGw3pUtp1++a0EgVf2pTWtG6bLz/ZtpyarCBrgyehzFpRn9DesoJ?= =?us-ascii?Q?xOJV9HEOP7oSJelLbMwji9UpwJ1ik5iDmLb/g53UAn/wcGkiRUlG5xX2ux9z?= =?us-ascii?Q?Qh0zpXvJI1LJOH64n+2BoebJkBYpZNYwAeXRlU971yLkp7nl/WGItVF6GBiv?= =?us-ascii?Q?LFvabtg9q7c6k8WCzm9AE+TDUvBaC7eUytPfemHD0+c/oqI3RuGby07hh7by?= =?us-ascii?Q?xcgkR1RmZnGFJNmEnqRq4cT7bIveAtTUeSm2N23jsrp7IiglL6uH9iN2JK2C?= =?us-ascii?Q?ZiOtn/zQhjyAkF7N+vw2+uIwrMq0niYV4Dbf3cfEPLv8d0/hE0tNiHmqE0aC?= =?us-ascii?Q?0fSmsp9X4N6zL1MsG3iizU0mYNNQA01rXPBcB1S4BlJwsSuw1CoMdX4fomcL?= =?us-ascii?Q?eNDhLTpyLQacKXuuytc8xL6dPa7AFBBd1ZXBAaSqIIqZjVXQsI/TFJzCOg0C?= =?us-ascii?Q?PW6Alf2fSiSDrsQpo2YkkgeLmjC6IljdF39ThhC/aZW1rFPm3iYRK7BRDUBf?= =?us-ascii?Q?PEFrZEZ5rqLh9G0XKNRXYBDBpthfuSImHfRjdrR12KhZQHyGXWZN1654MqeS?= =?us-ascii?Q?hF1gd2T/lpSeRJDDRGZLPQHHmvp9wINx5odKBPbX1qDV4OmsP6m+oeuDxyLg?= =?us-ascii?Q?URoi+CMGH9NLu9I/dQvur38grb3sO43S84wSspPrOFJC3PCOlYAgPJsh6+IK?= =?us-ascii?Q?zprDoV5ljCEgI6C1pkBFqXOAXwns5Ups2qXYoojZ5V1mJAPCoK+kqFJt4pC3?= =?us-ascii?Q?do/DHZVLxMQmdZBlDCMGXzf+YbS6qVlfbR1cYTnQXRmbuYjWshGFrnSEmTAr?= =?us-ascii?Q?n43FGGEfshSCPFTNYK6qxAvc6t2vpWgZql1jxb86gz7J66Yk5Z2S2TP44H9g?= =?us-ascii?Q?h49yhTBBTOqWtRzBHsmFSDxu3KhB/rwk4xOBGqC2a0om/uWPmqo7Dr+27Mpg?= =?us-ascii?Q?zvfhgkKLHUqpc5OplC/g3bKlHEuMgthKf+wCbPM/J6OpY8mmF3HAHtKmT42c?= =?us-ascii?Q?WXV0+XP3AbrC9pYDwU1lia+MjdUdf76Rny4SaO0+brcgnuvV6hLAuhu3W9+Z?= =?us-ascii?Q?yxvlk8j45Q1mVdCHw+iWcGX1?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?uLNAqlPF/tmK4tV8r9uSVtoaezrXoXF48+upPSGzZvPYNUAlGP6rTXCCf0w+?= =?us-ascii?Q?hPAi1cmh9M8xJeSXUDOeOXafFeukNQm1KA3TMOTVnUJBmLQU2xAxO59uAlcA?= =?us-ascii?Q?mYEoiHCTAjTGjic04yfmOhv6fJslzYv03rCjQQKK3Y1VAoW7sJVftcfUz0rG?= =?us-ascii?Q?KnUzM4bOGUWnD5IRGpNX8KheYM8/2GMKzaZitqP4RpB7Uj9jcdMjUSQO2LPY?= =?us-ascii?Q?JUb3M4UoXnkoGvrZOKmpoP4jR1toqG6Ter6Bw+ZIlRtDgGvruWkgONc28F23?= =?us-ascii?Q?oVfkJUrBkV6qWM+fSRBMtlggS5C82i4shO6z79goMg7h2M8h7gnE6aMMFP6D?= =?us-ascii?Q?RAmjv5aZA+jw0RkTSGVpRi2NCmqK0JN9rmouw7D9ihjF6ow4acQjDcZku6WR?= =?us-ascii?Q?f3ELT4DCmBTMriYSPOQlJwEExhBdffSxcJsjefFTWNc0HpDWYh7e3Cyb8XfW?= =?us-ascii?Q?e7C2xCtS/iooEu4bNBFY9qLqTvxd2ebHygGS47jg6WisY3kYxQOhaq57aUGX?= =?us-ascii?Q?zGTXYysJUzreXRii8hNWv1+iDFIIkiXXpPRp9qvzPjjIudaCiXKhLIInxje8?= =?us-ascii?Q?GlXzFiHBbMeTXvs9dciyM8g+qWbKcmJtRYlEEzCU2gR9JSdOsQ4nuYYD7G3L?= =?us-ascii?Q?LwmA9t8Ezb2x2+lzrg+HhEPnHU8Pb9F55cwfl51YQO/EiPG+BLhBWzaQTteI?= =?us-ascii?Q?FeAbHkC7ot34N5fL8HBXw6E4wZdzyK8gXOrmhMjxsS1qSbFlQCIXSPxvbEr9?= =?us-ascii?Q?OLwN8Q8pFDa5aXnFwoJ0lmHUeJKS/ACNpdrCvg7zGy6RVh7F5CgLLM5iYrWy?= =?us-ascii?Q?7HHdFlizOXofgOOqWfHRRjilQv2pUuVgz2fkdZkocHu64XfJCfCvaMKjLWQI?= =?us-ascii?Q?pChR2zBKFL0teXA4SH6dSpFesXHME/g/O3UQl3HL18CD/6PshKaQhSBPowhc?= =?us-ascii?Q?+w1mlAZ19IGIwNSMsy+iJklWn/WQEw3tHqgkoW3zh566kGVMdxU8iP8rPavF?= =?us-ascii?Q?1lLwVRu+guqupBUMmuC75psCpM3S6/Wn0oUK57apzfWGmNot/Y7sFU1sIJHc?= =?us-ascii?Q?GsF03J4O2FO6lE5U13S97jas5kt60FF7etyFnXWYLrzpuo+TAleWrRiBW3DB?= =?us-ascii?Q?uZDI3WMMggWtl7X8HSAi8WwJFM/QrRo2Ei920oPXKPwRV52Re6D2P0cK3ToC?= =?us-ascii?Q?pG4DvA3Ud8RxWeYKLhcj8RzSmoi0OXREalzYCRx/RFLfTNUo/4QKoX5wZs4+?= =?us-ascii?Q?P2dobM8dIxQEY6ilZK3i1zLab57Y3QQQ/eVxHYPRWI5Q6FiaIx77Rc8ODBcQ?= =?us-ascii?Q?5XesCxJTiKtdDiUVNDDDYYEV90ne1FEoWOctUuJK7+iWYNN7F48rTSfLR8Lx?= =?us-ascii?Q?o/Z26WXn2iZrYhr4MOwZFmjh5sTqiG136tzRzS8judhQZ57qeN1LbpLZXYGF?= =?us-ascii?Q?NcE7KBR3c457YdvjO7/K89bOJHiowm15atSengep2IvGtRykdwECxU7PuFxH?= =?us-ascii?Q?ZFC4z+PEbOK5suSk4wri+M60DzzsVq7EtjnejtWiEbNradce9FDwZargY/rf?= =?us-ascii?Q?JnKctHffApMh7bsGyfBJy18gTjCTorZY8/z/bkWnrMpoaJ6dkGADPfiKFIbE?= =?us-ascii?Q?S3DQTlWiuYd8ZoLZc2AaD0I=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: TfeUcfNkb2vfp64fm/m5q0hhHk0b9t7O0cXu10GTzXwKoIsrV01q8N9JygVCJmlCRJ5ZIdd6NNFfAm6jV1wQo233uETnJbYGrd7M8iN/KNUr9mwdchzGUQCwkWvGn+U4to3bFr5DKZ+cXu39cCYQTW5r09hZtrScou8g+OemmXWM0T/rZFr3ITY348oB/qP7uq6UtZ4ZdL9qNsg0F8kR6vhkDjIOvK/7Q5yUGgn977lcEDq3pvet853nu/ds1Vl62jQd7a/8IXoghITjMYW6ovNXzmxGQ9DOuRuACDer6RPu2lUL+4JyixRteE3Nt2hQThgnxDN9F8TOYjNKPBmYeQZFREdEWkVxNo5aU9ebTR05+MZFeFGfieMUj0Q5S9hGEc8DYF0gruvr1SDDykZHh8rcGONidYmbOQ6TiGqyj2SDmBQqo6q5ewyXgBOm7KuBEiZbr8vUMpGUS3xLJhVZl8bxBBObgDzv+W3r7DcYcZXOpq4nRXRAIEz8ZZLvW8Lc839ihhstpsVBP04gPYtpaWCmBvL26A9lunUOF28MADs05VxraZEE5kD0pCc5J1C83M0ehv9YI7aWgE2jjM0DofuwwPpy9wyQZQpLjvWx8sM= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 031b9898-8ec2-4137-3449-08dc872314cd X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:12.4555 (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: zGesItE/yalRH2rqcpawcTIUCFyxV13ZLgLhbj3HrFLkDCAZdwnivXpeKnrTVbwPlzMwKBd21RjHmzpMGilX99xEWY/EmDTQf7OATICfxug= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-ORIG-GUID: MemFKTPc35gFEsrqAwtlGwUukAx_j2TH X-Proofpoint-GUID: MemFKTPc35gFEsrqAwtlGwUukAx_j2TH 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 --- lib/maple_tree.c | 214 ++++++++++++++++++++++--------- tools/testing/radix-tree/maple.c | 38 ++++++ 2 files changed, 192 insertions(+), 60 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 2558d15bb748..a7f585ed488c 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4278,6 +4278,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 @@ -5506,69 +5651,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); @@ -5594,7 +5687,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..1c68ccc1b475 100644 --- a/tools/testing/radix-tree/maple.c +++ b/tools/testing/radix-tree/maple.c @@ -36223,6 +36223,40 @@ 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 +36264,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 Feb 12 19:04:02 2026 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 D7E5113E8BE for ; Fri, 7 Jun 2024 18:53: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=1717786431; cv=fail; b=BPizZFvP1NismDTZBhABx4Csmqhg+jtLUhIZ4IHoNmDsKqrRSlQGQeaKlps8hAzl9qce/D+lhP3op02GvOgz/m66xUJ6RFH+mRMmj/mUxyy3fN6VT0wNF+9MOY7tBj8vtwiyXDisHc4uXjxGbER1SokdzxrzCpK9nybtRvcyfTo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786431; c=relaxed/simple; bh=XCs/eLFwhx4sg/wv9ctzvp943hqtsorFZNltJgvMBto=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=kz7Tu/AR4MtWQ2wcEh5J6wVXFtppX830dsRe/KrzuY26ohpLOJq1lFW/fyYoQm9mmR50ALRsFaJGVY8g+KJi4WfReCXi/ktmLlAu+HSjNnZoyg9acJdXwAUc9ec1ld76kLBfvjCnG8xxgYN3Yg4akkgXx7SWI/azxIKXT03paXs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=QPB/Ol8k; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=LttFZupC; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="QPB/Ol8k"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="LttFZupC" Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457Cum7h021527; Fri, 7 Jun 2024 18:53:41 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=t2/Od+WpVk7WfFC2jfuoIu2ZEGfVLJUcbhjQt8CRCcg=; b=QPB/Ol8k+jhJKx87C1HUfohQf7WoLQ0Tx9qYLNXjvu3VKq0jPBtF/AFO3bdllet/gqnY gBRPC5sqR0aOovRd19G26PDkAbW0OLt6N3HmDgollQzmuOF5UUrh25gqVGCfcxKU15UL PAP99qbS4qySd9PGH676GdXMmrz/hQv2QjSqgPpdvZ3saIaLX84hLtB5EapUblBeP7Ey bCf4tHxXwFL9tz7YhuV9c79o/npc4jfqcxoWdBhgxHfouDpxtPCLfEzHpwqVDDdE+cWb hxyFREc6GkrNyLqtubVG/B+1xB8UGJniaYdMr8Ew4a5/8v1y5FXrLoY13bnjas+KBzTM 4Q== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbrhea3u-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:40 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR48023938; Fri, 7 Jun 2024 18:53:39 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UYOg399oFM5DPDu8F6PSyul8rlEMuObL7z7sbklC4i9K91TbfYlWhC899pusaC6SwG0Re6fe6M7QjlQ+vYhsrp6FMOfWCvQ5sI17zKSMx2j1Seh0lsvYg3sXsLcoVfl6kmY7oyaxvyd99+YCP6Lc6us2PuNw+qJ6ssYyxYGOm+zhwCUiLPUDnSSlOl+8jmcLeUwzUrNGirZgfFjHadepwuXdL1Mjqte4wKUlI3CR6eFxWYxIjtz50uI4CppkxhQorIBnb5/rNuqnvvIHxI6XgatycJqhSwBlAvjey806Yn3KsaP2l5qqtH2+j4EZXVc9WUQb1OUO+mGXMlSYmz4ePA== 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=t2/Od+WpVk7WfFC2jfuoIu2ZEGfVLJUcbhjQt8CRCcg=; b=D8WoSiILVaup4Wlp8QebIalf54CeGDVkuUNg8Wn9ifRM+O4pfLjsdcLAddEHS0a59++n/Qr11wxk7MTsbj60tTz67ItV51QbfmpJ5GFvn45PiY6R4AjcrRejL5aMcnkGNsHH26LhJ24sjXFRxh21UzIwikoKKpc1Gtuywz/Hj+IZ//rAYLdU+HIxQWUEcwccv7btKnQamLsGgSAL+wubouXdqlCuBrYBfZCFM9boNuy0VGfs+szYfc7yBO/+yHkbfSElLXUMMrwXkA+8SV5uYZEMUI6r4POQABcLGRamVw/xsyF1VUW8FRYqBb7IOTobZIVpKadvSNTLodikn5FENw== 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=t2/Od+WpVk7WfFC2jfuoIu2ZEGfVLJUcbhjQt8CRCcg=; b=LttFZupCnRDyP4TBhX3tuIHn7dmTlnHF8BRwOaKY/guPbXYaC3d8bFQ1ogkjuIhs4poD3xCFgK6ToxNOzuE5wTGj34Lc43Zs/aPixgRQIdVmJHkRb4wmJod3AJAy+iuq3Mdutab9xX66dns12KNSXMPeY749yrAPWDBPo3l7uK0= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53: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.7633.034; Fri, 7 Jun 2024 18:53:14 +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 v2 05/16] maple_tree: remove mas_destroy() from mas_nomem() Date: Fri, 7 Jun 2024 11:52:46 -0700 Message-ID: <20240607185257.963768-6-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR18CA0029.namprd18.prod.outlook.com (2603:10b6:208:23c::34) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 4d3646da-d32d-4446-4493-08dc8723163d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?0NwiBiuwch0cpB2oQwe/HrtXB8T7Vec2sTykymen48Blh02DUs9HTSGcDRI6?= =?us-ascii?Q?AQ+8rbRj4t/ftU3kY4NGYu392zHHGZWiRwC07Z+ds/rbP705BPTSOiaQ6zoI?= =?us-ascii?Q?m5QB/LgwOZ+ZSH6V+kbyMHotzwJxDODZj+VgMCNDJ5IjqJRoMQ7z8yR2t8Va?= =?us-ascii?Q?b8J0UPG/FhTd1L+IQYGHafCkKGMHdc4uXsKoEdf0S9y1BFCr8rMgXPENeziY?= =?us-ascii?Q?1+XfVF0W6phMlsBJYkG/Ec9LcTW/9PJszJ5N+DFJ3UIfjbhb647ebefJr3gj?= =?us-ascii?Q?XhCZoNRYRzPVFA3/Yhte/WEASTOzo8+MEBU4lqxs7gTFFTbniOGsqazF9V93?= =?us-ascii?Q?GczBKgE1/JHUM1z1QfxdwQqCC5JtbvVFqpLiJujJo1CzFN293OiDOGxbyJxP?= =?us-ascii?Q?gdLK2ukzGX4o7ZbNV7IZMThjJgDqAtd8XH4owMvlrgJlxB8uMpGSjtJVt0lq?= =?us-ascii?Q?L3L7vHO5UEam3zFSLDkKQ65ZN0ESOAn/xhHl3YTrNz5FYdBsayFh9xT6vdoD?= =?us-ascii?Q?4T/aW3tqDCIN3/zLfpGIOEuMf1gNhgGLu7EB+v/EP/GhGvesaIua4/4QtY2e?= =?us-ascii?Q?OJr6ewPfyOCS7iPOhgAuj8xRi5c4m9U37rCyiLXbfCp5wXbZrqk+hhAHOOI5?= =?us-ascii?Q?OZxwpPdjIr5TijQwKti4RkqBYge0t3jCTX+UrbIgt51QYhhrvwK8i4A6yvFn?= =?us-ascii?Q?2fI1ZHWkF8i9H76+gZiXeEFVRtjvFis976yktziM2hImaSXI07CyRb6lSBTV?= =?us-ascii?Q?ELo2iHNyGN+Zfl2zJJ7wAuEpwYdaGnRaHcy86uoUruOw2/+sqLn46RUNbruv?= =?us-ascii?Q?0UtB1WrK1gtVHMZ40TSeIJFj+0b79XNnlzouu6aER9ERRci8+bzmLHhCvB2E?= =?us-ascii?Q?kzEODxXaaRWZ5GQacqKLNxnRVWHix7/Aj6XMLHXYUq0NpFV3dlBfotofMH0J?= =?us-ascii?Q?R7Mj+QE9Ayvn0C1mNQcUmlWJdCzgT8TKbhUdSXEUXh5YXXoJ+Ok++XWunSZ3?= =?us-ascii?Q?dEMpywM26j1cOkxvmYZ8Se5HLzK2jSIdqhH0EdKnV0K5kU/sHWCElLKfnx8W?= =?us-ascii?Q?8Fjj2SoN8h0wIcUcYgQVUB2umqFwPnkj7M2ieV2HiLASbJz8gyjILHSeVs38?= =?us-ascii?Q?i70WvPYFDKk2cECImcGNOwpFE6oEGTaFxVimqKCmx/NWiO6jDlVN0tfsc1kh?= =?us-ascii?Q?uHJbJxVJ2/lSQKScNRZONVkZhaILGoREc0zhyuU1FgHLN/fwyvqBbgMHD4Yn?= =?us-ascii?Q?6uUZ+IzbqfMpqmjnKlDoLD9HvrclEW46W59+kQ8aJKSc+FsTt+MXpWdfm10l?= =?us-ascii?Q?T+3H02C2/CV9aA6ZrTfCwpn7?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?QcrS8/g+h7aJgavWJlq9pTP0lKHvlQGIVdIeDOZt8QI6QSvr1E3lScL1zd3N?= =?us-ascii?Q?/GQsyxEcpO2XpsOPjtxRkxJKeXpbOJZnG/VgtKBO5JyMmbwZZcR4IBfhA1eL?= =?us-ascii?Q?nSEaHgDEE6nVTQE7g/RUjm5j18AWFsaMkV7014BhCniRh+GYsyG4A0odfaAB?= =?us-ascii?Q?O/Z+0ytLckkA2vWAmy0tOBdSqYW0ApBK4Oaulx6N6Nan2aqFwWxEo0e4zJo4?= =?us-ascii?Q?JnRROo0wEpt145FxmpjRLn3bShoYJtjy4tQV/qqN37Q3F1i4nNM6/qQecHr1?= =?us-ascii?Q?VaclAIKKo0yS9cQGz6DrdcCE4D4Oe+6flS3CeJZ2lmDc94ILc56wGX6s/aCR?= =?us-ascii?Q?JHvJaQyJTuSVsSppKN03mg5cxPE2OAo9Z0Vs+24l67I9svLvTRE/fB4WEXeO?= =?us-ascii?Q?4HAcuK8vvup26WYwfg2ObBMCXztTBYNSe49WL4IlW08ZwwnLt+DVT/LfZU9h?= =?us-ascii?Q?hKegEZNRWLViR96S1bqSXhF8MWE2fPWW33OIndhIn6jnTDYLmkURmtGdRop7?= =?us-ascii?Q?Jay8W2CdJyDWfSMdSigH0wNB1dWnVnY2phGI+0MVuSAF9PyVle6x88M/DPqN?= =?us-ascii?Q?pxulAc0KhU7POk7ldtBzKJdmnlnvkw6RTy+yfSFEXSbKXiWoE076NhlgsSxI?= =?us-ascii?Q?u0FsKACYzZvBrZIb8iVjXdMO8La1+/ACwvLGLwjkeQcjzFuANYAh+7m54It9?= =?us-ascii?Q?ubRe6Xiqf/e2JfqxJ5Xa9Gse6ddRVBjJfBhyuY1Q9fqDLvSJky5r5Y7vCUpb?= =?us-ascii?Q?bVPfoo6gScvLKNe9q9VIRrcDlUqHbLMtyKu6w+lMkWRmMRad1h+zNIHqR+9/?= =?us-ascii?Q?9WNrrPrT5omwlBuHLmFvKOpPe+Z/d/1HVZr8P0bQWi2pZmncmobp4dbm2qwE?= =?us-ascii?Q?A2DjFsaDVZzap4DdPaSKm7tVcpQxs4nEZ2BwNkJ6efhPAcyM99uighB/SD49?= =?us-ascii?Q?yf5/DJVdmqcoQhlZbZlK5os/1pazXioK8AcXmhPgAMUEAgPcuYOmpHf7qzKl?= =?us-ascii?Q?aNGs0pGP9FRvRieoBPdl38pR+0zcSzqrGdwy+7ZCMWNM0RDqjs+ASHhkci1G?= =?us-ascii?Q?/CHtC53Z6mtd1Ld4ypnqFkKROYDDZna1lAGv9fkKgvsRnO5lOKRRqI8TshLs?= =?us-ascii?Q?DVJB2f7D401KZVDx15SHvbkWuSysdvqcaIXBgv5OtwUsj6vdgJcsu8BwehMX?= =?us-ascii?Q?0CfNK7J3irvdgTRYtGKlHC16byWIVfq48RR9tZ51GAwIVhPqWu3YF1Ghy7aq?= =?us-ascii?Q?A2XKVtDYKyrF0rdOOvLL7gIVZgCSgjxpxQg4isMwSQfJey53aEoC8eSegMNF?= =?us-ascii?Q?pqz+dovQRUcqVr4mmCWTBGJ5Pb2wKcTp0H70/QpwViue7KGvLzhoxeUtThx2?= =?us-ascii?Q?AVl105r1SSF670I2O9OvAh6q3AwyBi4J02/PgZzeT088Pf6yVskGCG4tKekl?= =?us-ascii?Q?4XElxPQqDRfTrVUu2YgzGlXjBFpj4F7EXTYVPpwPoJfdN3PLzzzcWyr5tGTf?= =?us-ascii?Q?ARyWyLTz938BCghDy0dX4LIDUQLaZHu06D8kvPryvxLgyxeKyhqKCC86CnA4?= =?us-ascii?Q?y1xtJiJKjNb8Jn4TymDaxWrdyWSLlAZL2AY9mfNnUHyT50kqJwtJN2vUb4m6?= =?us-ascii?Q?x68hyfdemxGePbdj2n4Qzx4=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: TmW7Xw8h59iMX/gBMJAjKdBbs2G7wFZJipL2lHbtBETmhjnabcRX9IoLl26Ladr4dZ3/CyVvy+Mldsdema4fcPDDd/SxQp2Y7AyiXneY20yTnEZJEDdrKGA9TDeG6daV7VsN0iwXPjxwp/yCGEfmhmfM6wXX4LCatZedAd4/tSP3CQ7skdewyQ2xjXVY2XYYvFkj8nsUKS1S0/wNAFP1cJtm7fVYSeU8XM6Vyq7vRJ0g6mJ/3gAqa/4PxGjcgbytFqutcobhLwTBIxhmQokmqqTTtrf3iGMMSCq3TAz5sD2LetfcaYQlhWPVItvTHrQM1f2SN96ki1z/Hzd9rbDEPGS/X9gdmbsSCmCkRuMpgmjLkVQv8zqyorLTL5B92ri+93Lu5dfoNNUHpqUQITVdBPASksRUsEyuE2PdJONzBiWpzOrWLVca3pxGfZDJl8CD00rfmNPxHapsD3A8c/M8VTue/03XWgDyJ1kCksxhyUMAcCA0TooaDAUzaPMYBVHaM08CpFOxeP5s2qF6BKhJLQeT6nNl3EXMytCmXZ4mKc5/1F1pY56dMkx0120mZPY03DVh0+PVB5u/Ba6CMGgqhrbbXmyqvCOdUoNexa7P8i4= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4d3646da-d32d-4446-4493-08dc8723163d X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:14.7867 (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: 3kJ1LkfIyJIHOIqRnXnbVKvycYEnvMzC47TdIWTA4L+oppadu+0kQvx25NbjlthUdBGo4+4958IyyRC+XUV4PAeUJ5PlEmZYiv39eosmI04= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: nk2u7n62-OunHNqMhyfLXnWAShqkBd6Q X-Proofpoint-ORIG-GUID: nk2u7n62-OunHNqMhyfLXnWAShqkBd6Q 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 --- 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 a7f585ed488c..b933df290887 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4527,6 +4527,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); @@ -5607,18 +5608,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 @@ -6366,6 +6373,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); @@ -6380,10 +6388,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); @@ -6461,6 +6467,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))) @@ -6476,10 +6483,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 @@ -6515,6 +6524,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; @@ -6530,9 +6540,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 @@ -6587,6 +6598,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); @@ -6668,6 +6680,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 1c68ccc1b475..e897f60d1a1d 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 Feb 12 19:04:02 2026 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 4EC3E14EC4E for ; Fri, 7 Jun 2024 18:53:47 +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=1717786429; cv=fail; b=Av/pibW5UdE65IudoGZJera+IgVo0s0NnWJc9HDd5/hSLUXBgnw0YF4DVXJiTHsSxkCxNzTEfea4xBjJiWd9hl468IPGcaVdnqG1aJBgiyQ5mLD3+rhU4po4EitO2Z4ilcgqtBwxPxQVCtMxq9WNTv3TTO3JHWBQLp45LGBtSSA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786429; c=relaxed/simple; bh=shKverN4FLpINQZphrUPwi4h5crJY2ltltVhRR3fWFo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=SXoUCesJ6axoHrGKghbv17qVj6t1/rTtN0G9Kd6WmPGl5PY9/IVc6PWvJQvVm8p+xRSuh7nD5oqnibK8AEt9ENeoIn6vSbvAv0Pw6NQMJeOQoOc+y93WF6RUa4vVV1UudhWI0ub8x7eeNTdwlf+Jq5quzSOvVQ0fCOd54Dm3IbE= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=HV8ItSYX; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=TZN2tP7W; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="HV8ItSYX"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="TZN2tP7W" Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457Cup2Z021557; Fri, 7 Jun 2024 18:53:41 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=Y1M65IP1BASKGfJCkUXjq9SAHT6vlTg5aLtT5kQiY8k=; b=HV8ItSYX1CsD29a74PaiN6WWHOHfktWkwivG3ptmkhvpNWKwSa5eSN7GhkG6DZbMGRQG Gudczw3BvpKjr6jI3aZolgIqYWWogCdFE3eB9n7TynbPGLR7tmnGbyxWLUBvjg+yCUv7 B1RZ3eN+UAs0C7j6v8/OERBwEsVewjtWZjEq9/vM5Hq52qRXmzEskLhqxpknQ/KRKKA7 Z717aJff5KmxraHCAcXTVX/gJ4Kx7UvEMgFACPz0BZWxOR4npZMQGUOMEreqnhN2hi+i 3pFAzzWO4fhSeJcGJGWIEREpmjj//wBZUNzVqGM+F2uu9EXqHQ5J+92loGx5Ql9gr7k4 aA== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbrhea3v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:41 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR4D023938; Fri, 7 Jun 2024 18:53:40 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=heNk/O28P1uBf9zXkPFaquniW6CZY2gCQ8Ek6hqD6OyG75ezpe/kpYJsz5oUiRvzPu5fttm9Thkh2es+qgep0zyvzK9NSOg5K7JXPInL3ivCMu4H1G04/3p5j3cbtroHxV05ahD2z/WH4RaQoYP5ssu31BsJcM6eqENVm+Rxm/XeWAyTQ5E+z2Rgc3gAyGoceOUsBdCnRCwojW4XwPDF9rg66oCDS9k/l7IC0/kR+hA+5/iW2HIzSqKzgRyLUjS6DeE8qLs6hgMFqtI/NJ2n3/7oAEgYvH6rFEYWaAWqfga6PqU7hHO/pJxQIdtT3Y46HB4Svlq36erax06/GP9vIQ== 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=Y1M65IP1BASKGfJCkUXjq9SAHT6vlTg5aLtT5kQiY8k=; b=high2Cmsq7P4pOxaFERzstwtmAhnnWUlkWKjwIXRBaowelyHC20kg4UYzgrQc4x8W6LYxvaK595lObaK2b2q6l12nEao5rOYXEo7sZ8wVU66SepzrYWpGZ52OkOmFtxEH/ZXBu54JKgzx9gIiHZy2KN7fBCi0dbKc8to4WOQmaGyHNQA1iGTWXFRYhyhSiuEDn9B/5z2oPRLggzQ8a8Ll3SFIDdpG+PrR4phgzdff+pX87RlXFZnLjVUS7ZQRAMvBO736vbT76OxBysjvhLklDSkYmkkbceghw43EpnHUz/v/ELSFMZLDRmvu4CjzKn5o4NIq7IWN3pzIqatcFwXWw== 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=Y1M65IP1BASKGfJCkUXjq9SAHT6vlTg5aLtT5kQiY8k=; b=TZN2tP7W0g9NYZJ8baVELdDf2LVSZ2Gbc7WueqMYRNzhlYJXpZXUzcDiJqbCXgmj5PlERT5plMfIxL/kfeD9pSy4KwDEX5ENE9Uf+5bFl16+U5vnlLMHDYUp9qMkuchGnXmYKcJXTP+meROUK9RXfqtlB/dlMMqYff1TeZlD6xM= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:17 +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.7633.034; Fri, 7 Jun 2024 18:53:17 +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 v2 06/16] maple_tree: use mas_store_gfp() in mas_erase() Date: Fri, 7 Jun 2024 11:52:47 -0700 Message-ID: <20240607185257.963768-7-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BLAPR05CA0048.namprd05.prod.outlook.com (2603:10b6:208:335::29) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 72e4e354-690c-45fb-57fd-08dc872317da X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HE3tENAAmn1+qEkwRNB6Js10OMc5GmQO65xfQ5xjmC1mBt/MleQwWsxKMKau?= =?us-ascii?Q?0tEt9ITHOzv9guIQkDkh9iHNesTVNcO+zbxugCESQlXPZl5Lw4Kbn5Vyoli1?= =?us-ascii?Q?hhjsWES4PPcyBuu0s5+qgBP9/cWN4UJtTcmExPUcLTcxiRFdWuAa4GM4u4x5?= =?us-ascii?Q?2QpVUdNlxiq5DelmlQjkU5cKW2iL1OsuxZu/QJWpT9srgcbz2Lb3gqTg6rvQ?= =?us-ascii?Q?PiqVsc5TkmKkFmtKACREz0a47r/dfQVIWWJWZaEjxELqtBKO/ieAoDXHjiZ7?= =?us-ascii?Q?XYOtixghzEyEslhd76yIPT1XKwA38EhE6ZXDPe5Mmzrudkw7R5mHDddqbgSK?= =?us-ascii?Q?idH3KHpGWbjJUZAKLNtWmv1p3Z/SMyvsm9uDAr6V78HMGQaSNf6eE6lqeql+?= =?us-ascii?Q?D9OTWeYcx5zw9y8Wl31szHDYQAdTcBxg2DtoPOJF5u5dQrU/zfJSWwN1HiqO?= =?us-ascii?Q?ig1rBZrspY6w0tzkYH5rwtx1dQRvuK1Zp6DEyWx46x/aRn1R57tDv76VAyke?= =?us-ascii?Q?uZPSlbciYa0R8WaGRvtHpiCQ6erkDPFFhn7ukhqODO76m4G8wg48TRvZ9NZa?= =?us-ascii?Q?VItK65k/zgVxXaRnJzJiURBNKeRfAMaBr26Y0vgpBB/1pt/TBDVr5nHsZe8o?= =?us-ascii?Q?dFkjLPf+97yyFq9DG0QblnaFFrOtOMR6u4WUHQILTKjodDZj4zSaqM/VizEN?= =?us-ascii?Q?BJZ7+T7EX8EdNZBWpiy+lXcNVLFk+t/EMhZsKttN2rhEe5gRdt/ypNz09gUE?= =?us-ascii?Q?hGtXpAgBVNE2dDxjGqrw+wbpW/2rCfyjlQFKXd4ZhFv5FaRvllk1cEe4Lkwe?= =?us-ascii?Q?1l25HPKwATNh6rkvhpXuUkx4dta5WuEDF5o1ksiRe40mcmAMQHMlSrUjcdje?= =?us-ascii?Q?A/8x87mkgwkNYQyKonS8f0JkLN7fVve/odNX3WPyOTKyE3h6g9uC87n+XquI?= =?us-ascii?Q?uyeInKrtcUgF9MHwS0bKlM9cQrZcgYKXDAV7bpWCfjN8FfCh5hoOlOCp9M7p?= =?us-ascii?Q?RVVBCZ8SEPGp80GpJF5lgS+abAMcpK+KIFeHjnxa3hEhuecGZwSQQpc6j07g?= =?us-ascii?Q?xK2afhaHTzZzxnDXyDfO8FZSjggDP4wL84wSZomNIkp+6aTotKynAnhBeIOJ?= =?us-ascii?Q?B9QFAmPOzSSAsvdsznng8e73VSPMCiNm3wXKU7kXyGZ898HjaiQ4dvFFgTCr?= =?us-ascii?Q?HMjm9oogvo42sc5p/QCQwKTuLam2XQZAbe2tsSWzW9i6r51vRFzh4LKtWf8b?= =?us-ascii?Q?k8xcVTHn7645PKFH410KogrvdfIg4noIj6BRSsIeGCKyXNISNJUC7F4o17H0?= =?us-ascii?Q?IFzpgppuLn3qDicMB3cqrOJx?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?4Q/WtvBt25+8sYOL+1kU2xfvBTuHIgZEEry+5QRhQAoXs+6xW46xamjMnEtX?= =?us-ascii?Q?ragCTBjXtx61Aj4f+iX89Q/WNloXHIiiLL2skjswLsbxeTfaHfQ/v0CD1fw9?= =?us-ascii?Q?Z16JYNN0zM4vW9vtWc4wlEi15e+qjWDWcFya7zBk/0/WKI6q2eMCNuz/7x1S?= =?us-ascii?Q?V7UZK0NPLLpxuzVficVq/YmEoUU2NIHInU+jzZ0gF81/0T4B1tdMNBDMBAmh?= =?us-ascii?Q?EB/tVeXv28dQZrpdgrOJxauL5fm7kKlMA5qWdFmxOQmjUsqLl3+QdEkMyl1/?= =?us-ascii?Q?p++ZV6GjkDRM7PsDYBCeh4Tc7tABktkJggXEv0bJ0pzIkh4ZtS1a166baaCv?= =?us-ascii?Q?8Ip2wBKljxiOZCFXlL0njgq8gyciefDbolkd7Fsse87IaZrQRFkras2LSwKj?= =?us-ascii?Q?gQllyyuPpMuCquaOInDY/GEflcUjoOOhoqcZKMM15ONo5+xjGycWHmZEilr5?= =?us-ascii?Q?4vQuqh9l5eqmTYYjY2isnlaiSL5tEeWrUZpsGTUz5gGgSouXYA8aQE2hQ8hf?= =?us-ascii?Q?2tn+tgwCAsjpsvTY7GpiY9WDvuYPwemCOFRCqNHaUR0pgiZ2dKfWmos8FnnB?= =?us-ascii?Q?0ulQxqeDzG7NV+BHHMmSHo9L2YJQheLbAIAMHekeeMIRrQEig1INt4uXOgmF?= =?us-ascii?Q?k2MiCGMvr2lE7+56NdBKV8tfYxSPZTibOUmyJ4xIoJG0hebVcEUdjkOZrkd+?= =?us-ascii?Q?G4/rbzKu+H65la+Z2NEIi5PzJNvpaoVwGfp8is2ObVsvU6aoIqGBCKAtpoQe?= =?us-ascii?Q?TeRqDrwPVprbuoJVn6iAMS2kgJO3Qgs/l82ZGvg6wCIptr1aX4K7z1e1jYdv?= =?us-ascii?Q?3lcOJo0yuYDEkInJInO5i6qMgPVyFnKf5yQt/P2xb0viCN6sXPN+w6acyswS?= =?us-ascii?Q?1K3BUszOAnXaJlO+Qv2I9ZpHwvSIBMX58Je7hsF/RGEG7VkBPn5yGYtmO1ZL?= =?us-ascii?Q?vPLk2TfzL2rjSwKfcCheJv0AGHZ+W0t/84WjInnFYXZdLmEvN9jaqTaPsQBS?= =?us-ascii?Q?shu42vvG4f5/hOmZ7yiDEe7ZY+2yS5mdzQb33xCQr7IIPVj07Xog9qhlLr1v?= =?us-ascii?Q?RpAzn1bYRwfPsmJPkwl2hqSJ4Lrldp/NAWxSJeH6qu0YzgEw2iueLNxgGob9?= =?us-ascii?Q?Gaz1IfVqC1to0H0b7eGuy0wAe49wgjOMmX2B9uU/1hKlZibuEi1PLhTNnk2x?= =?us-ascii?Q?5f+gNTlYWoMBlX3MOL4Ea1cPx149Xt0t0HHbUMnVQOu59MEJc1jDK5BCFR/E?= =?us-ascii?Q?YQFumOsioATixxQfKyP6RRzd5bbptvFAFVUjzG2UFYnWSFJn+M8tzkzjzlPd?= =?us-ascii?Q?k06zAi7GeI87Hs4VX9hi1TIbVNl9ewjT2rfS8qPHSKbyyKh5mz0ht+z0+grF?= =?us-ascii?Q?oOGOBd0FZsvACPRaR9L0vl2J7NrJJIapBP90VCd5qQjH2/wUHh5c7B4JAoDW?= =?us-ascii?Q?7E9mLjVj0JSlqU8WwaAIPUBoLd3ra3JfUwhRnEXU54/gJ+suRfteJsg6ZIY9?= =?us-ascii?Q?SmMaUYZegCwUUKDBHgClVFLOMM4xpX/KXim/tBw+a4pXf6hMtz9gtbB8WX8V?= =?us-ascii?Q?UTF20iGPpoAdfYIrOVI7uZxOHyC2b8u/QZ+V/ZzXJSXg3+vNfJHG7yOV+kTE?= =?us-ascii?Q?LkAzPUzzPWw3q4GZHA0I3mI=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: SupnHJN8XovT8aevg6CtORIVq6UI8BGrWOogkb+gI3mYDi/L63oiEn5bTYJcZIjfZLnEnQOFlfKk0UMQJEiz4uh/HNjYq63SCRGYBDCzzUQe6O6bt1LuspXxe3fDjjhs1+v9gCX+mvPGDBU1T9oLeHpDngyeZR2UVJPb/5fJnzxOn1Bs7tXPTvwcTTnQ4T6shs2KSvRfvDjA6TatQTcPbGVrCkTXeJ6ESnFSach6jlO0+L0Undh0wt9IqIuGRSMR9iM/ibgfu4uLPobUQ2DMTeDuaNzTx2w8MiwYH1R4CsO80AigzzyIy/g0pUhkQPjivDKSk/2DB9AK/oFOZ8hgOupyB4r9nNXo1OCgik8Z987EutgDYR+L2lGWyWaJNWhPcZnR4T0OuENKi+iFFUNkav8mHqiqxGsP9N+90CC8wVGqqgQQAbF+l61gw+ouqSQ0+sHdC1DxWwOHSWZ0crx8atg+CMAI7XBPGmZPqyeRUnx0eLLHbQj6BESjAVt948/KKqomQVvLV8a/d4fW7ANvqCkfkKW2wtc9UXsRo4PRtkI61VeizJ42Ic8YvGsjU8KQ4xuSD7d2WPF8i9GB337eWNK+RspQFuL4Q7jptDyiuMI= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 72e4e354-690c-45fb-57fd-08dc872317da X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:17.4782 (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: JWAqyV7sJesNhJ3cfhylTLCj6S3OjfWr7RAX2mujhppD52m8iEuXQCf7rbyeBAQIdDVGV0ckQerVAvKjf+hF31KCafg1yYroUStObMajZe4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: mbuKiPBfaMo9MmfXx1yh6M2n3yqskt_u X-Proofpoint-ORIG-GUID: mbuKiPBfaMo9MmfXx1yh6M2n3yqskt_u 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 --- 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 b933df290887..bf309b7515e7 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -6355,7 +6355,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; @@ -6365,15 +6364,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 Feb 12 19:04:02 2026 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 EAC7814A4C3 for ; Fri, 7 Jun 2024 18:53:52 +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=1717786434; cv=fail; b=IOld60fdASwlsllQMsUcCu7nTX0G7HV9IUh2kGTlxy0D17E0VDQF2ELtbiVtoFnqtaDX0eASebloPZYuk0zb4EEXs2sCZFSdWmSVWsW6cstHIKrSHaFjkIe6UYQLsJQatLKrPPhO2cIDO9iFRZrYKaj718Ydg+6PWtSEnDIsK4c= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786434; c=relaxed/simple; bh=jEvta4pFfQcXTPGbGH/LyIsgvTLScDY6hMP9nCRwmdU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=TjavLWAkA6OVEzcipxHYmOMNIiQnX77Yp6cWlre2xYUz1ZgA4JD0Rf0vcflHFg+fAqUXXok9ZWRSqsKhG0CojljVa9x0Sx0Ev1oXbwqXKY/u2ahjNCqX+FOA1xNn+pvIa87wDwu7UCjmnqijULkoZ5P83YP/rVrETb7cuk3XCak= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=lCCfvV8E; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=uuDZQpHK; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="lCCfvV8E"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="uuDZQpHK" Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CufGe021449; Fri, 7 Jun 2024 18:53:42 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=UJaoN99ei7MhPXDYFpeA/QQw4oOI9Gga2dfK1ADbeKQ=; b=lCCfvV8EQWct+MVgNxH7823G05w2FDp5MZ1ojOjML6qOb3H+aVj8l+ujCPl41Mo2lTIw GRAYBpMm8etzxcKbrKZmwlzTQ3iddE4/wWHVQxffXBucwdutCdMMRSX+F1yoHLq82vIZ uadaimxqS4/sIkrPgg6R9BQVY1GdCY2LiG4mYIOtf+xY896WctqQglncnYSFz/Tzr/Ak +yi3hM11YSQLpsTwGXDI7314QWXJEPI+bWGnvf+XD5cdffKh1Yy+3n0a/G0rLFNZeeV8 PJwSTpq+K93yvWh3kXtfJgxYHSx78p68DaNGaU51Nqpa/+QV3jyzh52EKU8rYUKuLIQH EA== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbrhea3w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:42 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR4E023938; Fri, 7 Jun 2024 18:53:40 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C5yTe6dy00VYUQJHk7tXi9O+kozuwAiBVjk6GIXKAUr0uGJ6p21j8bbuuN4qbeqnUpTF1r8iodQld6KSJyD25PGCKkagOiFh1CqkSmYrOdItzK81dcNiPxTFKLin7HIxxQzTiMiDxx0Ifckv5v6TLxIHsAbaqKgKNLtNtk1HvmZUX4IMjcO8XhFV2XTM2lnHFTL1pBKvR0sfaMNw5wzWJ9N0I8YpO6EuCdffUVhc341mqAGWwNB2rF2XuGKG41Q+zR3c55RrLouiGjvhBQKAWMgnGr8K52oXn9/Ggawqk9Z5j/5+y+wwLFdQzq1ibyFB7DQl2VC6UkQVN7pMJ0rwZQ== 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=UJaoN99ei7MhPXDYFpeA/QQw4oOI9Gga2dfK1ADbeKQ=; b=et8UaU6XZSNWM4FksdS8QeTwXawIrHxUGf+0XwgNE1XISpKQYSGhzJUMUWPI3Wy1+V064/8LAEw0m3aPmoiqGhsOnXvbZY2wo6ZeJIRYVjcgIlDrj3oyDj+Lf5Ur4qpnV8zu0ATyyDtmJuxFCKRwmDhp5tHrSuzFRXfUyZrJ6TKeoeuOVnwRutYj0r+gTRQBObI6QU9GMg07KqGkm47IHM2kLwKoJTsbndHQN3bhYAg+358IK/VFGvM/QBCfNj307nQsigqIzu0HVR9DSLKof/fyvOkKBvQO1z+pGoGpYuPaISWG8tSezAr+dbPiElW7lnjPAlGAzYtElpxHDUK2MQ== 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=UJaoN99ei7MhPXDYFpeA/QQw4oOI9Gga2dfK1ADbeKQ=; b=uuDZQpHKByuw4qoZWLgKz0kJaQlqWNrilM3tdq9/dG1LwUz8nYinank7Rbza5nz9lgikTsUYKoPBkchaP4ccYhE0+ZAM37T0mKidrjvRDnXAfGWoUKn0SmgeZwYS3hxEvpvXsy6+c1Y5fTHC43mnSJNq9PdFRqRgKSXrG1fGxBk= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53: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.7633.034; Fri, 7 Jun 2024 18:53:19 +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 v2 07/16] maple_tree: use mas_store_gfp() in mtree_store_range() Date: Fri, 7 Jun 2024 11:52:48 -0700 Message-ID: <20240607185257.963768-8-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR15CA0014.namprd15.prod.outlook.com (2603:10b6:208:1b4::27) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 8cb72308-3c33-405e-e936-08dc8723194c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?XX3EkMZ9PYiTn3KCtDMynu5l+HZGjrIK8MYBjEsCdSko4bG4wAfPNDi/PXqJ?= =?us-ascii?Q?CAC6bfK+ay7Z7PRjLKGKpHJSi4WOcCxfXaltlChmEjPYX3mKmd1xFDVn10pH?= =?us-ascii?Q?m7jzCvus5c5CjZCshPHetKugEkbiqUiSxRvTBXQhb9P1i32l9tdmwnTQ9yea?= =?us-ascii?Q?9pHFPmKiIz3czkt5T0ZgQGhmp71BntogyNLHkNwDuU+Nl0gYaLZaE5nTwB33?= =?us-ascii?Q?A81s9zrjkRBInJfJDlvKPShF+QCoz+gsYZNNDs1S+yuAtbXxqGr7ksv83Vy9?= =?us-ascii?Q?4je2UmCqNjMLFU/FAJs/XChz7SmgDHQ3d6AfUT7JxqPIcVPlcUB1UbM4GJDa?= =?us-ascii?Q?tbtATIVQHdQaxGY64ied7IjHjak+K/hzB8VnvZrMK5N8jfgFxdwhfvD1FmHO?= =?us-ascii?Q?qAPCHZW93X24qKsF98HFVG+MCWoFM2KXoiHBUiu6A/8/nn/rV/gk3KZWlTLZ?= =?us-ascii?Q?HtlTCorEnj11fWZVMvHM+L5XYIOasPttZkDNX10anmkpQwd0k/lsxKRH5mho?= =?us-ascii?Q?oPzZ7y0fRuVBtatJ+X5H0R8/ZuZADSwZ+9mEDaEMxwICQgaH8d+XNg1sV4/L?= =?us-ascii?Q?8L+Hf9rjWnP2pI+kMPRsG84KvAMWERCLx4LokBEggLAMIU/tFLQZNOubXIlj?= =?us-ascii?Q?wNkvSJeYHnNWD5aOwjSCX0ABWvKvPXF+zymxOLo9oqOkMCiJc8U5qWtF8VUh?= =?us-ascii?Q?EOE+OqmOQeTZNhEFkPWT79dutjHpnomZ4W4gG3OfU+iEYi69y0nO3y9rsLrq?= =?us-ascii?Q?Ah/KEJyJI4tMVHzIxDEf2Zhax7WIxugHCph/io9bV0OiE2hR0XIcJsOgData?= =?us-ascii?Q?WSMZTthHGwzwH6ORe9vl7CZjicfPGHoWrclyKFztB+lUlymW/E3x3rK/xSZn?= =?us-ascii?Q?jv8dnbBhx2jYZ6Ezn8B+OLmHoCEE1646by8Rl+SVjlCNYaorn2beTIiJj1DF?= =?us-ascii?Q?J8hczJiE+TbbL87c8zoBzwuF7ff8xXRV58En2SvQDMDT9366/tKjecDnhaeP?= =?us-ascii?Q?6npy3IWOgmFJfUxhL3AnU1iV2RMeA5L+dzTjR22dw21dN6OfE/2EPkJgQ1hD?= =?us-ascii?Q?Bkb8evT7pPgvRlSy9ts8vs4Jhavui2QvwCH8V2CQocx2GDGdBPWT2Q96h2da?= =?us-ascii?Q?l3U4NlyaqEkxwSmoRsw358PtDuTdwBU7pyHsWJ8F5blsmDsEi47MnGcgsTgB?= =?us-ascii?Q?GoNFbtGjYsB4FrRQ4+iAlFk6iou+7LpgMfZEhm8jRK91RO97mFkjzew4b2HF?= =?us-ascii?Q?8W6IgIV7XbfMTAh6yQirnTX869OoAX7cedGIKquwkGsFCxBjm8S5kJyBqKdj?= =?us-ascii?Q?lV2HsBD65HRReHwCi7ofA72K?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?vjhYU2yAcXz47qIIuFAG/FHohrjT+E0e1ayZFVd7Pcy98/HME73djnD+Bel5?= =?us-ascii?Q?P0Kw8JllhZbh2LvQ61VzRuJQIH2x4U+QC9QB2IXNyp0yisPhWNVQ97qsmWza?= =?us-ascii?Q?5wU/VwW4ORZTVC/AaBDcssjL1PBLfBt+GnMFdLrC9yOFV+2497KodtV/tMBH?= =?us-ascii?Q?uCoyRWBOEm81w2mkA9TweL6G69db3gkIibP3U2ZZuRTOZFFuehobXAM87CRE?= =?us-ascii?Q?/IiaOYBvPRNW3YFF1d1s1Hc3Mo9MQSKn/qwIj0qBRZB72R/98HPf/aaMhZoL?= =?us-ascii?Q?zgv+nh2ZPx9eJTYzmlQUmjchndVoWfyyshFNjAl3EaZ1AublPBIYJ4c+xcYR?= =?us-ascii?Q?HQk55BWqPBrpFlOKjV3xwxsUJ9F65ZuX8AtKvpRHfJwfevXKSdS9Q9JpgAwR?= =?us-ascii?Q?ZcPkyzZ730hZjDRmZ+Rg0tFPcFzkkbQsnWW7eKf1zd/UN2qzTAKizF54/WV8?= =?us-ascii?Q?e41Ka3sKbqizqcCnsKv45EyTNpgodKqasmuNA08+P6j/Z3JiVhAiMWAV7vkB?= =?us-ascii?Q?z0ukQRXi7T4XBy9jQZVX5xd84vaNXHvaJMPkZaB7noHD3XsXsGljWikcknYA?= =?us-ascii?Q?EYAsI1wA3qbj+99esjrDuhXOWYeqXPpHJjH+yVKm1o593D+WdHOIet0AQofO?= =?us-ascii?Q?yYWaTfp+umW1UmB8Opel5A7vV3ru50jtIybnTea++tElTW0JXdBAhcsvPZZR?= =?us-ascii?Q?AK1v9AYEfyL6rTaqMFdvg95fEA4+8wzOvOQYEaXnN+2mKSpCBBw2BHt9rDfP?= =?us-ascii?Q?f7mOek3E44qIs42sy8MZvYbC3krBL/BFJuOvScDBlT3RnbFMocwPk2nqRJr2?= =?us-ascii?Q?MWSSR6izk1vzCNsifq2rSsQfeQFA6lL7k/6aL51OMug2T70Cy8IPsfxZG2Ep?= =?us-ascii?Q?SrQEWNzR/f+B6/g3qD1s3ql0aE9ryJ0d84KItW1LlVrd4QXdtNkiv4SAvuM3?= =?us-ascii?Q?5s2iDBthtJJxOI3oe/ich4AP3SrWFLs86eUjDmgoFlJ5SVSTykJYqVpzx/jF?= =?us-ascii?Q?9Qso5qY9iIwfuv1n+El5Ny43ts713rrTZ3SdiJODEy9S983kt1J2tKzegylx?= =?us-ascii?Q?D2AL65hrisC1b/zJo95Sb4i8QTVccSh1oH/Kp8BMM3ZGwE5TtkyTftjQQZic?= =?us-ascii?Q?o/FSGhbNu7HyWE6DSG0qdvDQfZgrBQAfSAFBLYQ1o2ubRD6Kfa/fTJ8hS0hj?= =?us-ascii?Q?Tjnel8qvIw47/LmKWZ42Fqht2HlpvFCg82BS22zpg0Tex8+p0r17pQVdzo8/?= =?us-ascii?Q?lzCPhm9a3q49jGpWJebbyJbLSeOaocyhF+feLLWe8YtXZTXOhhaxkTWfo3Ip?= =?us-ascii?Q?76LX2ek/Pw2kbxvtkHdID57sp+2Z7aKiNT87mJpvf1Lv6iWmTsqjt/zRC/gP?= =?us-ascii?Q?OUNS2/RAKQ96S2VybwdMSmF8+cD76XUFGmUh6KXdfTlltzLGmr0CwZJk5Z1U?= =?us-ascii?Q?IX+WEceNs5j7wGupb5MA6hVg036JyfYrpG1uQvU+0z8DiXizHYwZE6I0xryk?= =?us-ascii?Q?A0g3A89kGafxwvqv2MfL7YUlmHhHywU0frbWhJp1xZZPFIVcfItkPitaOoHQ?= =?us-ascii?Q?GeHO9bQ2f8eRQCw5IcCekuvTOA2aY1B72y1UZX5Su3WNgDCfLxK3+HqgaVUr?= =?us-ascii?Q?TfypB/5ma7Ncdl7VPJx5b+g=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 5FooOIwhayQw3KtO3tZwwZwN8nLFWq8tf4R4MZ9z7vPoKOsP03VGxsplCI1BMZqRRMNq8lgd+yrXetnbBB/pvBIP+suEo5m4Tz7c46khFrM19lJr5heDGF61JWb8Rrz+iXqbuwrtyEAU+3+4xPcfW3J9RIrK/cdQ9q9YTcTdSmAToBduEnbPhHr9QmvXJ0q2zuyUqrklt7dcfSlGocsOL5dl7xV7wmCLhsxViGvQBvjF1WRNggypOLRSkbo/f4gq4lCRmBiJG0bcCVcbx6XH0Migu/pUUu9aXiGdhoIYlZ81ywMjIxldhTy0UJ6jqAF/mn5ZP5FnN0aZWT3270VurV+QB9hRMrfPAU1mPaAuRWkKikRtP3lpY4NlaRfmwTJcEZ6YX5Ykpijni4EYfLG1ogff3/yAGI9+GBkzwO/JFhOkC/3Hn2B0aFzEiRpRCmdA0mu/WZRjhasGhEU/cJ4JOBk6aUj31Ozk02i7TpkLeEDEGuJ1uRZNjM6BMSLN47HlT2k0UaBPGwHXiGpgh3MIg5HUH9WTQZVnnaolnkXFRDVXbsV/na1MUscNcx/gqpn77shmw/6FeRaRcR/Ci/iELjb8NWyObjbnSKG8E5PHFT0= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8cb72308-3c33-405e-e936-08dc8723194c X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:19.8887 (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: 4tPqoPxWH465rV2OI/3hBgJZTjX2hmjJUxV4tJb8ypyAO9ufFR/vh8Aa+0rJaRZXq3revQnMmbroMXPCZA9zQegAqw63PfU3Lb+rNOdKt/E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: 38jTbIEemBuoqz-hQ_1EJkGhInPKsRSL X-Proofpoint-ORIG-GUID: 38jTbIEemBuoqz-hQ_1EJkGhInPKsRSL 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 --- 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 bf309b7515e7..a955316b6745 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -6459,7 +6459,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); @@ -6470,17 +6469,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 Feb 12 19:04:02 2026 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 2D3C814B07B for ; Fri, 7 Jun 2024 18:53:52 +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=1717786434; cv=fail; b=u8yhBYwMfnxWalP57cwHujSpPQ/FOhebzb4pGslhTLlVh5PD6t8jMOLKnvBWL7TFzRQ4gBGwrbfTIMr7yNkx35wkx9eIag1IYKvJiO+4W8E2h9DNaiKKPvtgZI1u1RE/vunVIvADrV0n+aQ7jWKTIDp80NWe4he9jMGKhL3rYoI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786434; c=relaxed/simple; bh=FHBPLAk1yjQfLp/gCiHi8gjI2VEhvH6ZZCHdcF/acfg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=sLMHLOb5OsRn4xcYQ1Cceb9i6wXh9h2kARtjoGKVPTZevkgrNBtECcDxt6rwN3PT1lcw2+mmnu6woMhj0qaFtd77xLdYXmDuVWXux3Jd/Us4luOOonLmfoN8JsIze5dgbpZ4GRXFaz7vp83h5GeYy/HFRN5cFJ0CC299hhOvPfc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=Wn/pWOf0; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=jM47eTXs; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="Wn/pWOf0"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="jM47eTXs" Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457Cui9W016028; Fri, 7 Jun 2024 18:53:43 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=txVUe87r89sa/r6dkQBB9JXM5MiU6n0BwAusUfBDG20=; b=Wn/pWOf0w9AcHLetpZHNfsGbe79H8pS3kPQe5/9FvEUSjmfrcHnRVNEArKS+scEly/PW QJ9YwFmKK5KH3wQoEaEoQWy/VLVnd8/wHqcLGxF8uRZqTNNwEgtmtrDQcUYg9KDGh1Js H1Kh6my9H5z3euCfScr4YHdv/4Q7jAEJZ4ZutrMsYzDzgFycHiXtQwrewHmHyuNkCBJO VKmg/aHSYqSbbIjjaBVuDEOD5IHiCqtjxHntHBD/OViyGZK2X27GTwdzCcqlulhIloOx g50pfZOs8Pz4Y62PDAm+RNZ380WXFGRAepyiZqjS++WMNDraQMX6nOd8XX75IV7E8MPX ig== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbqn69hc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:42 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR4F023938; Fri, 7 Jun 2024 18:53:41 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-5 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:41 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IVoVgsZEsqtZWegYCqRDDoSpE0E64vnOp9f+5Rl1NAjMeIJx3LkuexlS6aQQdQXUulksOXdH1NahEgiy85m0VoeUaqxhhMxoBJhNGWP18Fx6vRPxNTj0FJbB2nDwvqZE6z2rMPTMjSFiT/OQzI/GbMOo/xIejmHWRXa9PStkmCIk9EnfTKa8KLT7QgFzc0DgS9zu5BP7FJbdK/N92/lvSGHJLS7fG0TIpIeNRi8XEIGwKEKQB/2bxhtm51s8OJsS47ZyZuH6UGWvl4ZHKyZbD2VzTzLcrVhUKyPDbVXAtNFbnI8wxYBzDx7CK4u9YJ9+X6E+aW+WVv1SAXH9TMD3Sg== 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=txVUe87r89sa/r6dkQBB9JXM5MiU6n0BwAusUfBDG20=; b=H0hzFyjMpWefWOBoHqNvDNJ1Hmv2/wgknJe0SiFsm5xHfmwqBUH2AO9244BmLll7cLiV9U1vss6QKp9eApWTrp9uNDB4VF8AFjA2Sx+dvOPl9TnK/GvRu3cN0AGjPGKbwxLWyooG5McNfedjdhk4J5DgQIzMH7doVvGgLFghQEzkiNBx88/bllqmFStOInJU7ivCqeMpVwKT7ixIORYEK8U6PUK0Lm4LWB+QkBnFrzZLLSp3H/2A+drm03qlaz904juC/hoJckI7MXe88YYBx2naOmA3GDuui9hl6n2mdKt+EP5jXDA7cLCNDPGYmKJg4SnF6WDq6RYcRN1Bd9vjKg== 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=txVUe87r89sa/r6dkQBB9JXM5MiU6n0BwAusUfBDG20=; b=jM47eTXslYt1uw8v8AuLjjWHbNtBaqZjXuV6sN9fHOB8HIvHckmtV2aHdTeu02u6wEL0Cv0tTq6DxEXLrLIBWHtIPVRpdu/EsdbTA9ZmzTkOQ7T4hCGcpk9X0zsMQXwkv9nOtbJ7BmaOhZq+bYCyrgN9B2CvtIBUZte6dShAF/Q= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:22 +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.7633.034; Fri, 7 Jun 2024 18:53:22 +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 v2 08/16] maple_tree: print store type in mas_dump() Date: Fri, 7 Jun 2024 11:52:49 -0700 Message-ID: <20240607185257.963768-9-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL0PR1501CA0028.namprd15.prod.outlook.com (2603:10b6:207:17::41) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 8205936e-3d8c-4830-264d-08dc87231ae2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?RlLfwVqGFaFyBI2DdDSqSQQZ4lWLVY+x0flQbRDFrCVHlU7NW8aNCW4NLGOz?= =?us-ascii?Q?R0OAiFaWOe1POiiMO5kpcXmLEUwwaUPmBzIOvucKlZCM/bFp6OuWqVocEhC+?= =?us-ascii?Q?kGAoKqPCucl5N2DlDrYHE9VgA6huSkSPHFKIoUvjW/1bEYwuny7Jcgsf2GYb?= =?us-ascii?Q?PBv8fy7Zjm26nLEEQW1d57zmTsT8AYcZJ9wZr2OV2yz+maURBOjE7kyH3AJL?= =?us-ascii?Q?CyUQI923F9zryWXS0p7/M1WLaJA4vaQ/UkwVp5TiWv1Im5ggeyJORBtMZ1AQ?= =?us-ascii?Q?CGH8my4yBGHzNsV8MdzdPLGnR6erMKXEVj9amSnDoGm5ftwW7FWVAMxJ0rbZ?= =?us-ascii?Q?szUTWi2mVDkKyKDdfeVnXFZ9J5AFxu8qvGHkjhLZEireEdomqreehcp63PQR?= =?us-ascii?Q?mWeOl2nr/i59vMSsEzDI3MC1ngUJPDxn/DjLqZ8gQNV8Y35eB73KxZ+dqwJy?= =?us-ascii?Q?HS/i4IdZ1fqv/LPN/xwyAuPaPCghUFH3GTXVNqK1JYtNgYUTyqSnyAIk6+j9?= =?us-ascii?Q?pKiV2LNjIt3fuehPeFo0V4tVc1u8mTbsvQ9s4jYwloigqWX4DMIa07mjTTMe?= =?us-ascii?Q?mreN2CGyjYAl8Dq87SaDKWh0Gyp8/TaPaLjWQ0mMr7qdzA+ToLBVyZ6sAWuU?= =?us-ascii?Q?AWaluTMZ6/yboWnw0c0LF5cNSOghaylkwdLqb4MBRo4XDRa+062rjLZCjaAj?= =?us-ascii?Q?fGX359Anl1nguwXbcF2twYfVabhyJ/e6fJaYADlXniYU8lhUIG7wAzraOX7x?= =?us-ascii?Q?rxlj5rFX6jRfelSYzxgDZzbanXgvmhuqaa1WLIPsx1dyRKx7dL3VnkkJr9ge?= =?us-ascii?Q?LZNSXYd1SoFqW/2vEa2995jQn2wmVIz/psQco8NWauA3zCIXbBhXIuZPOttV?= =?us-ascii?Q?QTwrryKKBEVvonx9b86Is7sYFDSRrYF6PstHdOjjX/8zrEZjSX5itLcOOZi/?= =?us-ascii?Q?D7h8IWNvBxyPcL0yWsgwp87gH3qi8FH+g87ybD+rZ0Dls5kgQOy+ZSX6j0TT?= =?us-ascii?Q?f+rM1M2LYvuqytxZ/BAxt9lad0ERweEynMM3jyq0seMt5UKEwwL40sDfWxu6?= =?us-ascii?Q?v+YKOHec5GiSS6/ZCErTmsOtEWF/z6qvPfil8vHrIyCF1hPBSCq7eGZ4w+Gg?= =?us-ascii?Q?trG7HC9XXK78w1RzpyzkBtdHlcWq0OoIYPtEe4a+usMatlL+GK5E9cpxbbT7?= =?us-ascii?Q?WdRz0DyZdMOsIW8bcygvlR/rHw8to4cNjdJdTefH91IbXlakHKZfeYDrSEDK?= =?us-ascii?Q?tKlIGmb3u5IoYcA50yVQbgXNETkQItOCTL5AGYpYkhKGDMh8mRqDdJH2xL3g?= =?us-ascii?Q?2Lw=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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?PsLagm3uE3R3CfrAkba5WxifHESo/ANJu6upD6LHsjh786htgGpSUz2ogKzN?= =?us-ascii?Q?savQ4p3o/TJ46yu3cIaq9Zu3MVQnw5ItXRF7B/xB2YMeCXKmklZkHaSBgzPj?= =?us-ascii?Q?Q8R2tyjZ2Bq/iZtAx+Lb1xEBdqzz/NIOrwR/ZLxnKFq36OTd74x4xplpPmtN?= =?us-ascii?Q?4NAd8OJBgKnr223hbtXEWcPPe1bXWbMS5XfbuNO58Go2zng8i4/Ogfrb+hOn?= =?us-ascii?Q?QhWUVtWzQyGDmC8bFh6eo2Awa63KVCsaLd2WI9vQ4qRwW7QyGySCwXyNVclE?= =?us-ascii?Q?ohe9VmldpsISajZyBIaXr/iLDGQbafrYfOuptC+dU0ur7GsSXGsNDIc9nH4m?= =?us-ascii?Q?rpNUmJ7Id/BdvF9UOj5grVdzCsYdi4aj0c9sxH7j6aApMgB59v/+VgVMVXHg?= =?us-ascii?Q?HaN+TseAth139EeEOm+qKfFJtcW4jG86pvrNOd58zeINRDEwBCxdb/mAM2j6?= =?us-ascii?Q?+gq41irRrgXaOlVft0kndwc7rqXLviXLkKxZXKi2syEvbnsMf3hF4OExVS9D?= =?us-ascii?Q?PFLWUOiYttqg3SvySBUBylBIJtvn925vD4YH4Jb3tymbjZkVLthipn+ZymrW?= =?us-ascii?Q?/Z4BqoTi87PoWMO4cfExhz4io7ZLAxMS5pCYL09c5rRHZzXr170RuWA1bY99?= =?us-ascii?Q?QB6TPRDjunRJ5zOR78DTwtKt701MEkw7QmvSt0yRYXlCnIc4NfIioW3SrjA6?= =?us-ascii?Q?6K/1uvNGgwcSXc/XfLly7z3YnqfbM/H4ODa4BeSSqLyG7rHvGqB8I3YFcR8T?= =?us-ascii?Q?MaPgpaXFAhUn69ZTJLGfGIWK8HPBD+PqchL1HkxsLeToAhfcThJRRgMP634m?= =?us-ascii?Q?umFeWwR50cMGppC+VknvDrDMnA5tXVy6Cvmn2xmRuxcvndx3r7wDoty4DYNu?= =?us-ascii?Q?FlmIFGNJgPT4io+Vz0RFlG4/A0X0klCrfcrfW9x5xvtds5/iYNW8bwLcTDJk?= =?us-ascii?Q?uOh5zWs/hXH/4tR8hL/Mm1roojaG0KxQ7oPuUXA+QCVi1PZeUYhli1UCAooT?= =?us-ascii?Q?4Jnk/HTneVD56Ra91FX/c6jJrUEET/OwPhfjyg4ng+2IultYA1Xav5ZoIhXJ?= =?us-ascii?Q?P7ryXd6bxKvmKdRV3+GhsvOl/R1PX8OPBuGTqpjbmlHEIU7fLIW3/hxm3oFo?= =?us-ascii?Q?lz8C6L9qiajqrHBlAfJ29aRgClm2HryX62nNs5wRWW2lMkTToiXsrotAHU/S?= =?us-ascii?Q?pqktUjl65GVy4IXfitBWf5PyYKIsoUieWXTKz70CinbJOc02i68prOp/EqyA?= =?us-ascii?Q?X4mXWlIs/qKiZIapY9fxFDmfBIV9FP8mqICWHxELT6Dh8hHqaMKW+PMNJvKT?= =?us-ascii?Q?ReHFFlFPsDfpwRbBAONa1FEWfnFVAJCCOlKc/HlziSsMwcCLSoTedGnCm+/B?= =?us-ascii?Q?WeQwQGonadLKCZJ8uW89w6X2PmZdUpNz5k7SMJs1omfWGpvaBnrvJbFRxbQS?= =?us-ascii?Q?X0A16HTA/ow1fAdrroXgk+EjiT04xwHnp1qkcOQPeu38ogi3WjYt8merl4A1?= =?us-ascii?Q?SpZo0LAN4eYA2DPEXse5p1TdqUCFpAAOwTD444dZYHGq8iMq84+YXVZB2Yz5?= =?us-ascii?Q?Rspy2e76kl7LrJgSfei8jpXNG+BtDlk2A3eDO2kL0d3KvjonGuOoqwwdUfjG?= =?us-ascii?Q?YG1VGrrsk4owPTwhM7yHw88=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: SiWiWLru+K+HbHdhMwbib0oY+BAMYkV2oFsO7d+ZyWM81CSRZuGza6v3RDfaUMUQtPRw9J6VS/CAdOAqe8yf9UCiEjsY15JBtsCunWWYTrACql/tft8cVZc8dzkOELHCly4zf0oWjhHOKt/TjXlCsKHVZG67tszKsidsCvLI89neYTvD/5EWfliFnVlMg3SGvtyqzMrUp/dlAypfgwJkTLRr+fgXYmgtyq9Jl6z8zPkVIfW66izw/YvB2435erevYJSEMe/8rXHCqkNHYWln3JSgviAdSphWV6EHhpdCUieGaqTeWYiFixFRjW7DuqzuVKbCZtxEozq6eQ7Yvm4vS+y0cYJuBBTXx/AtYwWz34xYXAeM3ddGrvTqijNWaZU897Q7CuCP6audKQFZ9T8Yib+/fpmOnYI889Z2WGg1nQkJYOQXD9F4F6Id0MRAH3PIA62Btve1QpRzud/GjP07duUiv6beveLrwZTrHS/Fw32w4eflI78QwaGAeS1sKK3T99xKLuPy1xQiHuaV+h1waScUlet898qVwiCPZGOAsk/mYYS9jyR1nj0ohNF4/feyVqGryUKBcd+egoDBIbh7Je4uBi6+dK9JhBLCSt+QXQU= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8205936e-3d8c-4830-264d-08dc87231ae2 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:22.5718 (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: 6QXiWF0iZtDb7cGI5GYCOIpiUZmXhSkGhwPwSgLlBCzUOzcL0WGu7eBHEVWwt9XrzXW86HJsgcRgLkZHRtUuvdfEa2+9L6q4ycpRVzT90hI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-ORIG-GUID: iMfofkIRx9jhm6tGWk7hDfqzHcNiBV6L X-Proofpoint-GUID: iMfofkIRx9jhm6tGWk7hDfqzHcNiBV6L 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 --- lib/maple_tree.c | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index a955316b6745..91b18eef81e1 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -7731,6 +7731,45 @@ 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 Feb 12 19:04:02 2026 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 2E0ED15AD9C for ; Fri, 7 Jun 2024 18:53:54 +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=1717786436; cv=fail; b=oi7OkevLEPxMo8nLeRakr09y3ZlDWSvoas143D7t6ZMNY6qEXIUnlmeXp6PlijUSN49gJGlrflmNe2k7Y0lBbljXWdAVXdP6romzYg3/ii7dkoyw4VBx/zLq7cXd/l4mbkc8ogoVPH3s9N38PdaY0plOcatdl5CujXMttAKXS2s= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786436; c=relaxed/simple; bh=SC9mgJvnHR0lVnGesibUnyhPSmqA4MG2OZQml/tJc1o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=EyW/6m+sVGvn7uNl6SMHiNuykSUU2pmLa3/1nyKS5h/KslGDUuUymWthNSN0EKHD1+lnxN+i7FQhLZt8uCcBI+f+y1Rx3rUQ57SfT3OrzO+y80AzHVSDD+jmjqNfbQIhZAQEAsT61Hma542ZikwcPpvW+flkiN1YmV89MAMZWvU= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=mmAZov7q; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=CeUOI6fe; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="mmAZov7q"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="CeUOI6fe" Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457Cv6SL010387; Fri, 7 Jun 2024 18:53:43 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=FdLnC6elJcTLzta3VDOmOxQ9vkOouE2N1SeWytMh46M=; b=mmAZov7qNpW/CQ+J7pvpPoJ9rERDO4fr3jJZI5UDjuO0vbeIZJr1ij9CiryO9Naif8VU 37lOX2S+lToXi/5e5KQSgeoj9bGxJesgMhcRjGNGVWixtYrSxAL9kj02sl2/pXU61EjJ 0bhZjfKL82ThOLotCsDk2S/Ak43xqMi667CTJqsvf1PK71fiFm4IiLs0M374hc/ZEon+ LzwNu48Q4heSPUmVMAQxGVZAaUI2aIaxEJkelOK6C2kNPmBBvTZaVgcSBKdN9Sc/kB+a lu3Yevl/wjbj4bh8/g52BEqgaKwC0z1CpjKGcMB0xFCwXUOVAgwNrdGte0SR+XejuViC bA== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbtwe89a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:43 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR4H023938; Fri, 7 Jun 2024 18:53:41 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-6 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:41 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lauC7seCsn1sPsf1tyJm23MhZTicEgnI3c+jWwhKiVBLjLHaqSqXQNlYVxznqKfS6yot9N1HKTEcLCHHS86JYdRa8ikypD+J/D27cE1O7bLxAro5r0+WwzMeg/bZ+3BodmYieYIZvi8aNs3W5B/m86oSQwU9tEmKfPYHpYO16KzLDKPof6PMVJPvS+/c3WHQuGg3Bf4PrlRtdFUYBUXwTHrj4Ajdg2LiZgYa4bFMMOY2pYic4u9bCWBLRPy/brS+Vi7kkJ7v5B3KnqtB0uZ8B3LV69mGD8MiHbl4WLHxJO2KReFWbMMVtaWKvwK//fk2Dyi2TvafvwjI5whmq6MdTQ== 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=FdLnC6elJcTLzta3VDOmOxQ9vkOouE2N1SeWytMh46M=; b=KlyO6JCWMQOENTQsL378WuGDQt26akF6kdrhYHkwEnEg+zfRlJ+a+dUuIhVJLM6pkPeN7vD0eidKa3ZRPTqhYBHP6vIc3g4z48SSPW9Gp/GO0szYH3h/B5OCOYaOrJt4B9nKDFQgezX9kk8S39HidVXHtDkxV94mP3NAS5fHvTrPkK5Al/VQ66QFUGKM9KYr+xWFpYykCXYy/H7vu7seYxa6Rc6gsBFuomAisj1mXLj8LUigAqWm89Tx2znwXOjLdTPWLEuXAj71+RQon3UeJyo2zDo6hzt7EkWFGbfcL0eOmum7gfgTFoOy85slAq4Kyiqc7NhqfCwfEcPN/jDCWQ== 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=FdLnC6elJcTLzta3VDOmOxQ9vkOouE2N1SeWytMh46M=; b=CeUOI6fe9sseLBeffNK03C40fud03HNC4nKgnKGCK/7umQerBcX+PoXqj2zNYPF0b+y9SI0usfmYZHxclwXm9G4+hmkscVQ2WdWmw/cfr5uzh8QgiA6OCVs7J8P3zGhBCDx8l2Z31UxznbEeOZMFAmKSg9ftORfDsnD4wMRbFVE= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53: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.7633.034; Fri, 7 Jun 2024 18:53: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 v2 09/16] maple_tree: use store type in mas_wr_store_entry() Date: Fri, 7 Jun 2024 11:52:50 -0700 Message-ID: <20240607185257.963768-10-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL0PR1501CA0024.namprd15.prod.outlook.com (2603:10b6:207:17::37) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: cfb1a767-1a42-49b5-b21f-08dc87231c75 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?SOrt0XI8XnAPZew8pEleIYc0pqE3lq/s4L4eIaqUwyHwPTvMD2vpEGtIq3it?= =?us-ascii?Q?i2LRlcsFVPwNuiFcpGJS9BePNkEwuHt4Jy/p7Hux4iXqql++b9P3PKmnYekr?= =?us-ascii?Q?n7ymsF8cEVyQFWwoj9DGDTE+BXxgb0M4zWYB8T/SVUrFiBqqljiiapCnPdem?= =?us-ascii?Q?DMUdFSWsTYe9qOjsB9nthd9olSpVZGSK98IyCN+qhSJuAUeuJOQafHWO6BFL?= =?us-ascii?Q?g4LiYmDHD/2nYEg1N/JR7Ngg01sgSsFLd/cEsB7biTTolmYHNzywe8v6+zpe?= =?us-ascii?Q?Tr/rx+m6GYYLgUY+gfNg1Mbt+t48kyM+h6jAAE+576SGcoAZixf88osHpEQp?= =?us-ascii?Q?+k11UWXi3O32DWxh56mM9y93wETPhW8gRHJAe24hf5s2+kiyRQUd91iY9inB?= =?us-ascii?Q?vaX5vJ/DYw0x7Nr+w4yIKVld3grJ6XGQMuqCXltkX3WaJyUSjG/fOtrkkjoE?= =?us-ascii?Q?4vb8OoB8NDVPNPRBBou13LhWGNBa2udM2tZ+qxrjGtYrLIniVBaCVfY0tlnO?= =?us-ascii?Q?rD+1nKHg6B8LpOym87hOw858XeNzX9o69kgDodG0OSAsqnaMKg3E+V9yogTs?= =?us-ascii?Q?rDYdNJBlbkcXdI8ONaszT3J0NaEgjOGUZycNg8tN940RoRpEgWFlga1d7TsU?= =?us-ascii?Q?MrkZGKN/6//x9wdgDik2R7++o5gRzmwjSUgFdPkf5blc7w+iwUc2M9h31JsL?= =?us-ascii?Q?x3x4LfPeeZtTcZCXGBKbPFiK0fZvG7gyq82iMucisHkBeuOXt6t/5URXxX60?= =?us-ascii?Q?fR2A9NsZZHEzoiQhtCes/xUz8mvUdHNtyKf4RiEBKnvaeMdRsE5KTVhXWRac?= =?us-ascii?Q?dqMqck4hPg+ij/SiOVJa91CzhekY2wZneyueYjwVgTlFt4AqZLP+lY4v9T7x?= =?us-ascii?Q?Fq3C9me0ESg9QnQKK0gx0U/CzxG3M64Wkw28z1BFuntT88vnFQwTUFB4hrxV?= =?us-ascii?Q?WGFR2i4Y3TfQFM7Vg/UQwL4Z9ywyQdkNndmhp17+pcdwWqQMN+qp6BTLWdid?= =?us-ascii?Q?yCr2ofaCfQUBF3Ybw0twcZNdi+p14CDR2g02BNI6ACiIS6DMHEB6fxvzXsPs?= =?us-ascii?Q?VaSrKHCj/59Nej0/jAgLepndm9zezi1HEvzBPtlvudhsgBBHvxGZcwOOYzmR?= =?us-ascii?Q?kn5Rs1GRuDXFvsNJ9K488csx4MSaj8LNlvLCS14FY3vEoBawpVr4tPKxz6AR?= =?us-ascii?Q?BoFsJn7cQJuKUl1iQ54wHBb3I5a8Kfv2sx2Y/rsbqgDhNUOGY9UkDyE4VmdZ?= =?us-ascii?Q?lmsaDb3mj/0PKDY/DTZXZl3N/cbokw+vopoRYGvQE6dveFjiFFr5UQQU1gLx?= =?us-ascii?Q?W9TEMr3aTCEjMDpCkeJX7TBE?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?RBH6gLPWmishdK9gBpk9s0jWJkpqwagLssRkdcKt/N5Ipin6B8NmWchAaDdX?= =?us-ascii?Q?H66nEnEUCYORdyvUXZqZTto44J6Lkxyx0cugUlk4AB3uOAYc874/Y5GuRIjJ?= =?us-ascii?Q?t3HxkmYU3AbkU3LumKIGV4+kgvIVRK6ircmJuXTah/cwwaacMkl1xsz3QKpv?= =?us-ascii?Q?x1wvf0uCuPwLrudl/cDRatxlxzRDO2qIGVRN1OAD7uT68zCBcCxzl14ARsxt?= =?us-ascii?Q?rjncORxTn3ZKyJEGPl3sdDzvS0Vr0mlT7oBnV26qpdKxumukbU4uYtoNg0I0?= =?us-ascii?Q?2nahCXY39sgGxLIFDws7aav5DWQou2j+4YjhsJJWyheHWLmTAKme4mVQatLJ?= =?us-ascii?Q?WfY3WjhtVCfORTN+W53Fe4VBLCtglch7xTBzbjQvZztP/EIAO2JKraR13qFX?= =?us-ascii?Q?OMs9IUFD+Zbo3A202Z9kH75CjAG+qxxkY31Lz2r7lIIS2XPzDOjHEY+Afjyn?= =?us-ascii?Q?ArmBBqgk5REyQEmr1bzQHCpPj+e8/JvnZgcilxo90tToLps7SfloYyEi6uyQ?= =?us-ascii?Q?lERFs9PWNSCqaWBOOvG7zQzf56IF2wTI4jNWHOfngXXGx6Seoe5h1KeERQt/?= =?us-ascii?Q?hXZDaQ69mBY4hYwvbHMNxcb8wPpGQCSzGzevTccF7LghZ+2Xl50dstHZKUlk?= =?us-ascii?Q?kmRbqzQBmhj3LuZfyB32jKGhjpXtJJeQyfhdnSpQgSmox+HFTTQEUBM3xFnk?= =?us-ascii?Q?yLyxElGAGYhE/vnCGdaniQtoaciPRTNmrl4JIhmz3nktiPNVTjKaA+MZ5uLF?= =?us-ascii?Q?Gy6W7iJRDwIeRzAmPX7GAKeZsLs2fOfUHof5p/NFmQqbqBGiXSV2CeZXezrV?= =?us-ascii?Q?RuJpCmxcEawBtb/XfUeQvPbqpBC0KjNW6IZEuvmiaLEr+gCHe1316YHA2Y/G?= =?us-ascii?Q?P36tkDO0/8KGHQQIqgdIySBjQCXydfKpcyELLKYnedjVF+ZmH+KjXOqqQVPK?= =?us-ascii?Q?t03WR+a4kyh3YpVbbD0nHvL7D29SK9EgxHuqB071gNHK5afA+hseNd2qKnXe?= =?us-ascii?Q?MC324/XojmzWog0+kiAjjHm5gp6pez6cm3EZFgwn4yfiXB3kawDfYEeySAvD?= =?us-ascii?Q?JAwIr1fiRq7+puJCHbNjLfsYTHX1UPuRHlUOqrjQPJUGie5PpLBoZ8u94WYv?= =?us-ascii?Q?7hrmLQNjT0qNAT0HdFYe02+KHikbd8TgquznUMH6z4aE2gld+LbLM9RbagVG?= =?us-ascii?Q?rSAT8gl3xNSf/PXm/JsPCrhaqAiZByf7EVdBn8OXCgSpcyTrg9xSlu5Yu4+Q?= =?us-ascii?Q?b1gr3pvcv/ncPYiBKxSHf+uvfQ9cNCLEFdNXIDYkO4NYPjK/P5c39+CQ/bRS?= =?us-ascii?Q?iEgMUym41E4WJcU6vBBAtN0yPkJjqVTO8zbO0YFyIPYmWoHNH5O8cDP+khzg?= =?us-ascii?Q?dxA4cRodPskBhSGtaf3ciR1X365y56TvQ+um6ZKYE45PyPqUH/Rv8S/xwIme?= =?us-ascii?Q?tVNDapEpqGua+TADxWN6oRBH/615ZxqvxO2VfdgaSHcxaBdFjxPi6wpL0BwZ?= =?us-ascii?Q?EryaoL6aAB8f5nI/pRq5+BKXpZPPslkTqcPzGByqVbPYS787kx1aQ5c6sAeq?= =?us-ascii?Q?pb2F+WOCVQgCIQEL6ciJwNpAuGlDM5qY72rGESbWtmFQKuW2Cht4h0ZpzZJe?= =?us-ascii?Q?S5CclhGpCG6XASawt9JcCgs=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0ARf6/I/EUltTOs/J1BNkkDQJSfkHJcw3i8AC/ZpKcGK4Gtnn27RIOZE1HV7h5i9yU7PSZDOVYrRhv0eAH6zJ8oL6MBBqFwtZQAfsnP3GRmQQl+epiGrFR9uUKkgoPVD4psMxlpyAIfQwIBVnrZ7pHwSDRY1AJdinkLAMCLH+kd/7QDKLhdbng5MIpg8ngiAWpFk3Gff7QsyKWtSc2N8joNzB1bW/VdtQoDWJF9C8JO+IV7t4UDjEUKvZhoE/F+roGWn/WDgCQF0cgw6e4FRI0fa1qrAbt89Pg4Zk+ayeuCSAizbtIwfDE0IRTt/9czgREFaDpmYVt5oMJeCs/uOb/ZKCzz3nhY8vQwuC+rW25czSCgc03WK96aUus4joYtnwYpEburWcq/hM9law6/R1nT9nmD6H0T6w/GxOGnWReSBbYuQV1Cn/RTxnrKiEf80qoFoawdFRyYVsktNabzAtlpQVMiFRtp37uxEwzFUt1mZF6Awdm+yFh1dzAgupFtxILcziw/9+oqWXAeNcmCJL+mqCMnYfb06DO7jM+Od6U31bFrB6qdZ8ZXIoFLIan5IuWLe9Dt42xEVlMhj35U4pmcVowaHgg7cPbilRMeM/2Q= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: cfb1a767-1a42-49b5-b21f-08dc87231c75 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:25.1942 (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: 51HFLJJBeNcuU66D0H5AVBF6mC0NA9xyhsw8lrlAV1otaidoPFCvNp5RZuNyl1Nskd88T/1DdLWZ9WG81Vj4ZD6Zv+kundTB/du+8cnells= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: 8nkelKO-z_5mcRZ6sUp_6VQLTK08V6ol X-Proofpoint-ORIG-GUID: 8nkelKO-z_5mcRZ6sUp_6VQLTK08V6ol 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 --- lib/maple_tree.c | 55 +++++++++++++++++++++++++++++++----------------- 1 file changed, 36 insertions(+), 19 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 91b18eef81e1..2c42e99c400c 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,27 +4206,42 @@ 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)) { + switch (mas->store_type) { + case wr_invalid: + MT_BUG_ON(mas->tree, 1); + return NULL; + case wr_new_root: + mas_new_root(mas, wr_mas->entry); + break; + case wr_store_root: mas_store_root(mas, wr_mas->entry); - return wr_mas->content; - } - - if (unlikely(!mas_wr_walk(wr_mas))) { + 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 wr_mas->content; - } - - /* 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); - return wr_mas->content; + break; + case wr_split_store: + case wr_rebalance: + case wr_bnode: + mas_wr_bnode(wr_mas); + break; } =20 - mas_wr_modify(wr_mas); return wr_mas->content; } =20 @@ -5590,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; } @@ -5639,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 Feb 12 19:04:02 2026 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 CBFEC14EC53 for ; Fri, 7 Jun 2024 18:53:53 +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=1717786435; cv=fail; b=Iup51lowWMDj7e8FLyU3gUkOmwI+FxVy8jG+SOUJh+gNmOZwGKtVfDlJNYFMw06pLAIFg5WrwCgWLyekKFIQKQnWufuQv1U12ORuGuODA6Oo0CfG6LeFBzH1PwmvG9cSStTeGqL5JKfcKrj53yzPVbHnverbsRkPSQWLKJfEXhY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786435; c=relaxed/simple; bh=zB4uE2P+5HYQfOqmCAln1KJ2LbEHr4mjNNFoI5NOcsg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=hx5B1Z6GoQZ/akot8JqbvsLfMOG30X4WtP4qr1V+kh70RIn82U8NtqYxvUS9R0USDeDGBZeEgRh5V0t5ifogJx1evVj4+WQ7EBqHeFBrqaIxaxX40h57GkTmGKtTBDzJCh6+qUead+S0AHFYMrPmRtYHzR6qX5I2KXFXCUo9pOY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=mPwP9hu3; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=llvC4aRZ; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="mPwP9hu3"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="llvC4aRZ" Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuhbN016014; Fri, 7 Jun 2024 18:53:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=eVZpxqxt2vbi+6AHnTDpG54BWzJdcL9VsTS5wEF3vJs=; b=mPwP9hu3VOY9Kqs1fK6qeMA3kblbfG0DfdY+y+pg7rvPNY2LD+kaiyiglM+qRequpEEC KFSpmjyaQEJI1GMegHS9LWC/xzhDSxmhFsKN2GrSqUPzA/0GdE5pSvfijmOpccXFpdZ9 rmlQgyTZuSl6RkK1JFwGYGxyLWiei5nDA9lWdm9GLZ86DcLWt4hpRy7z39gdMSxti/pJ 9uGx76/dnWv9o0Sqe3qzcDAzW1B7ywyt5JejmT+c1Hyv+b/EB5NgsS/WzBzAQ2/mRtjk nPN2Yd9z7UJ28Gmtyme7MSke+JAgrl5Oqy9aU60fNWXen1n53fXsWASo7fBSp8j5/WT8 zw== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbqn69he-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:43 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR4I023938; Fri, 7 Jun 2024 18:53:42 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-7 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EmaLlyBgxNSIEqnduUU82QI162cr6IS37Ux9Vr5607Tkt9H/iyWcK+Rnl2G5I/JWP4FEsYWfw1vVtm8E8pk1X2sFjd0Cfa+ifn1a2gAp3eCX8puPe7DTYyXy0H2dSAU6EXcR8PcSPoeDip6R5uTS9vfvawzS257M3hX1H/wa2Ap0bmeKDzZ6Mb+D9cKAukne7UOiTfi86XZDjAVvzHlLmVAvnT8/yOWeJSDX6e0FJPh9ajhNex58It26nFCTrHQ/yNkZQDE1Sv57ROU/OfyXwG0owZoLeAK8+eTMTK6BItk2L2EYMoaJ7EA9moxf36ndXbmSBxVNRcEKdb2ay7im3A== 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=eVZpxqxt2vbi+6AHnTDpG54BWzJdcL9VsTS5wEF3vJs=; b=enhX8DtfuakhAlNQYAcYkTyZcFKS5rIdAspnsxsKqvHcYV9aXADrUfaEc21QpGMLXVX1ddSiIpS2dz9YKlqXcChL01naG1DFKJlFShohfADCes+C6wM4E0e/4yR5pXye0ZLbVz4eX44EyDKlS3ZtpU9lur7OIV2oMAaeSAREYaY1GdrZkWe2O+t+V38yA7Jl6Z0a0lQI19Gng8XtE8OgGxwvcv8w4fa6+gD2ltULQvCSOFpSsq+71Q29BaG9iBye23IfbdT1EjYZpocTpspCmIEkLNiUh4wgUPx+7oePHBI7yXhN1lxuGQ8EwLnbMwYvm0133356SnWnc78TrsYyIA== 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=eVZpxqxt2vbi+6AHnTDpG54BWzJdcL9VsTS5wEF3vJs=; b=llvC4aRZHe7l1kM7IoIaBGp9DisDTygD7+Dc38+d4PUh3mKFgTW//SYXhoTPs1ZUJXKaWiNrILlqZ0glurFtnwIVqgJ6EKujvQzS1nfj+ja8iVF5Z1rkzTH5C8wLiiKf29tkf7qL7g/FRl7XiWMqPoRFERPHf4Q8wL1ZSfxt3IY= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:28 +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.7633.034; Fri, 7 Jun 2024 18:53:28 +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 v2 10/16] maple_tree: convert mas_insert() to preallocate nodes Date: Fri, 7 Jun 2024 11:52:51 -0700 Message-ID: <20240607185257.963768-11-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR05CA0057.namprd05.prod.outlook.com (2603:10b6:208:236::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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 57e3d91f-7cd1-494e-3d3d-08dc87231e1f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?WTEbk7w+Wz1C4OdBLx31MYD0OiiMSF5bvbTnSUnVrGU4hlxyjaJ57Gi1E9hj?= =?us-ascii?Q?HMiAFYZCI96mN3YPVwscudNoP88TRS6ZsL0D/J7x71zJJ/MiGVsKIi79qSOE?= =?us-ascii?Q?llLiz7LfV/JOQ1tCpFB5nQFPgq8Le0k4CttaYIkfKIm4A7PZK8Quq40hIce/?= =?us-ascii?Q?Kfh/3cYYrbBmPk/YgPWnOYlIOFMba2NfUU4X2z0qQ8XLYnFX78yxe4IouCxY?= =?us-ascii?Q?yMeHH5Jhck/228TusT0xNmYx0taZd9w31k6kpRiu131b6BGEfDt2EruZbaff?= =?us-ascii?Q?+sIpXOCCIBWKWp6T6CJpdJu1WJaY0yUgEdGcchT/BeIoVFtx/3hlE7tfRY6c?= =?us-ascii?Q?iu9LmK4QU8O4uU75yITHqtS7iYT6mGw680N183CHq5vgyDDWGRtyEHPGG3Sq?= =?us-ascii?Q?xXj1inDneSBQ8TAPAsiHpcVOyezl4LUaVNK+eroOJhQ0zbXbKSZ7+GJ+aD+s?= =?us-ascii?Q?6U0MtgCtLEbsVdGMO5xb2AR+n1tuw15Oae/S3TO4O48Cl9i96f7WQjLm9IPr?= =?us-ascii?Q?3P177vx5yF3Uh0bLq3KzAqBnr7ntmzD+RdM/zDSvnvGcSFd35PwJuyshopOs?= =?us-ascii?Q?kbz0VVcI1UG81q4oT7NHIRPeQEdLDUibGN9n+zURji7GTjmYvAeOkwXOYejw?= =?us-ascii?Q?YiRArcK5j+hs7dD2y48Wnnr8a//LRRDqZT10rk2n76ep7skFDjErhTFhwb77?= =?us-ascii?Q?12Kpb3zMoPDp2rnP+OleG93+dwGR7j14i3SBxsCORTvuUxE7/zXqSDOBb03P?= =?us-ascii?Q?PpKMxEz7HHsciOJtMLSz6/2W/XdSaLkdNy+BE1AVd3MkG4MNLpfb/qXJLVUw?= =?us-ascii?Q?WipfZcGeu3jMjx+M5fWW6zRf/uyKMYLoI3j2y3gMVscRAgfhs5abruqeJI9Q?= =?us-ascii?Q?fD1reqQbKYtGQ8+o9xXzYeLzmSJxM6dvNzD5eH3Kvn2APDWBGgajV03eCn6H?= =?us-ascii?Q?4tBI6LSCIAOfyxl4FQ0FqE/ZcNqKvA0IqFBbsOGEv/4Wo1q+Sk+9sMSRFgaz?= =?us-ascii?Q?7J4CGAKiMmePuYBVjjEVJqxzLtLzyla2qrxqpEAWlkm1UNhoK9+gl1o7Yq9m?= =?us-ascii?Q?nUEufYiiqlQSUcmI8giFARq1Hi8RS5AiT5EKJBLt0L5oAHJQvJxVmFN6P7Jz?= =?us-ascii?Q?muUfUMBxgNp4e2ovLfnb/tMrnqoifw44mSG7f8nDsAP4KKmzzxAd2reDqE0l?= =?us-ascii?Q?SKTPZUhL5bCp1mC2rOv1HijK1qF6BYzbc8LBDMLUponCAlF7uSGRIiWuhrzg?= =?us-ascii?Q?9GJGP8viFUfic3OUnfZUa36rVjoipeulhA4cLMD+eoPMgkpgaNoEOB5nFrJq?= =?us-ascii?Q?fO5ywb7SjwsqSjq6tjPV8cVY?= 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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?8mytOo4cbF1iQU2cULe6pyu9qR6EwI5ngVTQWyoAb3bXuV2sOHs2lswMnSsm?= =?us-ascii?Q?9m73AiJ9S95mPKTpKFBeEy1uThjSbaA/D0HuyIvYTghK8O+NiZssw0+8i3/O?= =?us-ascii?Q?yE3y0YO7Qh1zGt6ZnuEEEr/tucTRElrxt1j+BW1do1D9S/p8xe4mI0TLLQvj?= =?us-ascii?Q?Q8Wwk+JS9oXcXwPseevCMnuGBzCQrnHY9RmI8p37xVHfupYJU8YMUWz1ZKrX?= =?us-ascii?Q?/3kLUZaeEn/UD+8S8XuzNjTXm5pzIK23fQMwSH6Kj36kk8s6yUyKG7+Sx6sQ?= =?us-ascii?Q?f5rGhH3dNSY4GcO0VraJDdAq1WS2LHSkf8eesSlTG8GZu2CsOYms0OTQjhzv?= =?us-ascii?Q?gYwe1hi+5XFMnTwW/31J+gbTeZBN00nzfR/72RufKPgXIOgNaq9nKhnP8D+q?= =?us-ascii?Q?w1S8+7uE9NYLhE50kl2/flZb0ufjLP2JYiMNlY3A767k/IzO+Qd7CXiu23Tc?= =?us-ascii?Q?LxHXYKeCZT/x90iGgUq9ayVQAqcyL2xc3jjWbtp2uT5xzktCt4K5qc0L04ee?= =?us-ascii?Q?p9C8xTUwHnbIGMzc+AZhPsA3JTBXOwX/UvFfKJ5JXADnin+rzh0WYPr0VaWZ?= =?us-ascii?Q?/RRJ/wx7C3J7YSkarhRJ3hh8n71L1ka4/5FBMQkhOo1C/4GO1HFNNhCkbj8S?= =?us-ascii?Q?EzeaBYOYbi9pLITqevDzCbQLmdl1xXS2wBPSCl64qPNiSlUQxPo0x16+6Ksf?= =?us-ascii?Q?0S3vL36AgWdsvrrp9F9QaGv0V1pKk7CiInJXq2ZV2GMN+pULxG+IOVrA8uhT?= =?us-ascii?Q?iYxmWtXqcBfNEUjhncNj5OXFfI6Hgu48aDf1B1y54gJ0VbdKcl73hCdpDiCc?= =?us-ascii?Q?PIQVyopOT9eFHqC1V6/3NBhKtRQ/DjLhC3h/d7xadXrbLNqabkqsC2dQEDoW?= =?us-ascii?Q?IzT9jptPoN38xm+Yrnv7X68wxS6JE4X9Y23lIzxW/a8ysdaEOWLRy19y1o2W?= =?us-ascii?Q?VI8lnwSv3qgr7jA07jtW7mVxRp9MA/eS8dHhme/zroGH61M1HMOp/2JmEMqC?= =?us-ascii?Q?scPQBHZle1T8h84WMCPBaFQOA3nRlP+HIpiQizGBRiZ5nX5zKktRoOLDvzaJ?= =?us-ascii?Q?Ky44xIwsMT09PMTPJ1L1tec9j1W+KznjBUtQezBiLA8+6Rp2wAtQdLapxSoC?= =?us-ascii?Q?r9dJ48W5IxgIBwFaN32eW37hCshdcSFjg+tqOwBIahHnO292eR8QHTLK8Xbm?= =?us-ascii?Q?ECxHUTCPZ+gJadAsXwruT+4/wpCnOrIZrAdzCJE4uXBmJU3OJXN4XHmC+JM4?= =?us-ascii?Q?xA4jt6sowUJIhLbtdeUUOSyzf2PnXDcRbZ0VT2QqrjZfy+ZgSGaZe67nk8px?= =?us-ascii?Q?G7wv/OHjVXAU32c/D4LVkO9rvUeigxrIAilaTD400vYsdAXFPeLhyGgJgBkK?= =?us-ascii?Q?IPh3U/pcwBCvO3ycJ7dk1KNnboNyJL2t1a6fe8aQo+T0qXUuP6+bH/MOWZ5P?= =?us-ascii?Q?WLLl/BvDvm1Auv2c2W20g92b1pkrHMuM61hSvIZVOyynoaCoUAyfVyvQfENR?= =?us-ascii?Q?gAEnvdStAeXXSjvCGFfvWxLF2hErJDnVaaT1WzLjboKTrq3La8YYEz4WDE51?= =?us-ascii?Q?SstUfM6BgU1tGmztc+F1q7pjriKJxgp7J0/yRZ++4CDfmScxJMnOaNHeAlPB?= =?us-ascii?Q?5QklRspcHHB6tHyKvRY+pAg=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: fqagOroq3N8zXVEUqcH0zbnoF8a77p7LM3yBOlnAsIkqf0BnRMqUo5oHguL7POXg9YveZMhidHldNK3K9sHtT+abBB1U9S0yj3KOZQo3N+296wrR8RRReVijuyEz5JA5Y+/1LiOMp+RakpqDzJu0DXtR373lRzTCdVq4y5w/tZ6wYUHoLABvSSzgTw20p7mKbh6Wkgm8QvueS8Ncn43yP32VVaw6j8fggZAG0wIK4hzhIxdpKvGe/MBeDynKuZ7viB7dF7GfxOFGjPBv7a5B0f2EqxBJcHmOzc0Q9jo01Iw2aE4YlMZQY6T+NAsBKAKhxSDZ9/1vTNiAcVcizdaw9PrmxR/qtZ9wIiNKK925VuIzuXWU66kwDfnMqgKkknGMNoBgYUI1ulWBRodF13phH68dvDX9rlVBMkpMmy0s7NsVBQNPDOX5/lVKRf7JsQSNkIXvEUtMWBAb/s/BHRSkJRnxNT+aEwIgtQbMeYO7YrLapExnDRSj7G3qsknp73/yKDbPfhAmG850oSIhQszAvIIX/YoZTfUNNLDMozptSL6PbQB4qlp+ZutoOcvY8n1Q6mKJiniVkH6dO1jPVaNYeKbSFv3endwWfLAsyHBUxO8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 57e3d91f-7cd1-494e-3d3d-08dc87231e1f X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:28.1157 (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: qnwJ+apMvAJsbvjAjjGhA0HrSdRq02IBAlMp104A+qxH16xqnkOHzrwrczC9II+99xK+4AsY9gkgPt3scCbnx8M8Hjb1xnJYcb8qGH58GBw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-ORIG-GUID: WfjCc5LVIUqqxIfatAo4ADc8W21uDvhU X-Proofpoint-GUID: WfjCc5LVIUqqxIfatAo4ADc8W21uDvhU 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 --- 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 2c42e99c400c..c37bfac4f622 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 Feb 12 19:04:02 2026 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 9C71814F102 for ; Fri, 7 Jun 2024 18:53:54 +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=1717786436; cv=fail; b=j+qqNEtDFJhT+fnz+XSvVcTu8YTB7ywCtZtWodpjCFl+FaZ11kckMdl+ZRRYDNonQhAFAbj0ez6UJLi7xVMc/Ln62LhPJ6G+WNhxhfiUHOQ4wCTtwHrIqNLQsLEfc7LcoAecF1oMpOKU/zv/MFahfrEHi67S/vR8uzDMptUrfms= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786436; c=relaxed/simple; bh=bIyt07WDEz0zziNvc/4MXUn7ICeowtQ7X61DboIfqg4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=cwUVO6nzI3I0U+SRe0gu3fOIlhDsqZ1SopI0xLe0vv9PhjKvvt1JhOJPYJHvvHhtEPQ/lczKVbfP5QcvhxlR+KdyyPXqnE2RIu2N7Uf7AqkmvBIIqr8FK0BmMU3I/CVTmRv43N8GdJ0rcZ2osKSZxelEgENkJaDb9BVY4XZ4cjQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=HrV3V7Gz; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=Gw7y0BEy; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="HrV3V7Gz"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="Gw7y0BEy" Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuYeG009377; Fri, 7 Jun 2024 18:53:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=kt5Zf2IFc6VA5/9HjTZW5u6FOaNmBnlLUKNfDocuGoE=; b=HrV3V7GzI/atSyRDw78AFmfs+3KmD8NpYTaODqkXnBMeVUC4b6Ikg13j8PYo9cJ6OCgN Au9ifBOm2odR5P3NjQbTMJ8pPpF/p6iOGlKXMfc0PCc2SwuiNxpG5PL2tPDwGOi9or5a cPIGMrjKLiOfbvP6oakYukblAZesOmEUOS7UYLzdyg5yp/hUnoFW4RuhYvFXFj6tmz0X z8tWX9uXl8tO9SgNN8GLrTu9+v2yIB7yUN25HQNL1DxmKdVHsgg/IRBdRqmgZTvxYlfK 09AnsgEbWQLHvVO0fPYZensQm3p6/IwauCT1eY//lK4nNkv2oU/GK3euCSMjQks83+Ys rg== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbtwe89b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:44 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR4J023938; Fri, 7 Jun 2024 18:53:42 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-8 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nnFfVHHAFWU/Hq1WUVusdVtuZmplfJzQN622k3ivv833bFGjnaHc+Da468nx7HiE1qeVuKDFLL/BMdjuWco5M7Eq8RQPsM3f5UuN1f2f8LElQhbtiBvj/tTIVd+sJwxpXiVJMmyZVYvOd3T/tCPOfHTXNwJhI/t82AejLHHbpiL+uUil3wR2V4uYa/5HYNyFt5msTnYx1pwpLTPEvgltXwxNyGCOVKmeZuZ15cySmMpo7FbihXxODv82wnMvZMA5MoCXwwGiPizma3X0XgMqpmVkvisocGSnkRP6Ge0Pk4cExxfK/yFrpj2vqcPWoI5wdiAPpMOBtWt55+aEeGbx1g== 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=kt5Zf2IFc6VA5/9HjTZW5u6FOaNmBnlLUKNfDocuGoE=; b=EFEeGcyef2hyfx225w6RXwlWK5wWL7yke5mHaGcQ+c8B6ZYoWLRpln6hV9wurA7biMkXLtkbTjo+yl3jcC87raXQvEZN+F8gQ1MV/PbvUf6Iv4uvaE+HymbMxOy8YF/VxkLcKUnYkC2F5hHkfAmoPvqOO/65dZPAFqMMhkHgrO8QH1TIuRWY+FLFWx2latCQPYgMO1SbBJZ21yBFHV/XqtsDs/YlcfP2HEYHsp4C1IX24y7Nd82mymAoiP9PDlfp8alj+5o9aF5zYtoy7vJz7U6F2hKm5Fdm9GNL82BXQdIMwvhU/7DitnGcvSlXRcdED9jFzasd5NGXRxtCdNAV+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=kt5Zf2IFc6VA5/9HjTZW5u6FOaNmBnlLUKNfDocuGoE=; b=Gw7y0BEyAt7GKWIJ/MuJDsntzaIa2JTQYYtwBP1tTnv00oKgt/dC284FVLdg6zkxJBU1Ee50zO3XSGE6B5mDzb5lHhRlIqCN9j8zs9mzwBzNwzsJ5QJJBFsQPnWcbdSH2lZ4NOoo18FsUi9vSDLgVdBdThT1CyaOE8GoW0UtB9Q= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53: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.7633.034; Fri, 7 Jun 2024 18:53:30 +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 v2 11/16] maple_tree: simplify mas_commit_b_node() Date: Fri, 7 Jun 2024 11:52:52 -0700 Message-ID: <20240607185257.963768-12-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR21CA0022.namprd21.prod.outlook.com (2603:10b6:a03:114::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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: c911a8e9-5670-4d87-a511-08dc87231f6f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?7ykFVncahSPh5225XbJwy+x6Eq2C9YLxMrykfKGiS7Xj4FHt43Cltpn47NAC?= =?us-ascii?Q?vnD9HOkPqsbNoswbYTERhl+AU5LgqSNnkNUlYvBywVa51wFbqGb7SRDT1VfZ?= =?us-ascii?Q?J1EE5Ffaw3M58tXgBkBRmGS4TsVTD1k93NKhpQtjQxJ+nlA4NKDcm5JHA0bc?= =?us-ascii?Q?s3bixd5RlyPrMMUtohZJzoo9B7FmHrrEv9GTIC5aQs8u5Vd2PyyYuHBt9m8H?= =?us-ascii?Q?6NqkMd8vKecNS3FcVlDNLfgmIMfN8RFIHYMWmtOoPurpyF6T54VDGSMLmCTe?= =?us-ascii?Q?Y1ZcpJ5uqEfFq3t+B/kH7xkIFiC1bxOCQM/n7vn9BnO755dt0YXgJHtS/Elh?= =?us-ascii?Q?Zh+W8QwFvM1jmMlD3gDNrQUPv5ldwhFKmz86kE4vAHW1tLXXKMIt6p8ReJr+?= =?us-ascii?Q?NbaRuLiPVYNiyBNKWoSpRi4t4jV/Kv47BiOR0VDfJ0STfxUtSQ8A7p7RcpG5?= =?us-ascii?Q?JtejBxuWRvDDGDERCwK5gJsfZxfZsM7yqS5rmRylONPgtvBiNtxW3ObQSBAe?= =?us-ascii?Q?dUN2yiKxU40SwNbDSr+lB4JSkckzs1AYFIdOxndomxPI9wXyuuZtArew65nK?= =?us-ascii?Q?sBTjudUHrYs7KqnvK3umfehNBY9+4DAzOFFL65gKJdhwaYheCtRAN0qEGrUT?= =?us-ascii?Q?RtcrMemJLBLtgGjqVKngMPZ6j4hIHAoDiReHxHZ6tcjqDH7K/IIr1K6Lp2ty?= =?us-ascii?Q?Yq0RpxorjrKUVdPGahyuV2a4jR6jgp6OF/gYqnTu0W4CP++nSfjYyNLCe0nv?= =?us-ascii?Q?gEkh/3jh1q9hFMkkMTGnMrGwxfZRi5HaU1un0ZV4ThOi89J7bJC8SPULGuDz?= =?us-ascii?Q?CGBjk/N1m5FhnmIQsjcjEUQWp9CPfpXh5jB8xvCXfSVSFvW6lnKaItVT7nN0?= =?us-ascii?Q?Z+M2BoSipVNIRCtGmMGk2GkDylZsNDbD03e5AkQk5xDx2re/Qk959reBI3Qy?= =?us-ascii?Q?0k6viKg5gd7+huK90WXzszMD9CI4cDyYIg7ybsiF67EU1i4b+REOU6WljS7h?= =?us-ascii?Q?HJw/abFwfnx+/VBBcyCTTPGSQVw6Nx9xyiWl9OhO5uDjQoMC4mnaf0vswach?= =?us-ascii?Q?hDH3kkmwymagm16d+bxgjNiBzv40CtEHuMdENS93D0KiUGEIsDjQo0L7GroW?= =?us-ascii?Q?BlZkB6UC0cT6XZk8QKZJYCQ9GKPDhMUFQIseeyzHF/pcVpSE7u+VJn1ixkuu?= =?us-ascii?Q?Im9nsKplj6Dz18Mh9d/HFxheco8eimtPnNZjYl8AzsONVUZ8FyJ2r9lX5Rbv?= =?us-ascii?Q?72pxMfxxVHX9GIEbiVjbd2D+0DLAY3BvxA0XV6iGjWqOk85TutrcdekeoFVk?= =?us-ascii?Q?NnU=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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?S71ULrciHvLsCkSum58H7/xvV005NdCrJglsqEC5/TmgS9gAlptmKEt047T1?= =?us-ascii?Q?TIrOvyRLZW2Su3TEfvreJTif8QteLrYMFIVpXY258lwQzQ7ILCcQuc3rNp5Q?= =?us-ascii?Q?PrYiZpF0HV+8Dgz439NTf0l9Aot+b7SijvCxDeuuYs3GISWXLW2FyPq4CCF2?= =?us-ascii?Q?ORP5WIz/TAHBcyBVueFoIHYL1Lt/yubvdG9vZUbks+5eVBeAyuqBK8GHWDZf?= =?us-ascii?Q?QZ2xscEZPVYz/VcQ3Azn/9PdhxHga0KeTkiAaZR1lf5ni1STm3IRDfI9BC/E?= =?us-ascii?Q?1Cp+PpCrUPLcuIQTjp/TGmcEOz9O8zybCZJqjkwwYMcIdSK0LZ0eVaik2v4R?= =?us-ascii?Q?drc7Nz/QDmEX8mN0R2vuH87/cAjUzwnKC7xe60LoPcQgld6Ye6sh5bfGKA/t?= =?us-ascii?Q?oCDOcXir5lKioPWMsHhJ0Fj9GZWes+0EbC+j28Uhv5DoZOQyadesiKJngyI+?= =?us-ascii?Q?oHlu3L6LOvIlgn/3fSAFkhSrqrdrljhGPsfuTuazqk6dhaa8CuUikPwCIo59?= =?us-ascii?Q?IWMva8Xm+pxsgblzL01+jg5SZMhlwpXoQXr5XLJAauMNZH838T8AnPVpybUm?= =?us-ascii?Q?+VlVmJAk4/wefW6XF9sZsEpzDe/KbAI2jiETDOCtiDGqEaCXANtEXptmwkUs?= =?us-ascii?Q?3DBRrvFvNCTwmvsCRFKl7ELySLDOOy1p/EezAIgmAfqeWnLzC3kTRT0eoMs2?= =?us-ascii?Q?k29KNJmzphDgdRzrr5yC23n1nF2IpVHK0ZBT52z+uUnVdaIfXnxWun6TCJgu?= =?us-ascii?Q?IGMdGM05h1+h2Nq46zfCOYCtxV9s4KEWAztZqEGHGd0c8m7KGL7ePafhxjhH?= =?us-ascii?Q?EmaVIboFnYMKfU7BjZFgdvs1+q5bg7hVM3um8k10lCuJQQ7eZI3qMAH8VJPb?= =?us-ascii?Q?Omf60kyOUBxnwfpciZkKyV8RztJrauEJ96ip/6u3xkNbYq3F9Fw74YbfleF/?= =?us-ascii?Q?RSzHeXRrZ3VoIoM0EPfHJYn21dESPyApcV3jeaLFiDPxCzEiU02YVO+T84uB?= =?us-ascii?Q?2ln65ea8Pf8MuRR0+CC1Ksi0TiQgAOJJ/4OV3LyQgC5HM4afMbvjfBSwtMCc?= =?us-ascii?Q?t0UZ0ZsxMLNInEoCEp/uWY0RBh8jNL0QromJKXt9cCJtBYCCz0nhDupl0iYD?= =?us-ascii?Q?W4c3oCkHDs92W+qcKeEJIU01aot2kLAgsOhLQUNi0I9M1ywKtqxNRrOdk+WJ?= =?us-ascii?Q?rFhm/HrpTGQz0/IpltyGSqZdrn00y+HJj3fVotpHZ3DBROkCw7Ze4h6pbWGu?= =?us-ascii?Q?RSsyvXT/BXkMDgkMt+cnRv/kUNNOyiqXq7ozxrmagEU04scbwRM3o5Pj0api?= =?us-ascii?Q?xtUx+LpOWudxy17K2FSH0P+mphySPu3rW0XWiDqcFuT4tRxlxyTGO4TgnuZc?= =?us-ascii?Q?y21mcN8oAj0/fK42O5OjkgzIUvuGjcq3xHfoNvLnBwZz4yBpA4fbbujRJae6?= =?us-ascii?Q?vZh2FJXF2M4pxIPT6HrcAZLAuYS3JA5kd2nNCGR+Lzuuh+X22I/QI/CBEtgC?= =?us-ascii?Q?93iWiLNRLJ2dQtIGNh+u1xLRE3nZXoAmZttjxdChk0ZgO3gHUaL6CxE9RDNQ?= =?us-ascii?Q?SPStESKJ3umYiwVGsasEKYjzW4NxTYciBchQnxAwrf9Res558yp1fIPlXDHt?= =?us-ascii?Q?99+3D70u2Pvvk8F7Y1mW5G0=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: NDUgEMwwY+LyLHz4sgnqPUbNNIEN7IXv+8qpijK3JkvdPgi/D5OtOihLGEC3kWPa1HSP+K6JAnJsW6IBlaOXAkyKAvhC/W8cP+Q+AVbSM31AYXk8yQUDfp/7wxR3SQKRWS7HyaLg+QOzz9i2hXaaL0EVxBT06BE75APD1GN4kFo4y4K8q4WjNZfhlnBsweCZE9PE2IWUOdMYlL/tcTegxkZM94c199/d3FgSfGezXxaULnlhH1E1mSPA56mxnsupB/LnFtC7WoRcKJYZplieYiT25OSFIAzDvWEk3nCL3IsiMc2FHw0twSiA1iq+qxVbuBg5n75DnFLg/adOlKQ7s2G4UD5S2047x6ZJmn6Wpe9Z2QNNEKyIGCbbckvKK3/Xea1uFmCDRShJkamXRAFlPQ+D4mqPOLym0Dx+3c/ncecjj5xg9T+Rx7Q5xFnWbcxJ9glsUf6kb25bQj1fbJYq7f6COZpK44jH2nnA+KOcr2oT0giAlrIDuXY9FNCkmAoo25qm3YZgGaUmI0kjFFnRS1yJdgn3SubFXkLAed5aSyilyAVwI8Sl3f7XAN9HrpRvErhLuRISQK3LjOkOCohFPha6YGzNLfmAH8b3Hk0wErE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c911a8e9-5670-4d87-a511-08dc87231f6f X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:30.9125 (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: fLgg3NvhhuhHew1lU1WogLLUejR9o8pMcghB5tYaZhknT1yZIVUyP63KZJO5yYrVXUs1RvsGKTEnkt15ykUYEfAJynldO9cpyKH4ZMDQRB0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: S9nHsH1Q15BLfpU4Jn4wWudH6qlOeCGm X-Proofpoint-ORIG-GUID: S9nHsH1Q15BLfpU4Jn4wWudH6qlOeCGm 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 --- 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 c37bfac4f622..743de734ba0c 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 Feb 12 19:04:02 2026 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 2F56113EFE0 for ; Fri, 7 Jun 2024 18:53: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=1717786431; cv=fail; b=hR7uXvTqQxblR/3B3X28KHLDAlTynBTZPbHYulVT2PP7JGcyjMCjNpdfYZ7RR+lPJLTtm/UWnyH2trTb8Gu1UzYLiihcSVIpes28xrgpMry7pKFlZOVP5F8rKdkO5iJb94yHgj4RwMRZKeLL8ai/6XsKhRH0laGmXBznJK3Km4g= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786431; c=relaxed/simple; bh=Tz4g+fwqCahmY4lWj0Uxs4YEqiNDJTYlgFRStoiHIiM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=mkJu7VPAj/GPz5g8g7yKeO5MjHEnHOIoq95eJ2zraMM8Wql79xahbMohh8bZFlj9T4jwNNojFVpzfHjg1aJLeaWU9dQjgI/5Hp0BVT2ZPs1Qy/SqeyeRO1rmYkvHeVp/Mj89tjIf7MzgWyNtjdqCCXvoHpNbJ8V0GYlrNcDxlM4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=kbGSX4FZ; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=o95bq1hH; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="kbGSX4FZ"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="o95bq1hH" Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457Cup2a021557; Fri, 7 Jun 2024 18:53:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=D4ZA8OWgwj5vBfXfTEiiu2poxtY0VzIKWAMaeLisH6E=; b=kbGSX4FZog4XkT/zrXbp8ofpaQFuw9ao6eP1A5asLhXyzi0dt21IFKFq3P4G5AUBFjQp AZJ6EqTTNLqOYrxDGcEylQF3hGMCqCgOlFosXuhTTSClTvrLhOySW7mEj4i5VhmWWC88 CNTcuycSPQNJbYBVolQjrKdlT0sbJekczdbvdU4ozTXWRNtNLJD1erxH/Ou4yl173Pxi jLfVn6YeCprsSj0GvEYbYmahgO4vGjIiPwjekfnhrg8dpQ/Dgkp8CFZxc0bgrbFIXxCx pOQdhibralD5g1UVDE/mVLsVbBkEpSVyTrHKPO8vKZLQxdu1ZqGfhmNE3ZejWLPiIpex Ng== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbrhea40-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:44 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 457ICR4K023938; Fri, 7 Jun 2024 18:53:43 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2169.outbound.protection.outlook.com [104.47.57.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrr2k7tv-9 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:53:43 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=J0rr6NYAxqKqQ7ILMvbo46UU/d4NA0vKBTKHldljGo+7lOgoztGbbBaqQlekLuP1R36szcnUc8FcORH4T/Yk+40rHBMSprd+j7hv2/3XmShAcMjDHRbgqhYrR3Vz2Y4wP6crtoeEEK6lac+G/bYJZjbIc/+wO6Rsdq7IgrTCKBkF8ADoUeAZsSxW+Nz6g1TJ7pHrHlc6zT2PX+6dPxoz1sAgac0EeX+EftlOZTt69bWjjEgrYQk0C4be2BThqMcMn+GmuYp1a7liTQ/EhLmXQPTTUUNxfvwymGOtBu6LCokZ+aMKit2o19m7LTDNVWv5dNqaUDSEJLp527wRqUU/4Q== 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=D4ZA8OWgwj5vBfXfTEiiu2poxtY0VzIKWAMaeLisH6E=; b=jKStKMg2lyIcjR5gXSW9KLXjgL/Xe10IpdN14PeH/qZMgmcpyLeGX43p8cljaNyaWt8tpXcYJOzyfLrj81vAyoqP1Zs36Dmh9COn7v4mxZDonmXvLVOssa2v6sYgvMUZrUgVfQbfN4HCzwP+R9f8OvHSMF6fzwlmMd6IzJeYrE+wGVOkf6SvQZKvKkj3UW/YXyGLq3Joc82DeDEFnYrGm5wGzzjBMzGvgV44l9INzOaeyKMuuYCZ6EqM/p/iTFCrxejWEsAY1Bv8+j2DQ++H5/YWdry6ff32Fy4igw54uo0BC3T7TfD7U7P2rzl6lNya0q+3uRh7vhvfEy/uYZwnmw== 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=D4ZA8OWgwj5vBfXfTEiiu2poxtY0VzIKWAMaeLisH6E=; b=o95bq1hH/7Ow/csxOmHTX7YdpdCpMSDalhnJo3Ao8cVHxqc6CNvzeM8j/2mF8Qg+VkibWS9994Js8+olYKgmDwkV6AYMascsLveNQ5I8jFiFNiR3zUY1c1JO676Fu0UZB1NmltcbL5vs7SyypM0Sqxod6Wy95KWJO/T+fcccY7s= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SJ0PR10MB5629.namprd10.prod.outlook.com (2603:10b6:a03:3e2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.26; Fri, 7 Jun 2024 18:53:33 +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.7633.034; Fri, 7 Jun 2024 18:53:33 +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 v2 12/16] maple_tree: remove mas_wr_modify() Date: Fri, 7 Jun 2024 11:52:53 -0700 Message-ID: <20240607185257.963768-13-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0006.namprd13.prod.outlook.com (2603:10b6:a03:2c0::11) 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_|SJ0PR10MB5629:EE_ X-MS-Office365-Filtering-Correlation-Id: 8357b1d3-8502-4778-c28d-08dc8723214f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|366007|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?S1ZcMMYZBxXxDsBUSZufeFZ0uu/r93hhr90liHL5e3Q15kuYEW9kYpB4gLb5?= =?us-ascii?Q?1ATBubdUIJ9Vdhw1OssxNZUr1gLuY71go9Eqo8bnXqc36PFVrTtge8stJoLY?= =?us-ascii?Q?59hZFG47GhGqon9HGnQdylMvESVso4najS8IQpoXfu+Ypcsd21+3y8XP8+cm?= =?us-ascii?Q?0M/MumpgK4+bfmt5JSjZOA1gImBzjEpHaD7VwCcicTxHYHIyZtg/TlEqSWfu?= =?us-ascii?Q?yOy/B0I27SQn+EPBn2HI2KeUdImVVWE+NBcd1AFX1F656TV4C4QricsutE+L?= =?us-ascii?Q?axwhn11EVCUn525l32JERMCPUmTwJ3Fb2+tvmcdpXXJeXVNKOW1d5tAbmldb?= =?us-ascii?Q?eqBqC5wVJIW/KaczkQKgKpqMo5/nbBofOvfe4mecOkfP8uX0XceGO+tUbIdP?= =?us-ascii?Q?0Xwa7cgdU5Ymb0Xhzg/nElL78Vs58YRrJ3pmlCLW1B/zVFjfyYxRoN7a6KP4?= =?us-ascii?Q?z5/kiVFHHmTF1/lFsiumWW2iwQQt80l5+CsmAiHZnT9j/wq0rNjsZu6P1bYY?= =?us-ascii?Q?VUHs+riXYt4nkkUL8iY0rc3m8Lh6lmkBUV4SkM1EboYWHfbSGXWpi+RiG380?= =?us-ascii?Q?mDeKA0olGSyuzJJT1oPgDCTpfNdCzIh3GNNV4o5Bg8By7zrW50Q+dOUtjN6H?= =?us-ascii?Q?aMp+nnabJFm2qYyyB1L2WcBMOxm3/IFxxlzTgwms2RTSExqlgpBW38C8rxTW?= =?us-ascii?Q?uv5tDJSbRJ1P509agQ99/pkeP9ogjKWa3B55pjStYPP50zaFB7tzIxwRoH5y?= =?us-ascii?Q?LDIyU07H94DHc4aYNZWin/btnuzrfdWsQrxiDxnNVtFuREnNuJUm/ciF4TT1?= =?us-ascii?Q?cxe6MbfUhY5xnePCn9hWI+wYxNc+f6k0CbBKn1toUlF5DCNJRzJRugcmYHHE?= =?us-ascii?Q?S+uPHx8NisaNhlNBSeB+xhr/YFRkNGUjPXYPAz/MKZQBU047scwLO4mjJGMt?= =?us-ascii?Q?V72fGx1nqkONQKpXm/mynuUHpsciBcrJiJy2ILOgslJcT+tpg78qdxyt9xZf?= =?us-ascii?Q?z4rQPd9rI8AiYKLlxWJ93kGtwo+FFdsEvJXn6hdYXJy3ZQLIoNMdnmidsFOZ?= =?us-ascii?Q?O0hoMtlqFo+oEGfvisUAUBCXgJp4HeZvJRP1/eLXq2YLbuuAegPDlkxHuo+V?= =?us-ascii?Q?tIuQO/1p4umLLgNa1v0Z2L5CzYDV68qBnapPNyDWEuNh+V/FkeFTW89asdvy?= =?us-ascii?Q?8MIYaAs22LZPV5VbwA8n8CwMcfa+QP+c9KDmd2GSF4aCxK4Z5UTKXRX195qd?= =?us-ascii?Q?RAjr4ifnRk/7XqYhkX+p+XS7g5WXmDhmsqKvf2o4DTuKhcPqar8tzEyvENw9?= =?us-ascii?Q?RAA=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:(13230031)(376005)(366007)(1800799015);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?0GHCaV0GKcQKQ+AQMcUR7t2JZU2LDjMRUXvWQXnMEzxOU8Ah5pGHDAd7KI54?= =?us-ascii?Q?AxnG5siY3D9wEUQIpu/9nUC+iR0dmnpEq2pbXi2KIg4DI17h9us9UD3NO+3N?= =?us-ascii?Q?Kc2yYGr2XJzKiBItw8vumpnGB+ypzIbocFHH3K8EhBUjaH9P/FAAMcixULBk?= =?us-ascii?Q?KfpAOx3m7gR603ishWDaBNXK7Ed0YKFsaCMt1WA36CVooc49nveetY/LFiSP?= =?us-ascii?Q?j8Z0WZ1bXPKuKhanAAoIzmUbJkLTs+7+wTl5MKGAMH35HEpHF2xrwff7fV/R?= =?us-ascii?Q?nWvmHl7Uv8OYcjXsMUWYV3dtSax7RohkD/TM0gXkV7i2BM82cF3jukT3mfA5?= =?us-ascii?Q?PzGxeRS5BVx/SMFz0hQQr4G+H2uvOPzKGE3mgQ1AbEMg6HMgqDlcbWsOa5xr?= =?us-ascii?Q?ZUQdRB6MfafsJuPLJQGMNkO+U2TbQ8paP1jgSlWz1KK2tkRSkgjKR9ch/mAO?= =?us-ascii?Q?FVExbv8ECUdUWsHweXaBfpPKJB1vqNm2nDMKtCEY1bn8LTz5ZzaHtCEPAqvv?= =?us-ascii?Q?aS5UYJa4MRP72cNP0m2cjXmLyUwAUSbeqwzn1rIPr3jpsrjhYG/J3eu9AHsl?= =?us-ascii?Q?SGD2Ou5Z6FW5eViZse12bWVJp0yFjyOX7R8VDo8S1zKu7MeWHTMzlSn3ldFa?= =?us-ascii?Q?5gMHh3iulvlV1xQyo7r4OstAA3T2PVByzC2bjTJk2j+i5jdKj2U0qE9N6g0p?= =?us-ascii?Q?golWfm27wQDuC0DUU9FBvSPGXpN9ytlhsB/IrVjuBKhWFm0qAfn9Ir9vEssT?= =?us-ascii?Q?N0Zd5Gqd0XAf4U1wjbIp6/PQn5dQ8mUsuHuyAieJyLjlJ5xrYANVTHY9yC4G?= =?us-ascii?Q?Lv/4MhKFZrDm9gPMtIi28e7/0XPx8SOR2o3CbKxGvsHIoSGMp4oEE7ob0T6O?= =?us-ascii?Q?UKmrjqXMhtjRgrkuJsi7Dg1Vo9gcF/qyRdZHlKa6VY+sGVJef+gJEcVxE7Yq?= =?us-ascii?Q?WuOfWDej39TrLVBc3EHFf9V37/+e/yydsdZHGUG5z1pB8cYPIQovfhBI24Xt?= =?us-ascii?Q?KS/n8DkhU+RYgSS0z2OhCrDI1AvibAo1NtULrVl3HWgyUPBAAr2+4FckV4Qv?= =?us-ascii?Q?KL+HIXRcLzHUBdTJ5nK+qvwsZbCaRA1tKxn/u/BgF8SSXsyd3WUOt0q5iMqL?= =?us-ascii?Q?t59R8QfP275Tac3EkRO05pTS343idCXOy+UxHFiiJ8jaKASTZHsjUmXjGv1c?= =?us-ascii?Q?hktf2nWZtoO5MMSBbN/02SleDn8zF3/KiHeCIXOHztSTdtUta4tNL/AfkgKP?= =?us-ascii?Q?nWn/j0RC1GpdD8Go3xUgaHx3iWeb2WK2GHMC0/fGxRujbIEwGXEpRePAD4U5?= =?us-ascii?Q?jTysdSZS32/GR1m56t788IbsFV5zkKE8YaUH7LZdUmhDIemv7oUmB7hsw+oZ?= =?us-ascii?Q?xCksOI3u9EMDzy06OQBFymRjAaEZibkIZtrrjy1gOl2UJE0wEnwye3FAsouF?= =?us-ascii?Q?b5/LXaDqyY5VyWSZXPn96xWzDOv34TVEyy0K0MNwyxjb6KpGXU2bNDnJDUzq?= =?us-ascii?Q?GozSOJj5nsBtjgE0l5t+OHaA7hGYYme6z4p7ebxD7N/ShLuXHCcmRAf5OhYR?= =?us-ascii?Q?bxs7sajiAF0dSOIt4qBiabzGD+zufOLwfmCbu+ThFmOiZG8F341cMTKGy5Pj?= =?us-ascii?Q?fPbhdgVL4ORomTyMt4FWxg4=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Vg+nPWoVa17rbnDt5EZKzd65T1F7L259RQtqzlwyazokdnodVewfyjDJTbgrtSJU2iU/+2ld5A6CfDsBtWIz2grccwyjYLzFksAl7HqDg9v6j/S0MplVuN1iAB3GXMNan0WF55tgcD+0UX/FOiX7hi4VTjewjhDhZ89Jkyj01q0CWJTdWIpJd4zY7CctxGMhCOE7XMCTLMfaT/LWdsMuYYJk4rDnnuFEJobcoFnchMRpEA5Ndr/1tX0h8eQJ8T0p9m9+JsTBU5tCrX/agcaSKvpKt1vQu+vJ208jZax3nu9lLDTJJ+YT08wfmgk8o8Ewx5X1WC2CDYZgRvRRfWKpRzwORK/g8CnkOeqE2+wxk5VdYq3GD99O2N82135nhXrBIHHxaHUN1nx6DfC2oFSc5IKX21FrSC6d7lzg6Er2CEIRqnegz36a9WwNSb6FsRWeUXMNwMk7D31IWktE2gcPD4OKpDPpFI1/ObGdMUPigDVauXXcr8d1MOzAta/gOJUKJqIpgHiAtPA/RmkrnBw8+6XSA3gWQsSLqZtQ44LaRMv3tXd6rNwqgLLoD2jKdU10TuWy2kRYIsukYEpexdhbO3gDIICw0KxVo8Czrm8cYv8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8357b1d3-8502-4778-c28d-08dc8723214f X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:33.4187 (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: vf80W484NFh7Zus8hD7NT1q8XRVWqSb9HO6XNcZCLKVSHGN02OjxLM9/uLMj0Zxo99oPXJIxb8b3CIduKcGPs65UY4pXzW7XRPcujTAKRJA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5629 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 phishscore=0 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: 5BCk5MsOgFS1Liu5RzmPKhdq8kvXqCZ8 X-Proofpoint-ORIG-GUID: 5BCk5MsOgFS1Liu5RzmPKhdq8kvXqCZ8 Content-Type: text/plain; charset="utf-8" There are no more users of the function, safely remove it. Signed-off-by: Sidhartha Kumar --- lib/maple_tree.c | 38 -------------------------------------- 1 file changed, 38 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 743de734ba0c..8b17768db5f2 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 Feb 12 19:04:02 2026 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 E8F041667EF for ; Fri, 7 Jun 2024 18:54:37 +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=1717786479; cv=fail; b=ixVAVwg0MMvE4RN1hG+JpL+G/jjz+/psQSMqvFX8jc+v2CQScZM9l2aZJXTdy5ojnYLMxIiyGxcGHvkmgA6FbWYWBbff1fcthock91VGotWDU9eq9IjHAVF/UUhYP6n23hLoUX0n+CCbTZPHf3wWanqrt7e6bMvMw/8sT+/qoaw= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786479; c=relaxed/simple; bh=DPb2SZTAaw2v388KHNC082K38CH7Mq6Dl18EIiLow6Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=FgLC4oiVpv3+4hvZD0W4LST3QfvHK+bKORYLWszNYFEAiwJrbsIMQmOT1C4Z7Zl0Z6mt0bQA/Kt4XYS/gQ30LtS1Ni9if1XiHcvd6XCGVmUYnUkHv28kdyjLJ9tCaHUV+LwFiRHkYyTLMxXG7b+ZY+9/0kgdMwa91pZN4vEFO08= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=MHrlq8kZ; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=wWKRoBXq; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="MHrlq8kZ"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="wWKRoBXq" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuVi8023604; Fri, 7 Jun 2024 18:54:26 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=tFwzT4b7TDN8LupwfhTxyMGZTb5M4uMCFAvDfp7nMBc=; b=MHrlq8kZ4mlfKiCX6SQYeRN7RZFKeUlLf3iFZB7FKUx7GYSxpOd6YLl8B00M6qjGBMNB se/R2SBcwVhM34nzUEp90PyyMRo98YPRKQ7u8XWK5fyFvgnSdP7jWTA1zGSb5YvB5dNJ 5X0ZjITvdUo0x9wFBKZ0mMtUeZpbpA+rXXAvt3Ry7U3q1tqyHZO4uODM7LINSAtGgYJo FMt6jpCYYD3Lyq5Md/lLerusiGkwmphYXLFsElFcX8HXPoK6HgsRudzVldFF5w1fGg+y pS3RefKynBtCGr9ga1hTValpcL0Ix3dWekIDcCeJ7vPRMzSrI7VMfM7ti6EnBsKs0WDN oQ== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbrse5mu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:26 +0000 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 457HKoA5016160; Fri, 7 Jun 2024 18:54:26 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2173.outbound.protection.outlook.com [104.47.58.173]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrseudmr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:23 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=O56hIkUdAA0GLLxTLFoUehIW4laKjHx/RMGrgNvvJgQaBeZnvkTw35pUZBNVMxynl2vcEljZDSjal4bVNPE9KnNQUFd2gezCWLs2Zuk8s73u56fLA6ZBtrsU3VNNzxqwd6FnCgew027PTjefWWOjCvBZEcBMAf3foX6QBa2C1jhAKaEc+9iJ7IIDr2Cegr5/URq0FDpbFQN3acJYARvktBTFBwohMIZn4GteKIrtgQbegJHTtKXphW0CzzxocQBcpwt4vsBADs5Anaa7xskwPD7OC8HUyJBXFPOe+hIocZrb+u3gvvnhdOU8GEuFpr6frEBfsSeVHrLtl5NDn2E+9A== 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=tFwzT4b7TDN8LupwfhTxyMGZTb5M4uMCFAvDfp7nMBc=; b=R2KiCHrArWo296Hv4+E1zIpwuVITu1mjPHtXSUQ/NaHJ52vevCvEntXMf7JFNSoSuBslApumUefMU2yO00UwXTTK87T3NGLwxFq2sqsM3MxzBQocO0bWNaThpGIxJQ7R8+9f1ltGBmLd7JTvbRGjN33bFML00piccPfWS7a8RTbOb33B3e5LjTNlJxHMkOFSipN5IZtEB4tSb3qbevPBGp5n//UH5IDrEiOjBUUsHATHCiAZwT4o0e28QXb8XlmqZlMalaueFfNuU/YXv8pYabTGIxWZvy71t1zA0xZAyEkTJBnwxccMnxV7cIlWTKvXZ79P7SI1LtusLma+bniy+Q== 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=tFwzT4b7TDN8LupwfhTxyMGZTb5M4uMCFAvDfp7nMBc=; b=wWKRoBXqdalL4CQtdLCH2OZyTXh4UiRtBtQ+nEMM/4loXm3NsusoFmLvJ2HKaBbQBqtfrzXaUohUXid6P7QnSGTzr9tzF7mdHMyA7cq+l64Pcatd72BxSTrBGPLOh5ka5Yft5mnKdidBtHOc+4v/BdYg3TEct/nOd/AgwyBn2iY= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SA1PR10MB6640.namprd10.prod.outlook.com (2603:10b6:806:2b6::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.22; Fri, 7 Jun 2024 18:53:44 +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.7633.034; Fri, 7 Jun 2024 18:53:43 +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 v2 13/16] maple_tree: have mas_store() allocate nodes if needed Date: Fri, 7 Jun 2024 11:52:54 -0700 Message-ID: <20240607185257.963768-14-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0022.namprd13.prod.outlook.com (2603:10b6:a03:2c0::27) To DS7PR10MB5117.namprd10.prod.outlook.com (2603:10b6:5:3a6::17) 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_|SA1PR10MB6640:EE_ X-MS-Office365-Filtering-Correlation-Id: 7d5fd1d0-3b0e-46ff-0e86-08dc87232671 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?R3jJnELtoj6iyAPX1kl5kpii/V95z6McDsyztJVlAGJ+x+fQa0hmDOnEO8of?= =?us-ascii?Q?KrVn1V1EWnETtRrAVjLOXFAdhoacfv9tpfwNPXhGKX7E72X3ngBc0cjoOYJb?= =?us-ascii?Q?6fY8EWwl7WyGU0Sc7sZxHbA2TmK7XUPunBe2iTI3YvShsqLkbON44G6uFRMG?= =?us-ascii?Q?vMH1Ytw76El/w9rOuqFmpNv8gz1qrGzJzdhsALrfzRM9hV4CXWocOHFBpq7o?= =?us-ascii?Q?UPos98TUpXe/d1Y/J1ff7DmjRDYrOtfLOUZEqtSWWE5JGF0jlcsrqNzWamGz?= =?us-ascii?Q?uJEfXrHI5NiwGI/n473EtK+QpeyvAfQEaTHJXfDDZVhJjw22H37MVARuiqkk?= =?us-ascii?Q?S2P+DwC3SQvC+U0u5btcbZw6OF6LyFZULkyIhIdsSgLFrRcS1xpEPd98mLoY?= =?us-ascii?Q?wbXJ7JVAuISLAWY5IWESSI896bLGYvWyHoctEDZnazTMRuJX4wt6Pj/4mBsu?= =?us-ascii?Q?+yYEnupSjT/sEnc9cwmL5zXRViFQdYV7Gg7fga+LQXvzZjArgi/lhgZ2jfQ3?= =?us-ascii?Q?4W15v7GpYLzaRZgCfNAs2XzL8k40akDOYLYeWXcY3UzbKISQQJxHdjITBK7d?= =?us-ascii?Q?fCln60kMhZA5ADf6rvMIFiagKY2e+8dF4ZAzS2RSN/shVoTBaoTLTpF6b7EU?= =?us-ascii?Q?dHvVQ627PI9n7AwlZ11Jurj/93MshgQJGmtAe+VNwQuGKe4XDpqs9II51wPM?= =?us-ascii?Q?SL5NBCByA7QGYawj0rWgMhaiGKjzBZt3sNdEYC4tx4/LwGszUYZgQr78tJ6H?= =?us-ascii?Q?pWNAeKIZWqbJFRPg1tj5I0GREF2CaHxhLQ0bK+D2I5/3C4m7FxLbN9ka44uS?= =?us-ascii?Q?9X5XXd4V4q/htxg1tk3hbqVfOv0Zn9YFHSuBnJ1tD3C2TkjrZ2ccVqD+Q5Ja?= =?us-ascii?Q?XpEV1mLnVLtF4ayUOtKHTzx4bzpdaSdlDH5NnIn5Hq1X5tWrCez5ey/LkZM0?= =?us-ascii?Q?82SGyFHA2wbdU47h8TLtfzBmPUPpZ0yECkWaoqWT2vFrBa7BOAlJVS1EwLtx?= =?us-ascii?Q?tVMWoH+7LQ7N1QbpyJh7X1p1Fyj87jWEwMTwsThMgKlDCBEZi7rzObUIe7JE?= =?us-ascii?Q?mhE3cxCMpL0CEoYAIiN7de6F24e+hXxu418SB7ofSWR9VWZd6qbrO4Pd4kf8?= =?us-ascii?Q?fEEXhZLFBa70VFOrG3qtr54NG30122u31E3LWIcNaMqVAW4Ml+L2bNKQ0SV3?= =?us-ascii?Q?lPbbwxTZplJ6B0bz0pC5NA7D0ATtht9p1siZyJiABRYU36aw+r1jab5B1xJJ?= =?us-ascii?Q?tMRjEOEXvgQz/yaMMJtNzpMZ+lKUVHoJW/JbZn0OADsQ1AKj6xklkvugA62P?= =?us-ascii?Q?7+Y=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:(13230031)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?UAkL086aNNkJBVJ6KNlYuk7wJPuOLFlzsEkiqUKJrhmDC5qFy+Owabgn6Nt7?= =?us-ascii?Q?619FAvy3gslew2Am9dQ74jUWUY4dnX1YPnSs9AZF+0Ui6DIpDdGY1vtIvSQF?= =?us-ascii?Q?OMRE2jDyD2sXtML8jmn9iGDxuuLDMakWJsTw97nC3plVjy3Wu3U5/DdW6zv4?= =?us-ascii?Q?WLwvvX0hWS/dpH1if7/RUs52AhU/hBg/ThdqLO0AUDvOwu3DrBX66ZMenRSx?= =?us-ascii?Q?17SF1CZi3q8C8KYNMHOiwP7XWWt2q4obeNkHZIrcKR9x6qrBHdrXa9Nvk/QR?= =?us-ascii?Q?V9mfW5Xr3t2Qbo/X13QWnm5Xj+4URogKrbd6Y93WcvVV//ocG81sWYwRmW8m?= =?us-ascii?Q?FxSXJE9S52kqS11ZXlhk2bkDko/dYjmzP+tIBMn8P2o+dJnxGv8VSFoy94rV?= =?us-ascii?Q?547h1+GhIZwnm0zQ0Hukm6DWAnrxHL5ywBtrXGtkLfWQ01SpGv/rv/RYnXTv?= =?us-ascii?Q?itLG6VvQJKFKx3aEhP6VQqvWSr9awqnjOqux/rrPggXo9Km5ws37M8ah7Qvk?= =?us-ascii?Q?FgAsCGhR+8C4lZqbaE9VcPZ5Y0QXY5DiHASAI/9R9mlebZeJrplMsBRiOIL3?= =?us-ascii?Q?bCLT89LBrc39gAxNY0Jf+MhbD3IrPWowc1W1PI/2Dt2/V5+Je4+Ab7eAOKU6?= =?us-ascii?Q?9g9mo94LMS7iOKzIWNngzez8+HU4XEYtIsnt6snaDQ57ZPNVnFYY2Z85QJIG?= =?us-ascii?Q?XH7Z8ujyvoGot7QXXcYKnfGgrvPGu9HxDlo5kuDvqIGv/ujtA0JR+9nWlYRY?= =?us-ascii?Q?8C/cuBTy9Cmfs4eUXMMO7nzxx2SSIKFI8KJVjJLOS+aJYlaVlPVulirMt1Wb?= =?us-ascii?Q?xwLsHFy5uVrMgCVxcr0JQhKq6SqLyq7bToz4c2n17Fq7IAublKpCJVKCa3Sv?= =?us-ascii?Q?euQ/VDPZhoVn05hhRdNOTIOqn06Cf/EzMLqw6PWb9eWySTczAD/loHTrhU3e?= =?us-ascii?Q?wlnl0pheX2IR/rOnQJbUdFes9+Ip0VGKq3EAXn3cx66l7rKQ26fzF9ipppvB?= =?us-ascii?Q?uRWh6cp/IytLSLbuoCqoyEloYkK13qG9WRYt3p7/RBj0Fh3VriLCBRGzBVCt?= =?us-ascii?Q?lrsYoq0EKddWmUQLTnxfXJrdbIQbCKq0ezqol2KQS8nKwU+lkGfSSCv9d90Q?= =?us-ascii?Q?6kmgJ/bRoLFavOSCU5n12bfvcbR1ef0SrDNqc/o90Kq8Z7zlFhk7LrmX/jm5?= =?us-ascii?Q?lfg/Ox8CnvkPKQsnHJwO14OQZHbmFJcToccdW9065n4WLJE8ovRDuuLix5Vg?= =?us-ascii?Q?PRD0ccJ2NmFIXIkw6aSEZ6pTfoahQHrL8euxhScspR/d2o6Ly93zGWP5+nf+?= =?us-ascii?Q?zp8bqI2J4PxPbb1LcF35n/o0cfqWQPSgMiNz28xoBYELILmwR/JYXFhTS1sK?= =?us-ascii?Q?EAGKKDrEytvwb+kpbRfrtm/0ztgtassE9A9FWlhoxVtBQqWJqnehfHrW+A19?= =?us-ascii?Q?gPR9Q7GTZIRV8JrVYuyFGOWFgeK76rL+0xd53hozd1AB7D5IwSajTdzJoEuG?= =?us-ascii?Q?3xjbh6+PF2YzpiQsr+3vWPnhzGMfb7WebPS8YBuwG5kTCwNPTJM+eNsV9CSf?= =?us-ascii?Q?1/oizU6W9/XJOVgSP1Yzrznmig/WxGv8fcEMaBnI6v4FZe/qJJ4gdLSt2ZFQ?= =?us-ascii?Q?KgGbdJJAdeipltV2ghrk2i8=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: TxWphX6prQRgD2Eigb06bq5OSzoICFgHJ3bjLdaWD7Nfl7MSmH1Zx4SNn9F2c6DX9eIc4uL6AKnvINQSVKKNoPZez3gwKczIz4Ltx4Bv7tZsiKDsNWHD3qDiy7HrDxD5tu+qUZLsatBTRbO8c5eTGcWJjy93m5LBniQSMLNqyBkATgQDR+OOrurQCfLDL69NM1ukU9gIuT080Y36QIUxwMgH5/SIYpe79N7PS+ZuHXR89hOVb0dy32J7+Oqrfxgl250snQM+7HSIeBxN1B+OK0YO6BwqFeWKRrdXUgntiIaSMg9KxNRJsIZ8hMNEWSXI6yXADUgOBxd4K1wSWwYOZhmHwqTejmgo5aP+u+dzmPKssO6J9MMl6uldLUIIR58GvoUPglxxRPOtI7z75r1MSUDf0see+N55WYEapDEqYEjjNpbbYicO4uKIx12W01IGUrErMYPVfs3PSshgGRQNe743VdES3Wfwstg6DJeYmWdWzXUfnhncltACWw+EqLzkrQK/03VmHVClnWPITmZRLPYG+OBIxJK8veYgodXaBNvAAHs9Gq4SkhbUCmfVvQ/tPff/uwAdM4waPx9eURxftDMhxSj3uGvzQkcReXhijPY= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7d5fd1d0-3b0e-46ff-0e86-08dc87232671 X-MS-Exchange-CrossTenant-AuthSource: DS7PR10MB5117.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:43.6410 (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: 0KuC6v8vzSoxfQ8bqyafBMwx4z8AK2/RhbGypHyxSmgmImQxv5vbWefcCYoS/8WDuSG4PGEjS0JeTg3cZE/QxcnEZ4ToOgJciiFRrQR0Q/w= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR10MB6640 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 bulkscore=0 spamscore=0 malwarescore=0 suspectscore=0 phishscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-ORIG-GUID: kMzbxoZGb6okFKYZ3_q_lPtin-gZ5thz X-Proofpoint-GUID: kMzbxoZGb6okFKYZ3_q_lPtin-gZ5thz 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 --- lib/maple_tree.c | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 8b17768db5f2..92f133ea5f00 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5528,6 +5528,20 @@ static inline void mte_destroy_walk(struct maple_eno= de *enode, mt_destroy_walk(enode, mt, true); } } + +static inline void mas_wr_store_prealloc(struct ma_wr_state *wr_mas, void = *entry) +{ + 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(mas, request); +} /* Interface */ =20 /** @@ -5536,8 +5550,6 @@ static inline void mte_destroy_walk(struct maple_enod= e *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. */ @@ -5563,9 +5575,21 @@ 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_prealloc_setup(&wr_mas); - mas_wr_store_type(&wr_mas); + if (mas->mas_flags & MA_STATE_PREALLOC) { + mas_wr_prealloc_setup(&wr_mas); + mas_wr_store_type(&wr_mas); + mas_wr_store_entry(&wr_mas); + MAS_WR_BUG_ON(&wr_mas, mas_is_err(mas)); + return wr_mas.content; + } + + mas_wr_store_prealloc(&wr_mas, entry); + WARN_ON_ONCE(mas->store_type =3D=3D wr_invalid); + if (mas_is_err(mas)) + return NULL; + 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 Feb 12 19:04:02 2026 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 4ECB6149C55 for ; Fri, 7 Jun 2024 18:54:32 +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=1717786473; cv=fail; b=hBrQ9TGtVYRPs+nYy7n2wdqC0AAieNJ2C353X8eh9FmW9LcfSZbZUno23RXFWhnIY4XiHzSyN3IQlVRQ4GnEE0eCWcrVrZDn3Me+A1qfnKO2U/KIpi1LuxRFWBApHSdAdxrqr4FdJ7n1FFVrOnH7HXKS5GggOylWajbtCD0N8UI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786473; c=relaxed/simple; bh=KlL5+VNyrid3614umMOEllzT7+D/TWFoc41uw/YeR5g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=WzyvBdy1TpEpJs+YHsv3yCviTkEEiftI+rGpsX3uNMK+/+Nc8dfh7r2zp6cSpOhB8wmqMrDDA5H86bLdOwsdEV84aQRfqoX7QfIm6xF5V+UAcsgUIugXLmtKbQubqpNKR/0mIOSMnJBVvlemoX9T/7O00vkUKMU/MME7Umc/VU4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=AdWd++sl; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=E40s4gzI; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="AdWd++sl"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="E40s4gzI" Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuYTW020017; Fri, 7 Jun 2024 18:54:23 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=67y5PxiIBaFqmkSpIhwq/2i8iScXQ5Koqe6KIRjvNoA=; b=AdWd++sl5jK04kz1e+lT8/38dD99GXF//hrOrUPWHR+u/qeEcCAN6rtVXXHI5tkOMYgG VBIaU36qkPBTMpYBmiGwnj6S5MoiW+CQmoWmuLvAi8hG44HKQSOQArV752Rx3DpcyHOZ 02ruW6h1j3V+vhVa/qy+z84tTcnq4A4EffwTRzDAAMJ6ywYmBXRC53d76caTvXEj0pSK DhcUbXFVcvZwXlv7A33QjpsSBk4hmSxvKYOeF9PeKdBTraPcOTdq8jgQmw7SDuD6cm+1 GogZKdqZZilLdyY7EVsv0D9CHeT6MA2aJ4Ftdw+MvReKCmVW26OSC1f6yl3fqnmX8MB6 PQ== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbsye9cc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:23 +0000 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 457HOGFv015573; Fri, 7 Jun 2024 18:54:22 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2174.outbound.protection.outlook.com [104.47.58.174]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrjh0eud-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:22 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fTA0jmM0qv3pTPn6KqN9vahr87VCZKmjNWzDEeCxO9o0Hr66+xmy2h/XqfpJUKAFPE8isJZMWTCyMN7ttge0XqzLgQEOrr7RIxLejJl2xXyLD0t+AB/SZI9X+egy3g7O4TR87By4jbhcbbK3Pgto4EixIFZd1MFsUi1QseTgaI7EAAKwGZO6fqhR3gr+rzYJXmuv6guG0jj7v1kqlasyjP0tm9jqaSGrENzRPrEuk3gNqmsN0pzrl2ruBq2bNcJzbVH2/R/C2AaJT9hdbZD5TrL9mhJz/smhaZOz5i0hYntsTtXch01BoxznwihNlCTb8GDxtbZWd0chhKGoe/+37A== 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=67y5PxiIBaFqmkSpIhwq/2i8iScXQ5Koqe6KIRjvNoA=; b=R8xSwdz3KJEQPI8+kF4g6QhPQyM3o7yFTrlmNlr/q1MQczZ5jhUU++ocAqt2XQT/8qPvbDPOq+Z7AI3HuyIaMJQgqIJ/3HyeDU4jIZkqgB9ej/YrrDz48Mvk51v2lGgaoQnspwcKLYBBN0UEk4ABgNcOvIilhCWes77900ME3ihkqpgEz3TZvWZc3jjIkZwonyBvZ4x0t8gwj2uE69Prjs2BAVh3TqzQaWl45HC5DeQJpOVTKRgOF1a8UOeB93ZjHXoXaoKZRq1/kUsePNeZHQ7p8F1ylljYp2CTpZIw/9OxLpwwG10OyJKnUTAsx468xEHvHmpY0QGTVbuvq/oM5Q== 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=67y5PxiIBaFqmkSpIhwq/2i8iScXQ5Koqe6KIRjvNoA=; b=E40s4gzIaEb8UIjTDjEX+71yw6TWDX7kSYs8SgalmXFeY4ccBlbrUttKfnRK+5R94fbV4TgWnHQ82qvm546TTbVRPppC3ONYEBLIKO9Ol5tXYcnezEtq7ivZMF/q0lDoE9c3S/I8YK2NYzNf3/ilkEHfALevyw5BVWGqmzCAhxA= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SA1PR10MB6640.namprd10.prod.outlook.com (2603:10b6:806:2b6::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.22; Fri, 7 Jun 2024 18:53:47 +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.7633.034; Fri, 7 Jun 2024 18:53:47 +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 v2 14/16] maple_tree: remove node allocations from various write helper functions Date: Fri, 7 Jun 2024 11:52:55 -0700 Message-ID: <20240607185257.963768-15-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1PR13CA0354.namprd13.prod.outlook.com (2603:10b6:208:2c6::29) 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_|SA1PR10MB6640:EE_ X-MS-Office365-Filtering-Correlation-Id: 8c46340d-80f0-4b5f-cdd7-08dc87232985 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?9ezmmxu1GnBA3A+AVrTtrAu/GypN3S9cfCEQgErY+Bw6KivOEan5sxOUCUQS?= =?us-ascii?Q?INx2GzXoziZsa0rOh8mEe3kEh2D/soFQgCzhkLBUQIvWz2Qnm5F0SsmSIHWa?= =?us-ascii?Q?WAbFS00eBdMn8Gb48Z0VVoSf201Kt7nup5/atfYsiYKCxeNsKSYc+e6Mrtkm?= =?us-ascii?Q?juOrQFx9YQx2kyY5eclM7HuNDNOUBoznc950cmQ5CQ1rkf0pKAWpnpvmutlk?= =?us-ascii?Q?Sq51P+0XS9+cO9y1edgpm+fGg+UeiuJ+vLWEcJnBbwR1IsUA8DemQW9Ypwya?= =?us-ascii?Q?UFyDOaB8kRrTTEs1gGsCkN3SRMOGjHwOfuIuknE4e7mbvghGFx/5kn/aoXB1?= =?us-ascii?Q?Qdfnfd8JOyi345y0k5wgU2WXruaN06NLIqbaFFKtoxQd495smiN563okHCZj?= =?us-ascii?Q?nizALUhE1pRGv8QGnvUpTqsRdEZxqruM0AbWI7Ia4hpZslEzYfnYryU4U0r6?= =?us-ascii?Q?XUyOoKqny8HNEg5prEL3vP1UGwlhztaccjbOk9BmOWY7pDZWkMjLmu4dbbf3?= =?us-ascii?Q?9QPqsUv46Vooqht9KNyV60gqsJFi87F1iKesXrRb3GbpIlE3fTe75flEQqkx?= =?us-ascii?Q?HfCHdObDp2UmhGv7oj++vQdF33MjEsEVnMok2k9Vf3h5tTiVk9PVy/Xk5Gqe?= =?us-ascii?Q?SkIHL5rRmSCxu3/mmjMwQpOqgN4OdbDeS5/4m+n1bPHNAWKDfdS55eOvBNss?= =?us-ascii?Q?rge1bItBI796H9qvL3ninvbAW8rZOktyNRQXEPD5kaLfBW54Mf3xl7hHRPzE?= =?us-ascii?Q?XLCsgCu+1nzWaK6fpArPuwaRemjmECoMGmjQCyDPuJNbbzV8rP8VVZy2hpwD?= =?us-ascii?Q?xchog/bp7oltH1vYsmzLG5/FlkqXDw86JbNXK/SXTxch71LhOiMGuWgJVJqh?= =?us-ascii?Q?+7pPprveEh2kQ3qhgfZ0cw1/B2dN6aqKdAxSRVG3qExglnusMDhQnHWMkWrU?= =?us-ascii?Q?kYSnOHAQX5qvqRpIc4Pd3O5LTM6RZE0zlkVoRx3o8qIwLGtgb3nOntBr8R/G?= =?us-ascii?Q?ukzaMMskxBfyxBUywWG496Qydgs42o6BVPfOr3khRDmpJVwlfeaGYihR3o50?= =?us-ascii?Q?o+u9iPtHCJf28zcLN2IGwFkelQak5ouzE474nyymG77jgf4cw6S/Ie/J9OTu?= =?us-ascii?Q?dfiMNU/9LWIEO9jntHtcIsAURSlXfx6ko/21LGnw1GGwM3+k1hdMe9BUJGRY?= =?us-ascii?Q?DO+LRz8cxUUcdfdrH6KuHkWBj6nxyKzm/e+5PLafiVzoaSKvwI231t10MtEw?= =?us-ascii?Q?lnnqDHNszE7gO4XbLoEydcTygesQYoaSrxHpDR4pxCIJOT5nYCc5oUq4QyJO?= =?us-ascii?Q?lPmr0l3H8QbAoYVh7qIK4/5F?= 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:(13230031)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?sw6wW/Dop2S7OEuAPegNqQzIZ/l3BdQ1SnxZh3XhIPYjK//dOs9nUwUuw+l9?= =?us-ascii?Q?Ff8Q6CbdrUtFqRoyc/Yis90yhUZ1OpzQdmPGMFIxNOjgwP3JL7EExdXE9Sns?= =?us-ascii?Q?DfIfnwSS9/KzWtlfVmzo7/FT4wq8xhTz9QubSdSjx4gLmTSFVpzKhWpWdWm7?= =?us-ascii?Q?7KiC6BTkhSOw214BRoNjH8zra0qH10eNiIr7U2ufOqBr2i4VE16awmGXHhOJ?= =?us-ascii?Q?miv98bbnaAzXuw9JnUdz9FBNy+/8GEI9rgioX90+cwwoY3NbvcBTViF5HRpW?= =?us-ascii?Q?CUAeLJjUrCnKkojaKf9GHR7UwrDyxNuSUQclkoFeZb8lv5+vuvq+EcMH1H7N?= =?us-ascii?Q?ldujO0++8cZNc6jqFqrchQ0Sk2iljf6sGPIEXjaSczuw7s0rc2Xyse5oZiAh?= =?us-ascii?Q?mVd2bp8mXZ0c9pWNEr0tBiEQHbK5BIklOZ4h5Oq6j96kLLGywgXEvhXEuZsp?= =?us-ascii?Q?5gFFnHBfydec3mjpYRP5T9bxCi8eHyKJvHIKCK8SbFZllPPy3dKosH4u3VGX?= =?us-ascii?Q?1EVw4EbxzfiNCnAeCS6Z+sRloS/g/pe89Ru1+at7MBlNRV1BkwaR5aNhf6zw?= =?us-ascii?Q?Gt1owd6hsPeQh8/aieHgToyaeD5ZVrhRt1PvDZyTJWg60ZmlT7SP+rLWLNXh?= =?us-ascii?Q?SC10IXNGynRmei8J84CIrwKcEH2m3Cn819OstO/2lhDenOqlSfgelU/x/Cau?= =?us-ascii?Q?GbwsRlfs2jQACd/cX6JgXZtLek21DBupDLAGsmg/swJdPWULQKXXagpIsFGi?= =?us-ascii?Q?xm5TxOeB3yw5wbhetHybLm7izNKktgO7smV7BF/rj6QGvM6KJuXfphDyyr+c?= =?us-ascii?Q?NkJhK1jJU/s6VZyNwbWfkkpvyyhwOclvrWMQEKTfJdWERWLYyxs92+opACS5?= =?us-ascii?Q?dl8U8/s7QG/MEzOmaH42YDtcdGpVVBQ2RhnfTHg1JTV0tefp1JEcjdjlEXqM?= =?us-ascii?Q?pbeQhl6+CaYGcdfIq6cJaQa7EhUoFYCqMGf4emhyi6T6PlY6LT6vtcv1YoSq?= =?us-ascii?Q?69DHbM4WI1ecs2Fi7psiX1Q50jFoZPr9v42m4I4SVtik9TP8nXQIj/4NPxWC?= =?us-ascii?Q?hXaM63cHgo5Ow+do4OeD5Ba7QlNh5kx0KP6vOv9/xQDSy4VoRUzNotnz9ftl?= =?us-ascii?Q?B85lhB7vEyV98VaMC54ZKNiUYo/JzHTVcW1S4G28TaksjtCYMLv751FFcZAG?= =?us-ascii?Q?5/jsE5RmV8LgaOu7J8UDsBWr3+NxE8rfsc+tWxsV1j0EjrwvVOLm50KDphQm?= =?us-ascii?Q?hPRAowleSNUsU9rqZD8GauXiNIBQkQzDOvGinPQMwj+JpDWkkKi/la4onrCY?= =?us-ascii?Q?IUQnrrgoLv027lU2sOhMmkQmF5eDJL8Xui8IsUc8JHKmsbtcX50EKyXRcyPq?= =?us-ascii?Q?/1hT50ts4AqxmU4y40LQCzPBlJYJpUA5wCMOuKBHAO+cZ4OBNUQLkPhKutWh?= =?us-ascii?Q?6a3VPfJqIInDXklE94BNULpyQKmn66CDEgOWmNeRu2lsSyV3gnF/DM4RI8r9?= =?us-ascii?Q?ApvMKxEQ/zKnxaiRoy9EvvzkQIpfcMVCd+Grkpv2NcAop/6i64Xe3z8tODTg?= =?us-ascii?Q?hOxTLxqvPNKgY0+gtCgze5M5Ezy9BPSbje/DDeGxvsP4N/VuN0duEjS2iGJC?= =?us-ascii?Q?G2WwRNBICog4cfrGzbuiZ/E=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: d1oZFXEMa1p6LdLBaefg9l2+IRTK7ewyJi5A6wfTgvGtAzMZ4Mms/k98K3OmJKWAGyP2erGpOzCRa+mG36C0VdQFguxjVGER81QT49TE2sgvyX4+3J8FmU3qLfDxn4U9xZXHbTAHPj91xsscmDJqrUyyYkkYTBY4n9cO2H29kssuzbsy01c+Ssx5ukHYckZoR1pzK0JQB0TlSm4E2BS3HlJynbPW8ZCINpTi9iaVqZt9NIP3t/RjZlhg3RcUsCeh1+hkF7F6u5EYrarVuBsP1M4aR+HNMPDDX8OxRMZIFYj5ZN+gf10e/Z3HrbZ3PEIC1j1I86JNyJRQdP9OXPSTQGhIFqTMP3H0xUad6SFDrzucm44SA9n+8DqFi84pEGfRwL3us8CCbj+yf2Ei20Ym28tYJKT922uqwyXZJ39aSuxRsviPOK0LGRW5htJI6jKCvxTXLe0iYB0CTwF9taP6iWPZPR6pMEVkxnE5vHdmXcX9N7FZde4nb6WXUyXAc587BVoruv7tpnO1C4BPx1HVgL58oepuw2TKKgK2ZuFzLsoddaNLPTCsEZySz/AJEV4VxxCFwa/AZTGZ58cOEqgeXrwd5SOVbqpuTNli+ReYz44= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8c46340d-80f0-4b5f-cdd7-08dc87232985 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:47.2944 (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: QIMLdvuH1pZxBvoqQe4ylANKlkUJHIfB3VNR01bfU0xKNNhWSs0dnkVBnCXyYSJWrLPT4IcfugYDN3Xz6O6fFnHegWF/cKvY3vEA+9Q0UqA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR10MB6640 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 adultscore=0 bulkscore=0 spamscore=0 malwarescore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: ZG7X4fZCJIAfj4i3M2m_xxxNRfgtGhw3 X-Proofpoint-ORIG-GUID: ZG7X4fZCJIAfj4i3M2m_xxxNRfgtGhw3 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 --- lib/maple_tree.c | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 92f133ea5f00..7e1f64490662 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 Feb 12 19:04:02 2026 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 12E25149C77 for ; Fri, 7 Jun 2024 18:54:32 +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=1717786474; cv=fail; b=m8PcMabJKDOjpplXxjesNaOJoQkhOYrVmIA8couG2yesa9HX5UXQhvRYJM+lSsAleAm4Y32fLWe7TPktcQg4rahB44fs+WT8aVJUfptGra4rUUqw+n7J6oGfgFJDsH9700Gc81OVLjtjGxDOGSDblgtV1hXYwgEJnX9ru0adZdI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786474; c=relaxed/simple; bh=twyEa7nc1jUOjZQ7aiChVpp0Y5Uf4/5pmGd9pxuukg0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=SjaYlpFhMrSE8PMQIkTGovFm22ARzSSuJ1bkTfdBuycWy1xnUxNNVY9TermEqpD94dqTi0Qto/nVq/gjVg2H53JWtWmZgHUrMqF7AahWpHbxCoP3VddxToxz/yxSJ8/agVjHlgnEALH1ob+1SIH/NKfZonVmswC3Rv3wasqZa1g= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=hB3dmpwt; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=tINR6m36; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="hB3dmpwt"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="tINR6m36" Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuejC009427; Fri, 7 Jun 2024 18:54:23 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=qD9T/3YKT0sotRrS3Aan2Vhb5C5Ldo9fYDTe76XpBLw=; b=hB3dmpwtzhm1diw/a4epSgZnZI0CrwIZ5uzeqVkCrKNv0mYiELNI7Cs75zIxxFNCN/f/ ENcpQctPQl/Tnkfd6/lG26DHASd/9iyytuMfcXYhMBiXDTQ+me3WrWpQcZ1ye32c49xq gZza0J+SkfjisBCE/ZXutY7gLHkSUlhkG9nyxfSMvKP47BR6u0PeuN4Cp9eowY1NSPdq iMtW4GIJ/2adBDBxpGHH0DQbH+zdj8fJDa6O+7xbZMFMfr8oG6DUOd2z1lNA3Cjov6lS 7TjMglL+iBXUV9lF1dZw25YkFTmpbfS7fP89HpxmNzwaYCyDNllTDlnPgANYl3CZikVy tw== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbtwe89v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:23 +0000 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 457HOGFw015573; Fri, 7 Jun 2024 18:54:22 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2174.outbound.protection.outlook.com [104.47.58.174]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrjh0eud-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:22 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gN8E6wblX9o6BXfmi6/WciUPqKn2QYZj8HPdg7b9c6BMDz9GaqR/mlwcIC/DXyY+IkWwoVo1qSe7OpDrxUxU5zkT2w1e+zvFuty62jB0N3D3/snjZ8XjAuECDeeW2b/KBCeKepzxjACN8EYeq5pZHxMs33Q2jXEhUl92Ypzx+xZoGN3OaRbGg1vSNnCMSYErugsxGjFSbP2OSVYbljG+fczWgp82wFEnKk/qJWYRoFI8aeNxsdk2Xv8h9WFbwI2XQvMKNsVrUGqcAEW/LU2NxXVijO28wYjwwtwCvNhmS2YPT9QL8YAIPXBzRchgqFsBl0QLCgDcFvTU/B80/nZRqg== 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=qD9T/3YKT0sotRrS3Aan2Vhb5C5Ldo9fYDTe76XpBLw=; b=a3+EiorbpSuXy0gRtPoWV/hhjNHh64yWTIl7ge3zFwqQevleQwTmPXhqAKqor3Pikd4tlLRZE7S0QcQKe7G80dguSXYaP8NFuLrb2GmilCKltLpzx1ayzpc0FCEbtO8VjvWheau5MteiwUglQ/O8zoFB3jsxvygLCl3uxX7apfdqhx7U0oH+x6cpw72xub67J1ShSneiq0QZ94AwFV387XosDzr6QjzfQ5lN9cJvn61Nno2vlwYmHdf57EL6NKLSCEFJksiiOurNFbzqGtlYzAqXm/JfmV3HygdKpzbhZRLeUVTX7C2KLEx6bsTkB+2xjRjwMIe5p2PweYTkbe3/kQ== 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=qD9T/3YKT0sotRrS3Aan2Vhb5C5Ldo9fYDTe76XpBLw=; b=tINR6m36nhXBZPE37wmA5o0s/Nqm0aFsK2dw3t1XiS7EdO+LSP48sRN47tphNL6ikvpi5XBs+4oAMaxFLfAIDw6hE7tmJdOgCRO4yAeOQGWJv0mw5zhD22zDHJPpWimcZBCfqrvDmqLjztJxwpHEV3+voILyR6vrN3epM17sOSw= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SA1PR10MB6640.namprd10.prod.outlook.com (2603:10b6:806:2b6::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.22; Fri, 7 Jun 2024 18:53:50 +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.7633.034; Fri, 7 Jun 2024 18:53:50 +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 v2 15/16] maple_tree: remove repeated sanity checks from mas_wr_append() Date: Fri, 7 Jun 2024 11:52:56 -0700 Message-ID: <20240607185257.963768-16-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1P222CA0030.NAMP222.PROD.OUTLOOK.COM (2603:10b6:208:2c7::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_|SA1PR10MB6640:EE_ X-MS-Office365-Filtering-Correlation-Id: ad19298e-5ab0-4cfd-80d1-08dc87232b4b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?g+KnjpAIm5Drcof+9+ZjiQxYbdYe3S9WdSpnOJ6bryfPf8BSkuaiwVWJ/3/m?= =?us-ascii?Q?MTAqpsb6iE8CUsVYDn4kBOIRBT+LGArbleihSR5PzZBbyHhPcG/ib245m94Y?= =?us-ascii?Q?COXLqas4yPmVwC9OMwCgP8mJz6L0b7V9qw//YEqR8yTFq+C0+nXUBaJbpcyO?= =?us-ascii?Q?rMkYmXeZqNo43DkAYIuCmH5lruRx47ifxTeje/p6gLP/127paf1vaGYnEnU4?= =?us-ascii?Q?54hy3n7qQBDCyQARVtDTDGhs18g4iuxWwxMuVWRDG2s2iEPzrzThHwdb21iX?= =?us-ascii?Q?zsGgiusAfO2Uwxi3qDsXUwBNb+OY+aLGAhevznKWiDaPxRQyOOrdDDXOsmvr?= =?us-ascii?Q?oqBVt6huGVXW5RxE8lLTNSxLGKWxEmr6HD4kXElnU1zPFpjRm9icGHUGA/no?= =?us-ascii?Q?xGBzaktXoynr3DbedL3x8E7GEGFr9WUhfE+gN1W7QqzYwNJWi589u6rF5R+G?= =?us-ascii?Q?SJGJ2vtqZUWiVmzke2x8CGewuY//muxzA92tyAp5QvjFN3Z6kgdOol4PyKrg?= =?us-ascii?Q?NYsb3VZyTWMriT2wFTc6HOPZzw/XH/n5t828iv3u3PbH+Vx75oY0geS5gv5m?= =?us-ascii?Q?DHgUun6kpLtRs8vrFcodHNiUXL5Vwdv3E+JJXJM2TNw6EAOdbWxstkOwB6D4?= =?us-ascii?Q?JcGFuPdM86lyJ6E0YR2GNkua6/NhH4XV2OeFlY6KEYV/Ai0aSX6ABA2l0EpD?= =?us-ascii?Q?JQd9X5KAi8jF3sKyRnaHzUBVj+ZxG8gnoiL3fd6faufyO0Zl1g47S3cckByz?= =?us-ascii?Q?Z4IesYe9xeVsYeOUnHrC6qqXDKBNaV+iJ55aWgTm0XLyhZSFNvpvufUs/ScL?= =?us-ascii?Q?A06AsYAgzvp3ihJNZAirrX7utrkpfXf9wGJP2AbnhPO1BLO4h6iUbYeQd81Q?= =?us-ascii?Q?6x4/Hok2BE8zwEIJ2n8bTW8UONBmamfcdeYShIr0L8ccjXncbg5pG3xgkuV7?= =?us-ascii?Q?wDPHNSEGfemDzcN3Jzv/yyf4429QBpurDazbNgvGpXyrvjLhnGPdVztphjMj?= =?us-ascii?Q?OAqMCDQvU8JJcVeBlZ3O3KIKNkquMkqMP9YbtLJapmhNUFc7nQhXTCCQihFb?= =?us-ascii?Q?nrgGWGTMRZgPgOGupD0Yk+w4+3ZoMl0SFo55JWPHU1fjypo9Ocf/6DiuQNh1?= =?us-ascii?Q?BXimGxY2lXgzH9yq5+IW03ojRzLaWpp0uO39JPYn4SCIvDv3XsPtHdpH4tEx?= =?us-ascii?Q?4RbHJX1NFLewfYf2O9gI5sOoOj3HWF54czgBYMt+5QE7Dnb3J6lp2aQ6O4ZO?= =?us-ascii?Q?pa52KaAskJ8rk4nhyoqsz3QjIB2k4EnA6T9Eh0QHhjSuTH6CZYlEGvPwo9OK?= =?us-ascii?Q?GMCtJC4612zbOWlQ8gBZMBY9?= 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:(13230031)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?nsB2iuhWAqqTPKpKAbHU7OtSE6dDDv8aow8MXzJ5HIRVp3IcjtaIME/qyZ0o?= =?us-ascii?Q?PU6IIRnnwGwB3DSKWROiU4hBw4ZY38IRtp/itX//ybybIaR+Q2IDeJDRnE2+?= =?us-ascii?Q?NJkkoId2dmjwMAumvRi1guQeN2sRal8FlRDalY62LOnwkRSMfM8LEyZVGYoH?= =?us-ascii?Q?Hn28Aue5rDbr81oecU9JBBcMmup3dktTmmO2JhcAOu1qBqvaryMRz6wQeaD5?= =?us-ascii?Q?5Ba91cm+ZSGltTkzfKScxlEVigkZp3/3OMZXj4pAbBykW4nBgHEoSxzTs5UN?= =?us-ascii?Q?DKBezXLNSGqIUFlwfSShHdCDiJNURMMslRieIc/Y5bj5FgyGMiO2G22Ijggs?= =?us-ascii?Q?G9UAQ4zo7OcfDM//uGadtg8JTf35clDllRIm4mjNDTkP2/p7yXbCwUZQLx2r?= =?us-ascii?Q?lPZ7baupm2h90lrcKfpFl+hcpxCdE4bENf819zwYQD7t8e82MiOl1E2KKxKH?= =?us-ascii?Q?3f4VCbvu95+sHQaKKrMBDB3Snz7TAFoZFjJJDsrABr/J4OIPeazMFbw2E/Pz?= =?us-ascii?Q?TqOjfTd9gmr+5Om5WtpwC0rTT508SDiPNmnSyZDYhzNfrA+pUogAqUvgV/7Q?= =?us-ascii?Q?WnnkuV/SHM55D+nacl2y5cjrn3U4Kk5LcBLmqWndNWhfFUXAtCwTMsZ5F527?= =?us-ascii?Q?Ws1D1gJw7GNxUiCNAVruOa2TTVJq1cZQvzEv35a/55QzrYgey50eY7znI/Sx?= =?us-ascii?Q?jgq8aNGLVq2keIRSuvCA3eo5Wfa7X8Jf/WxxE54klIHd6Pi11p5OAWKbLJRN?= =?us-ascii?Q?eX7YSthSvdTYHhKn5M5IM7oV0hQIuP0h8YXFwwrATJjJEmf5okcljuJMQp5V?= =?us-ascii?Q?44u42+XsKYfEAKOfydAgD+aGNkf/RZzMThozZKq04M41KWIGdwn3PuYsFDgY?= =?us-ascii?Q?6xLu9uZxviFByhDfEKYIzzB8P+m2h+eS0yujYYzWVZXOQIBdgy6lxo7d59Ym?= =?us-ascii?Q?xranvHgbhEHLRVDYcRauqKktlwQVb0qs2AOclfGz2NhXsQkRZlYsEMVo2eKj?= =?us-ascii?Q?0nDa77eKM95u+omEjHvYbLDiEJXTpZ75LMGikdisrbRPKa7o1AzHUqLGbn/0?= =?us-ascii?Q?ixmTZUjdYzj71GOe8xdmK4gNJI4IB0zcaC3QMj5DtP68aiV9dypHcur/CoCF?= =?us-ascii?Q?wtlZVrrL34SbofA6t85xS1L32qn5Iu7XEUR/cQL6xmFSA7sOGEKAYLdNtQTp?= =?us-ascii?Q?N27WElhNMPd+xz0vszwCoxUJPskq3aSP/ijv9OidoTxGQVT7REUfV9S2UcAw?= =?us-ascii?Q?O8HKsQAowY93G/zGj8ZmBUUXZjcQgaSr/mb3sC8fZbfs/LQspyuemmJt86eY?= =?us-ascii?Q?l2cQoCANqqJsj67GLz+yLnvjUbMBhBUoYJ2jWw3vbOiP0mgF7RcHdfX0tT9o?= =?us-ascii?Q?4C8JtkfCc9Uz3P5NC79kdOUfLp8NgBzeWlPzGgMlG8uaWWirzqOWK2ye+32p?= =?us-ascii?Q?o7Gmb5ibU3PPr3VpC7I+Dv88v31ey2AzbpN66oO+PNZpu2EOCxRac6jNLIN6?= =?us-ascii?Q?6C7hspyxb+1YSylI4RQvJOjIBi6KkjnfaRAY6G1Z5E5gh79leeQjRJr7D1bd?= =?us-ascii?Q?9Ke1B56Oph0ACIvi9bAnMrmWdKkuhTPIOAVDESij7BJu5ORQUTesw5io5qEG?= =?us-ascii?Q?Kt+9Z2LJXA0EyjEmV+6d88U=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 9j24szKgbDMOtp25WrY+dQjj6Z9f+ZUaqYGPOTvfjngl3c0CwVsimUIb6P1YxzGDuladSwTOg/LZCcZgF7EoCzgYJnNim7T37H01KrotL2DZ3oQjKxaa7pqFG/1ziw/zCyMdNhCA6hqoytSDnZ7CZPExqk50etgQDy8NBqgbsxs+0lJs4u/VK3HKLIlaG3bygDF/t8xsSnGii7xu6ffy0hpQhDbRoTJ5GDRMS0KU2Kkd2A6Wg4BhnkxXbgtuNfiTrgv4A3+Mm9GyczLMOGEVGZHfm9O/XPb/YCGv3TzzBhF41wHozXK/sK6At46YXuggROoFuDjB6Ew1XKhfY3r9zFLpwst/NgzEXn0qMTDLSIOuBiFj6YsDYJVbJERTW9R5bCNz7sZy1eIo6sqVUrqoMVfeimGdjkDjcy66mgpw/EzSa9LmihgpG2GlNhxP3fWelC9j9EbgeNlFBHAwft0EEGhvl7AiOlwRSdAN/wudRKdXR1k9vCSETD93rGCnXhA2JngjkJUdlQvfkplfxmjMOTsdTRtzt0UVWOQNJfx6XXGiG7AQuAmNMxChx/+TiABjzG2cs29WjvtyrWY4zjk+MMccFI2Vtw356pwMEFkiZVc= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ad19298e-5ab0-4cfd-80d1-08dc87232b4b X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:50.1525 (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: qx7uA8Gmg3RhZFMoZNnlLZ0f5YrfKoNgl/TuCsc8ijSkpikDO3qWIgGIr0fBu54uZ3OBN7rBT2Vy09c7UVEY624kHKQLvhOYmrVwxV1rRf8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR10MB6640 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 adultscore=0 bulkscore=0 spamscore=0 malwarescore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: fmwPz5ngUnBY-ED8L7xBSPWBZw_do3pF X-Proofpoint-ORIG-GUID: fmwPz5ngUnBY-ED8L7xBSPWBZw_do3pF 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 --- 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 7e1f64490662..3d334e7c19a5 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 Feb 12 19:04:02 2026 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 326F0149DE1 for ; Fri, 7 Jun 2024 18:54:33 +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=1717786474; cv=fail; b=bqCV1nTwotIZqrceKoHAresaCIW7yZ786up4FG5zk3yKB21GPiedEGrPRN2xRKOd0AwEn0YXICEQ8RUtBlEwDILXXFFuaOkOEUZYPnSUZ2BIomgMxXJSFWlOvh3O5Usb117IN2S/6Wmu6n3oMuV7xOCTy256+udA7zE3okcla6s= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717786474; c=relaxed/simple; bh=ivblhPz4Jc5nLEphsHCc9pIwWZ44cP9vMhqcpVf64g0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=KI3zn/DBNEoIz2UwIisuTE+dJskjIEK+ORoNNC/cx7ui1UUq7i/MlVWtFEOAPpV0eykVRX3HcCf9BY1DjaKbX8DmUUIglr2avH18pXUe0p27GVht96owyrSHEP4z27+NtSBouSs1aik+4zwmksY5zkPzYn2NcZ2z2Jap/+K3zww= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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=gaB3ho/o; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=gEeJ+Gdu; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine 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="gaB3ho/o"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="gEeJ+Gdu" Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 457CuTD8019997; Fri, 7 Jun 2024 18:54:24 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=corp-2023-11-20; bh=LN9dwNd6OihPg+ZrPmID4uIjxFNM2h9/QkvA8wi9P2Y=; b=gaB3ho/ozowoxX2Mxoe4izq1XrxprzFbRekUCfPa406GOgRmmS7HXFWWH/TQvb6/F878 AGTE6WMHZiR4voAFlwMb3vx9EUyx4VI+HgrisDLkwYrofdekuqtdZxd3tlXh2bvR9FIa QEw9vZpe5m4qK+8YJhC+Ef/tSdv+AFByYfogdsbLANIjI/ai8mwZT6lbm3K3+y0a9OCA KQAVR3sU0GpoRa8elpQFj3ekjcr37aOBB/3TkqKT3ujsZlmU5KEkYQaai7ncjddW2/0A pAG2m0vd8AKk5SotRvx+JEB+IOF+KwKCKuRKAb/01WWcw98f9ep51GA0XFr1LWa/d/My Tw== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yjbsye9cd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:24 +0000 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 457HOGFx015573; Fri, 7 Jun 2024 18:54:23 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2174.outbound.protection.outlook.com [104.47.58.174]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3ygrjh0eud-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 07 Jun 2024 18:54:23 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TzOIIHN9TA03DbccKkOVCVOvtQRi1UdZ7xyoiR5gD7x79OhAX17IWttds3UQQ5jdkc6oJwXQ90dWcBtaATgHpWIUBEhgUhUcWa3cIKLWyXLhI/fnpwxS9/bA4zQUndNZEDYjhCxMSn5lHJp3gggYKeWLgcdTqUtUsiXW67YxkP1WXMAWrMfU2v3a7EbGp80794JPFLH1XMarBRTKl5pmJ0ZNW2J2oNa/earlXpr0GzMOEAwPPh71mn1DX1RDjySZJPH7BT+a29JzuWeroU3X8D5bA7xeV5I2fYHWr9mCZ2I7voDzLzdM4llTRPkWT8IOASJu9kAq47fdXnqWQaWbIA== 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=LN9dwNd6OihPg+ZrPmID4uIjxFNM2h9/QkvA8wi9P2Y=; b=Ta4kBGRBI0yLH03dsS3A2rxZl0Zx5DFyj2UlqdEU7FaSf6pMFrYp56K2v/8BGq5nkJbUrutloKqsY0/FOf1Xw3WmXLdr1A3hIhkvGB4/GB/F5ajdBnjSLJ+6qp8NYzy8xyolJvvQQih6Fd+a+fI4QZ7xDlx1no5KWHRunWmUb/IYC8EAk+4vehbj+iaVzrIaorAfs/qwEOnbYa+UltcnTR/B9475BWnAkb9L6PT4Uk95syHuIMVT9/9qAs67r0c+U0SYUCESRUPQmW3oDdqagY7gLYCAhGdkI+rqXlIeXk34P8rbeiCrJOXN8L6NuUksBanxQwTEAyQRSaG9u7p1IQ== 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=LN9dwNd6OihPg+ZrPmID4uIjxFNM2h9/QkvA8wi9P2Y=; b=gEeJ+GduASQUMrYVMwT7qR4fhrXNMq7Q6cM8/L6BB/BhgqVlkz+2XU1FnzCQdyvDvnCuXGDk2qRG2TjBqcxc16WukjRbSq0NxLv94vtaUEyqAZAzK8ppIJZHrrNqn97Qou5BTBHfC1vyA0/BOvjkxdlPHciVlKSUSXfTtPQa75Q= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by SA1PR10MB6640.namprd10.prod.outlook.com (2603:10b6:806:2b6::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.22; Fri, 7 Jun 2024 18:53:53 +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.7633.034; Fri, 7 Jun 2024 18:53:53 +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 v2 16/16] maple_tree: remove unneeded mas_wr_walk() in mas_store_prealloc() Date: Fri, 7 Jun 2024 11:52:57 -0700 Message-ID: <20240607185257.963768-17-sidhartha.kumar@oracle.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240607185257.963768-1-sidhartha.kumar@oracle.com> References: <20240607185257.963768-1-sidhartha.kumar@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR19CA0030.namprd19.prod.outlook.com (2603:10b6:208:178::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_|SA1PR10MB6640:EE_ X-MS-Office365-Filtering-Correlation-Id: ae91e1bb-95f5-4401-8aa3-08dc87232cf4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?AwAQwDl1kyQjosB6tEji8N9tcbDpK41RQEmP6S3JEmelccFpC8EH3mhQ5yLs?= =?us-ascii?Q?0Kbz4RjUvYJ5obfrvYVSdiq1wKQLrbdFQwDVL1kDFgE6nrkVNt/E6QHjAyEE?= =?us-ascii?Q?c+xluG6mn/GyaXccq/UtR/G7XC0g/nFHJoE65afRmuCwWEhkZ7+BCj6wSVQy?= =?us-ascii?Q?8glrdZ9+ubjLW6xJ3dgyzTOaA8aAkubfA3uUQR4mFBaCAcMnopGjKo2rCtYb?= =?us-ascii?Q?W0gLB+EurThDHN9BeIyTDAnRoxl3TyiB71/MgwdhPHoJbjOEDqaqbvrpi62c?= =?us-ascii?Q?9eiP9GizFF4qfDaVbIo2pxdUa9sOL2GhzIaUMougfS9TOpJX4caOGK+WVb9N?= =?us-ascii?Q?kdHIqiXmY33JDXOLjb3OkJXKc+JUVudNV1zCh1C4msS1QcOXraGfC+QVQ6Am?= =?us-ascii?Q?9eDrZUIL45DGdYuVDyNIalmA6YC7csoneNE1eDn98sYwOLhTRb1ygGUArIfg?= =?us-ascii?Q?y1zVCSKeYP1Y/uqPKKuoZI2cvzyWJzqclNNOZeT7j53e2zFTF9S1TjT9jO+j?= =?us-ascii?Q?SzN19GP3cYsxYAr/XAKK+rU0+YBPR123e1JiNHCakd6xvA3pKR6+Lb5JJsQj?= =?us-ascii?Q?pnfrUOZlTPs8zRQaLIzO8FQIKMUGtke0B9wLDzmQEPmMQaQiJTzpFviTcOLd?= =?us-ascii?Q?Tw2HGyfg4R/2D7g1K9/On0varCdjeEXYgSxzlxiOcD0/V1Y4GbDP4oak7OZ1?= =?us-ascii?Q?4B41TH68yFhF+OlGh9UfnKFi7cqKswjrv2KKna/HFmYz+Q4WVI7O7ZEqFQSR?= =?us-ascii?Q?/bbVY96fJfJXNYXBB88rjZtq1DcGP2IkORAg6eCRfOpszTMSynlEOXaJ0+ov?= =?us-ascii?Q?VAi5PqAgWnol1GsMVW+2QHazQ8EjuXQQNeGMh6pv8AUkS0asvLCmftYoPiCA?= =?us-ascii?Q?cMsTFVAtLZNggOakRaMW6EkImX/JEuNJ13V/jc2S81WKGPk4MaNKUEY8U8nR?= =?us-ascii?Q?MMygZDv6EiHQFnVmZ2/sV2nT7wtYe99M7SnONtvrIjKIjxptkOHb5xWmKuQQ?= =?us-ascii?Q?WTbkG6D0CvBA7B83F4Am6uvsv0xsXZp/y3yE8QkJK5xdC1ZERY47i9rY61VQ?= =?us-ascii?Q?ODNTkWh/7fzZYUcSxMiMcM3u0wOG4Mni8IfeQhq48Dm4AvfKplMUEA8hjES4?= =?us-ascii?Q?YqINX5fMUusmZnAvpHeommKxHHwV5r4htpcvBL1CYVF7b73JETWsntGVp8mz?= =?us-ascii?Q?ylFQ5/zjiaxrWUfu//5ByZ9WhW2f2pHUJKnd6kHfIyYLY5vse9M/JL5QiVzD?= =?us-ascii?Q?0PxL2dyoDXCA7bRtbimu6Om2cnJnj03e/duSY78RekxNqnGr4K6ekvNURVVo?= =?us-ascii?Q?MLY=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:(13230031)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?uMzg8Bs9fAUvmWxZy+/+yTvvLbGvyIcRwb+SNJhRGVpDRfCWc4RH1JpmlMXv?= =?us-ascii?Q?jfZ3K0L4ytKJ5Esi6YfvY5CwNly9OzEWo/k0X/zIBP7DklEHEFYC9cFXP9LX?= =?us-ascii?Q?gy162QXvREyb/EM/ZMhmnbljLt9aShIYocuhevenYknTjiE2bp7sEaKKGU4X?= =?us-ascii?Q?2QP6AFgP/Gs1vN1eivWdztuOSZoG+QMOwgu+pdNJb+zTPj+8v0CRRxWVaBId?= =?us-ascii?Q?O3RRoNyzaYiTERBgUQs5FiUyrFeakynwHSVbnbv2q5Y0x0iIhLnmr13MqxFt?= =?us-ascii?Q?JrljQwfCvlXDYmKQO2BDAlMiCoFatZaKAgpv6yNG/tIuOYR2VOBbheIffu4z?= =?us-ascii?Q?wwU5dhahV5RAZhA6yVwN6Iy3cGMcGj7o36mbbIapEPYXX7SVfiDJ/KKUZiQK?= =?us-ascii?Q?IBrxjH6IGa3LtsX4RbLomZ1zrq/p4CHi/GSvoChQsLoDZLNVqvLCHJdbXStS?= =?us-ascii?Q?gmNzjGqafGpaxlvWTlu3Q/lioBYMBIiyFGQs50hDCv4EIeh5tuORJ5aL+Zyr?= =?us-ascii?Q?kz+8/4PnSl2NR21YFMqdX9GtW17+SvnzJoQfNJJqQ2X96RnsuZ+vSkVXTAMH?= =?us-ascii?Q?F26dEGrJ4b/ZTB8X7MpehahU1QXKsOM8kAq/Dh5Xfo2v8n1m9r4NkzO6rBG1?= =?us-ascii?Q?awT0tQ/cCDBqdmhPpLblH57R2eIDRT4mn2axQUWog+a+TMzcOR69YXWUGCSl?= =?us-ascii?Q?fD8guzMaWrza3Tb0ROkYq+PoRPr7dwjzRWdDDs7lOvssefCoKoBRGSRyhKHg?= =?us-ascii?Q?46TCT2cRxBj1y1Ep0l56r02iNjwj0SVjAcoqiVJcCKsuexU5k58GPUZGGPEf?= =?us-ascii?Q?xuGR8VctTBlsF4D7+BWxGgKZpzdm9mfpcq5im+LxpCe+a9U9Qys8YkrY0Mvg?= =?us-ascii?Q?wjkS2KGjmi4crE78RIxPE9LUxOkdlmkQnYp3uT6FywA5TUBjFkyXAR77FXK+?= =?us-ascii?Q?kafuUsVreifISr0a9WvhlGQmj9VOEyzTfmUVDiKgm35gB1NKjYxokXOlCyz+?= =?us-ascii?Q?NpM4V9zv24PkLUrTXLdYqsrim07CRRTV0IM61WE6Go/j/fo3Ele6wedCpBLJ?= =?us-ascii?Q?pHqYXCK9/19Dw/F7omSYpDM3m3w0znN4WiMgN2NmL1vO3DBhupbUDoHdPH8k?= =?us-ascii?Q?9L2eandq/gLENFW9wkw8WGOzoFH7vF2KVynMstvLDvVphCwDJzpokoSW18kr?= =?us-ascii?Q?UlS58ozOouwddBtn2zHDsyYrXaDFxXgC0AOpMG/dbZ+Z+Osacfav6oJx0Ija?= =?us-ascii?Q?NxomgX7/Uf5zHtIxHNO2FfViFE0UDAzXITsvCRWP9G3leVsMfSZLLpPSVRDB?= =?us-ascii?Q?CGFj7G09Q/pkdhH6wJgHWl29TU547HLHSGhsKWNKGgoqP+n7A/JimI1tbW9c?= =?us-ascii?Q?BIoUQfQMz/gauoj9E/oVcOM16E1B/z79mvCOU9dxQYcMNPRC6HbhYRBq+svX?= =?us-ascii?Q?KdIvEEYaR199jCKZUOc0Y0e5vaLGGX37LkXCVav9cD+b7DQy8GZvGlV89ZRl?= =?us-ascii?Q?Y2ReXlPfB67ohq3AQFumu4GK3xOrs1o9R4VoyKPBl9xG6xVggptbUvuimwiV?= =?us-ascii?Q?VysRir8IhS0IvDxnvTk67YDgkXQngFkYNy32jcq6vyCwR3NzTJhB14MLTXy/?= =?us-ascii?Q?QXp8HYzU15TyF5sJli3hc4Y=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: eE4rMOqgQkci4XJDxvus5lubg/5lL5Iyc/Kspzdk7g5mmgNOyPqebYfgFgEb1XWz/N7+Xxg47UjVDDAY3rJY9daL+IXzj8OM4JObtuIv62ZSz339rwXNVusAwcQKkVxYUcxIefM7sWxnxMhT8O1fA1Pqzc9yANxqkYwhDlpSI/snZ6wGVMgOuPRPKHs+Kds1Ul1QtHIr0gogPegQ8u7QTp66Flsv/P8pM4vMhLedZEHxeQuOGkRRBt/+D6djhHTyCayh5Zm+CazbFJGktH5c0cf5CZ9zQyEEGOGY2DjTWQh6Wj45NVHDlq6WXOTNVh3djq1EtTRyrk9odxG6w7oh9VDM7OCfv18LpSAzE1UFvqNFlKcS/dNlUQvKO1ndzsMr6UVUxflM05n+ihhXhVtEqVKl4Lc92tq/QdFNIF16xVlfSqf1CSj7Yj5vRaz0pJupm5fjWI3wWh5sGNP5jcEvvy6YJEUz3lbVuIy++JEl5ClBWv6UzvCrqxMy7O7Xibll+9mhfkx+I1cY2hgzDFSYvK61kbVRBnl7uwqrwPh67KQEzB+uFzpWWecZPXb10PgFSDZJY9oKxneoo6q6VxEjc3uffKm6PzTU41LU8g0ANRo= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ae91e1bb-95f5-4401-8aa3-08dc87232cf4 X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2024 18:53:53.6289 (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: scQQd5c31gn9YE7Yu7RzM4yoHhmzDE/SYRbpvvPrdgydzWa+o3qEICotaKu0bkpskVO6ZF3Ltlqg3AcvvOedpiQ56cXPYZFEK2snG9aF3aU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR10MB6640 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-07_11,2024-06-06_02,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 adultscore=0 bulkscore=0 spamscore=0 malwarescore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2406070138 X-Proofpoint-GUID: lsOVYUOxyU8eo4HtaI5MiKA8cv9g5mab X-Proofpoint-ORIG-GUID: lsOVYUOxyU8eo4HtaI5MiKA8cv9g5mab 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 --- 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 3d334e7c19a5..5854f25a4ae5 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) @@ -5598,12 +5595,23 @@ 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)); mas_destroy(mas); + } EXPORT_SYMBOL_GPL(mas_store_prealloc); =20 --=20 2.45.2