From patchwork Fri Jul 14 19:55:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liam R. Howlett" X-Patchwork-Id: 13314193 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 46A1AC001B0 for ; Fri, 14 Jul 2023 19:56:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BEE8C8D0003; Fri, 14 Jul 2023 15:56:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B9E186B0075; Fri, 14 Jul 2023 15:56:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A18C38D0003; Fri, 14 Jul 2023 15:56:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 8FEBF6B0074 for ; Fri, 14 Jul 2023 15:56:38 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 68E1AA0395 for ; Fri, 14 Jul 2023 19:56:38 +0000 (UTC) X-FDA: 81011274876.17.AEE10FD Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf08.hostedemail.com (Postfix) with ESMTP id DF05416000A for ; Fri, 14 Jul 2023 19:56:33 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=OFrs5lDp; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=edwosIxv; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf08.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1689364594; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=t5gb/T3w432joNG/2gI1QE1Bp6jtHJ86EE12igifPPA=; b=bBKhWvheSkI3vsKhW14fCP7WuzzAMuUVUre3N7oO17YKXD5bXRp+ONcXqBXaPOhjisYuAi 61Ln0DMLcMQFf1jDA27aAQ2F+Uw6/I8VMAha/IUzNRkAF2dCHu4Amloivv17D22kxO5CrO FrGm7INHtLlFuujixbNfDd700Y4KYPk= ARC-Authentication-Results: i=2; imf08.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=OFrs5lDp; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=edwosIxv; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf08.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1689364594; a=rsa-sha256; cv=pass; b=8Vvw4UVjnSKsXkyUNq6YZs3lkN1Yk56dhdbOw8IBpqBHCELSn5ZUdoKtzKRrpTB6W8OEUs kL0TxBNabBLrXkMqYcqZRFrIgT1Rnt/BEZqygkaSu6lOy/MGP/hS0rnlhVYvmi9PKGeNlY pNwsHd8TkO4p+8mGVOgKCHrOYZRAO68= 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 36EDQexe029776; Fri, 14 Jul 2023 19:56:03 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=t5gb/T3w432joNG/2gI1QE1Bp6jtHJ86EE12igifPPA=; b=OFrs5lDp41gPQxhWpITgpfrYdOBC8G3kEnb3xBZKcEHiT0oTZL8ufwmD+XERCHnSskdT u9Ng8vr7Z817tAmNFr1D13w5AmH8mUzP2Cu301S5cbO1cSqNNC4tT99pt+eQLWFTWFDX tahm3mCiXBKJf6eGkPLL745OlUP9/A/gdzIR+r20xcJ5OO4W+CnT3y4Aft3LAAN/kvTt iN7tORAYNQYLsnMhci79gnuyfO9A2otlJk5ihKgIzCTOLNcDheftAeK4C+WhBBkoGnHZ 8obyxnso7bpT72SSXvPwFJEdsdUyVOTlKr2Wk6eSnzDxqs5B5pxMSOZbxCwsLMEd0C3T ZA== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3rtq9ta7w8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:03 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 36EJnhnQ013820; Fri, 14 Jul 2023 19:56:02 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2169.outbound.protection.outlook.com [104.47.56.169]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3rtpvs5c4v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:02 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=itDPUJ2qCPHK5ks9sCAwl6d9gimOdXDZ/m0POltgJefoEVws37ngTWHUfC/GNOUsyjkWW51f1rmym3U4261qro1XJu31pZ3ifT5XNudKkPAqL2gC9DJ37fBqZDI17uJlrMotlYyGgD7sLu0/xuQmrWnmEE8vmO+oYEHEZRfPvbLiscY5O0H2Ik2x6q3LEA64O2ndmxfrY57sP+04SKZkn6WXh826tsAg59aOmZQLtVn85DGF4hlCKGaEjY+eIMgFy/B5smKUgceKeX3TED3seYOZl5/M2L1Go5MqSubWTMtaXKieqcOzoI2tOvL7tVZ+RYTCkcJTnP2bP0EbmtBiwg== 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=t5gb/T3w432joNG/2gI1QE1Bp6jtHJ86EE12igifPPA=; b=lsEHITJNOoKVHPaaw+ig5odknVUGuEYUgZS+TXvVJsJh74J2jmos4v0BqLEUGSvl5zC64SKUHSPomGUe8e8lPAcRVS/dTNaVM28KIcmKVgdyhZ8ECwybrRSDz5TndfuiPKrFzYf+Srx9+LRFQ0lBMvNXJD3HOIorXoTgL+03zEZ3Nb8NEgWRVHadMMmPK6d4rPMyOgd7PoCnXEoT24huD7pzuUjUI2bfR1k5cXxiMgVD9G2/DFhvwr1GMz8WtI21T90HiJjS8TB2ZRaR/CplzL/nL0f9ABx/ZyBCWTznxOMBBfQsjiJohCOxSQq3khYyVJHXJ35Obee0qLX9hA7S+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=t5gb/T3w432joNG/2gI1QE1Bp6jtHJ86EE12igifPPA=; b=edwosIxv+KS6TWXltU5J1JQtk5DpqqSe7r9SK74YGI57bA/6xoSHYMR68MqncOjkwG2TukpW2AqO1A451MLbG0B2oMWWhghULRRnzAODe7h/2c+tlo4/CworvYrGZ0T2AQDUlq6QH1WSUGOr4153H8vXO8wAKI+Cx8am6OLS4ag= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by IA1PR10MB5922.namprd10.prod.outlook.com (2603:10b6:208:3d6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.27; Fri, 14 Jul 2023 19:55:59 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188%4]) with mapi id 15.20.6588.027; Fri, 14 Jul 2023 19:55:59 +0000 From: "Liam R. Howlett" To: Andrew Morton Cc: maple-tree@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Linus Torvalds , "Liam R. Howlett" , Oliver Sang Subject: [PATCH v2 1/4] mm/mmap: Clean up validate_mm() calls Date: Fri, 14 Jul 2023 15:55:48 -0400 Message-Id: <20230714195551.894800-2-Liam.Howlett@oracle.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230714195551.894800-1-Liam.Howlett@oracle.com> References: <20230714195551.894800-1-Liam.Howlett@oracle.com> X-ClientProxiedBy: BL0PR02CA0031.namprd02.prod.outlook.com (2603:10b6:207:3c::44) To SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR10MB3022:EE_|IA1PR10MB5922:EE_ X-MS-Office365-Filtering-Correlation-Id: b093ebc8-040b-4183-b662-08db84a45866 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kMx1/ZX/tHMUpMRzohSMRIgxklAjOi7eKNFoxT20aUdzYEpRmUMnGBVpqo7HMehSRUafbQVNkj6ZSWqBHFW2APzbfByt+HYuiVTS3PFIiuzYut5J7ynXw2ZUK8GcN+eG2zDnC2sDK3+0umzjGS9EVMShNluWsTtqNBw3XwVm8mxlfkt+2dB7GW55zFZeG5ez3Q3p0llHJqCZnV/2jxPuoVsimzp/2TmD9yCX31AuKhDCIus8V/ZEqsA8q1F1kWQoaWxhPkO8VOKI0r+NjNrCdG4ZIKUFu5iCTAgi45T3wqDHE4PuZB5gaJvpyTrMw6BiCDrcGirna9b4gkmo3GHF5DGYU/FVIEhufVGqa0YF2XuguKHhDRkvtOFyEs03LBpRoY2rFLusvC7DMr0lmMcHeATkMJ/JVtGJr+DG/rxEe3YmrXW5H3Od9jL8KlMQg1qWaMvGXOmYY2g2dZ6y5SW0uuo3rvJ4dmczrIaQ2+9ELtBTW8OAoV1LI/8yD08nvmoYPxWDhpj7I790Xjpw5T3BgGfm57nSYq3MOBVHF7rSPlss+QYr8N+/vid5JAnqTDLm X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR10MB3022.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(366004)(39860400002)(376002)(346002)(451199021)(83380400001)(2906002)(15650500001)(2616005)(6486002)(66476007)(66556008)(4326008)(6916009)(66946007)(316002)(6512007)(478600001)(1076003)(5660300002)(6666004)(54906003)(186003)(6506007)(41300700001)(26005)(8676002)(8936002)(86362001)(36756003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 14AKRdrBYrNKBpzYUHNrt4Sal3k2k1cPfHeVy4bcQGK37wxidessCqUPO/CC9iJS4iD4yaF2uRdsm4Oa+QlufyX3aq4vXWeuyQLZWHCZuHEd5Va3ia7KXXDGBsLju352tY+5pAYTx80QyB+DTM7vv5kl+vvvwcoYI/ALhBqV5LChkwywOQje7xbvyEJwO/3ZdRg2b1DxbxK1DlSCI7grsixKqLfIq/CzexStTWFklNmbt2sgzkazrAUwZqRuBI7zDTE5YtaJ8DYmIdEmQuJWs5GZv4q0cSFtxYc790OGLpHkHuCoXrfembFrBuXX1oh92Kz0q5UuWNDFE5vUYnjVNADnb9hGDLKOnPGGKBRsSvfGhxZvJ3CBkoGJjA/OmfbsmY66RBKYFlctyvAZUI2x6xEVL1Jy+R4BaJd8IfOJQN9Nlvl1dpeiP+W2bx4dYBTdNUuazJd9jz5/AeEFHN8KypuJxIENAnjmm+ZIhr5H3agoCi1IvxCGbRFxqsJadEcfjiXbX5SU8oBEjaYmlar5+jMPT+CFhL4U0cvj+UElW5Smqpe2qsCp7w6E9fEY1UDRMqtXaohz6GXUd9gUmQvFdkU5PSCmgVWDjSMeUyvTlBH1NT5EXVo4sruojjh18FPzp78MlsNPGY+lxKs+L4/zSY+AWji6vFv+poaOV2xngFOUCp90+VOolcNwlkdb+N9s0M7W6gnTqb6+/SV4nMSXGSrp0z4oPAo9uD/4eZYyMl/lN/SXCsQdBFkWRddiRDgKjiTBDg2CHIBQC8SerqiGW2rE+HYVoNgDAowuvvblNwgKvRt6qVKaXZSp470atQpzx3yMDl82YfytK9K/WRuqacZezU9AzBOZ49dk5/VTeAXGHsWJHLMTzXsUY1ya53AKkE4qQl7aRDR2DjRy4iqXE5jMMVfGZnM+ezkpTwXc9Sb7GCKHVa8XiLTxzSlyiK+UxaSbR4prv/eYHVb0gUFdTibkrDWObyIykohmi05wfBkWrBEi/vTkXzHeXhoSmYULXsd8q1IyW0MVW8u+4oQaogWQMMqBu94RsFch8SB1xQ0pwAMGwXEW1mMW3nNe48nHe9p+cigIX66+oa8LTdanfkH18nUruYiATFmXCCsfl5slM6PcfMUQwv7RNgk2VYFLjOdOrloeJoZ9wcs852uYfxvSq7MtfGJb+iJPxEw4DCuA8Zr68ht652pTVO2MjpOb7xk7UYUmX7c3Q9zcG34uocAEUp0/0YwWx00OztUhMZmuA7MToNSHkLK7x7woId3eH1ss75pNumtVaYrfI998emJ5hbdmYSWyZIvRYG/tI3q0IKqkUQbGxcHYwAHJT6wSMNlhjvxATAtEw613e6Lk8w6OV13ujUfB6Fl/q1aJBYJydvG/73KwBei9UMRPez2v4kubP++gYSRGmJtyxxa1WNOVZIDm7uCKHkGO8WggpRWiQc4mrmxmtOPbPKMkcx1GypL/3rd2TvB72u+kXguMcqZ2qbucPm9ns/kNh7T9HOmC9ODHeyEhEe9a4V5kgyLLhSH8fZjvZGGkmFBvuDrimbSNZBCU/cUfsH79/TIb5URcU5lnefBoBzuIBART8lz7CRHmpywxAjOMVtNR/RKQug== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: fP0W9FQrhAuPXGTP1eNjXq+TYGaLW5nZtxJ3zhhtCa2XRx+lrjuRDEFUsPxNVLlrwfTAFVtYlMEW4IdCjMZpAH6OMdnLsiiN4JEGKWtW/kkjzToZYAnV03y3hSViqp+leWdk6I6kr/q7PUa9Jhl3gLK+724AdoxX8s7HLogi2VNDU48LK3b9lSG1DeZDBymYo/yvZ/2TxfB8nqDFHX7Fgfil4s2AQvm+tObf5lLhX+F2P6M/yLXf2rVzOLInmXESYzhGeDKteEzTDSL+1geQHx64v168GFS8sT78hiJwVS52zFTJiDRvsIhDIyOFfGSPa/0giiRUG5eNsuoyOPPVDGRsfp+WHluhNvGP/DmX1RoFM0KWmqs0gFexIk8jXGkxmVMnfZVz7RDyjZlM7uERyRJfj1C1scXaK5P1YM4H5Qd9WPM8NdCQHYp+ZrBXyzxYIK0devVchxIFMCtxGPQ78PT0qd7rOzoVkfRyAZaZ3QVTM8E0XgAx4Dyl9GZt1hXybHYtoUsrWf4cR+Ol+lSkz9FhQgUEYbHW7vwTw7hoRuhJOlXlPetCTscxw4yLSvt895bS7rIKUb7scMFzy0lvUTl+8zHgK66Otv6MfXU4zUeaBc7llAao59VU9QrDrBiJr78XmFh9hGdi47kZjL/i5K/L5p3djOY2/wv9MWSo/Glkyd2b75gP0+m7I6dpkWyDpDe+uuNTrJPaBYYT4f2DNvD/reZWItsP7xAMQ410S+lJNNcV5EoBzDr9NdkXBl35InqusIZvzBGCRsjxm14njEE2B2y8Ax7kaJq26Bma73+t7mnqpMJ8T0srGmwDJil98zLnNQRgPL6irO8Uu+akqGXgl3m2ESmcTVXvm4ZqB27kDDAnOZpCiSsVe2hICRhLYUegvVFjkIB4mjPOPwhkfjq4p953Yy81QsFKnyu75dU= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b093ebc8-040b-4183-b662-08db84a45866 X-MS-Exchange-CrossTenant-AuthSource: SN6PR10MB3022.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jul 2023 19:55:59.7888 (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: w+W7m2LgoP+7z8wpEhe1YFDTgyMNPdRYtVM8CdD7hyhnoxrqCafQtMwBHIrItdKM6TwAudQfIfSmWc+lMtUXBA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB5922 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-07-14_10,2023-07-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=0 malwarescore=0 mlxlogscore=999 phishscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2306200000 definitions=main-2307140182 X-Proofpoint-ORIG-GUID: MZT5doZm4xE9tiSDqPsZem_KvUM6ya-7 X-Proofpoint-GUID: MZT5doZm4xE9tiSDqPsZem_KvUM6ya-7 X-Rspamd-Queue-Id: DF05416000A X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: n44pjbqk84n4nxifie586roxqwy4o7hj X-HE-Tag: 1689364593-551936 X-HE-Meta: U2FsdGVkX19TIpxTQTsxLlv8C6HO/x9bsiPOiYdp0J4nlhTHnJdJfVvkDeJLBMmB0qhQ6aWIa7JtvubFE0k61kEy6c+UMgoLaHV6ILe8GAepQCrJ1IhbOX++r8ZudqCZ/AHGH9PrpLupgRba1Ovh06oPN/r+xbC/OK5NlI8g2L6GqcbYqwuuby61AYK3MvsmJ3MW4tDGVY04qBIdxeBz64r2pLzSYadXYUEft+gjCnsclNfgtn9jxyyvh5STmKBwnRUXkTy/HzyjTKUKzbetJ3+ZbvH4EYrrwQOflsqvxIq1KWRhty/MA5oDkezxz7wXLojupSsU/SM6ugwevmd0wMZhHqO2dPuWSgADLv9W7Y1MqBIE8FTq7Bo/MFMfsnouw4TIUcsjjrs4z9gnzWZLa/aLYuzEIxBEO4DG6SH0ulDhE5IZQG9rcKkH1pkbTntPheQNJY2mRrko9TwxQ6+S8bPsdOV8cMMQGqLB5s82AdnlLgZr209ndcsWywpEeSeRqYU9ho/CxsgceVtMeQCMzQR2L2AqolKmlDmbXibKNU8UdO1CHve/IjrR7p8l3MD2Vuh93+R80I0CMMVyWhBZPrPJeyBDvqGNcM65FiE+WGQz74DZhfliM9E2U9LJM+EH+tXEVF1Dh9SzAxrHWbmAVr2hHFzkJ/8XRHl/FK+4RLyj0yy7xR0UYKS9y07w2smUKwI+Dnuo36RE8CKAVncX+FsfQdSeUrYiEfs21uCGGG3Lz8IBWtSuh34xaopYBY+nVpriJ5PnJfLWP1wCoWeYd/11XFyr/TbE10ng+XdRDLFNRBQO7fSyHnj4o8FdNhNL4yYLiX+kQBrp4eOUZPegPcypqjW0Jp47TGOyE/FpWDAXaWdR0bdvjSEYOJW9t+3sx3sx4z7GHxj6Yapj1gcpn7bX8ApBAlBNox8zJuob5xQQRJbRpBY+8qOff3UNoCUPI2RcvhCjw4c/dydOf8x nPGJdjly KANgs+0CO1arWHCKew6kuBJhzZFF4fmzjMJhdNHq64fJmzm2zeehI358eHvAAyJyjSoDNDf9S36P93z6AAI4Gf5+/UaBUzm+sfwurFSd+kWKIOmRCOXmEDlv8V1zibLkKDYuaGoPE+lhGZ29/xkkFGmy31NsrEZcLhkzC5MjivLDwZame+24VAbz2nJ3mxQFW/NV7Os89V/VSeVZWZCmWsxqhaC4zwjmIcRzOd6eXq9ROkli1iXb5l/9oh3UuetdweI6DmZXGMEgXnh65gnnJUuKcogmm7SgbkQh87+5PmNHdXXXBUK8+Kvxv8HoNssjvICYhWj/Gok+2vNJYzspKGjOsT7FCgRjQ2SHbyiTJjI8ddXRrIA7vwROOERtSiBSjdpM+iFhD683lhu4YHM5/cAUn2LHcjrvIhd0ZLFP4imyvkKpsa7UqlJfm5fgB17blFBcrm4vG3QmMe7XOO/0JZmfFNUTSWwVCZRmQ2vZfnjkYdM+a+yZkKJTVx49+yTSwzqLL X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: validate_mm() calls are too spread out and duplicated in numerous locations. Also, now that the stack write is done under the write lock, it is not necessary to validate the mm prior to write operations. Add a validate_mm() to the stack expansions, and to vma_complete() so that numerous others may be dropped. Note that vma_link() (and also insert_vm_struct() by call path) already call validate_mm(). vma_merge() also had an unnecessary call to vma_iter_free() since the logic change to abort earlier if no merging is necessary. Drop extra validate_mm() calls at the start of functions and error paths which won't write to the tree. Relocate the validate_mm() call in the do_brk_flags() to avoid re-running the same test when vma_complete() is used. The call within the error path of mmap_region() is left intentionally because of the complexity of the function and the potential of drivers modifying the tree. Cc: Linus Torvalds Cc: Oliver Sang Signed-off-by: Liam R. Howlett --- mm/mmap.c | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/mm/mmap.c b/mm/mmap.c index ce31aec82e82..7b70379a8b3e 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -594,6 +594,7 @@ static inline void vma_complete(struct vma_prepare *vp, } if (vp->insert && vp->file) uprobe_mmap(vp->insert); + validate_mm(mm); } /* @@ -675,7 +676,6 @@ int vma_expand(struct vma_iterator *vmi, struct vm_area_struct *vma, vma_iter_store(vmi, vma); vma_complete(&vp, vmi, vma->vm_mm); - validate_mm(vma->vm_mm); return 0; nomem: @@ -715,7 +715,6 @@ int vma_shrink(struct vma_iterator *vmi, struct vm_area_struct *vma, vma->vm_end = end; vma->vm_pgoff = pgoff; vma_complete(&vp, vmi, vma->vm_mm); - validate_mm(vma->vm_mm); return 0; } @@ -888,7 +887,6 @@ struct vm_area_struct *vma_merge(struct vma_iterator *vmi, struct mm_struct *mm, pgoff_t pglen = (end - addr) >> PAGE_SHIFT; long adj_start = 0; - validate_mm(mm); /* * We later require that vma->vm_flags == vm_flags, * so this tests vma->vm_flags & VM_SPECIAL, too. @@ -1015,10 +1013,7 @@ struct vm_area_struct *vma_merge(struct vma_iterator *vmi, struct mm_struct *mm, } vma_complete(&vp, vmi, mm); - vma_iter_free(vmi); - validate_mm(mm); khugepaged_enter_vma(res, vm_flags); - return res; } @@ -1193,7 +1188,6 @@ unsigned long do_mmap(struct file *file, unsigned long addr, vm_flags_t vm_flags; int pkey = 0; - validate_mm(mm); *populate = 0; if (!len) @@ -2022,6 +2016,7 @@ static int expand_upwards(struct vm_area_struct *vma, unsigned long address) anon_vma_unlock_write(vma->anon_vma); khugepaged_enter_vma(vma, vma->vm_flags); mas_destroy(&mas); + validate_mm(mm); return error; } #endif /* CONFIG_STACK_GROWSUP || CONFIG_IA64 */ @@ -2112,6 +2107,7 @@ int expand_downwards(struct vm_area_struct *vma, unsigned long address) anon_vma_unlock_write(vma->anon_vma); khugepaged_enter_vma(vma, vma->vm_flags); mas_destroy(&mas); + validate_mm(mm); return error; } @@ -2289,7 +2285,6 @@ static inline void remove_mt(struct mm_struct *mm, struct ma_state *mas) remove_vma(vma, false); } vm_unacct_memory(nr_accounted); - validate_mm(mm); } /* @@ -2326,8 +2321,6 @@ int __split_vma(struct vma_iterator *vmi, struct vm_area_struct *vma, struct vm_area_struct *new; int err; - validate_mm(vma->vm_mm); - WARN_ON(vma->vm_start >= addr); WARN_ON(vma->vm_end <= addr); @@ -2384,7 +2377,6 @@ int __split_vma(struct vma_iterator *vmi, struct vm_area_struct *vma, /* Success. */ if (new_below) vma_next(vmi); - validate_mm(vma->vm_mm); return 0; out_free_mpol: @@ -2393,7 +2385,6 @@ int __split_vma(struct vma_iterator *vmi, struct vm_area_struct *vma, vma_iter_free(vmi); out_free_vma: vm_area_free(new); - validate_mm(vma->vm_mm); return err; } @@ -3044,7 +3035,6 @@ static int do_brk_flags(struct vma_iterator *vmi, struct vm_area_struct *vma, struct mm_struct *mm = current->mm; struct vma_prepare vp; - validate_mm(mm); /* * Check against address space limits by the changed size * Note: This happens *after* clearing old mappings in some code paths. @@ -3096,6 +3086,7 @@ static int do_brk_flags(struct vma_iterator *vmi, struct vm_area_struct *vma, goto mas_store_fail; mm->map_count++; + validate_mm(mm); ksm_add_vma(vma); out: perf_event_mmap(vma); @@ -3104,7 +3095,6 @@ static int do_brk_flags(struct vma_iterator *vmi, struct vm_area_struct *vma, if (flags & VM_LOCKED) mm->locked_vm += (len >> PAGE_SHIFT); vm_flags_set(vma, VM_SOFTDIRTY); - validate_mm(mm); return 0; mas_store_fail: @@ -3285,7 +3275,6 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap, bool faulted_in_anon_vma = true; VMA_ITERATOR(vmi, mm, addr); - validate_mm(mm); /* * If anonymous vma has not yet been faulted, update new pgoff * to match new location, to increase its chance of merging. @@ -3344,7 +3333,6 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap, goto out_vma_link; *need_rmap_locks = false; } - validate_mm(mm); return new_vma; out_vma_link: @@ -3360,7 +3348,6 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap, out_free_vma: vm_area_free(new_vma); out: - validate_mm(mm); return NULL; } @@ -3497,7 +3484,6 @@ static struct vm_area_struct *__install_special_mapping( int ret; struct vm_area_struct *vma; - validate_mm(mm); vma = vm_area_alloc(mm); if (unlikely(vma == NULL)) return ERR_PTR(-ENOMEM); @@ -3520,12 +3506,10 @@ static struct vm_area_struct *__install_special_mapping( perf_event_mmap(vma); - validate_mm(mm); return vma; out: vm_area_free(vma); - validate_mm(mm); return ERR_PTR(ret); } From patchwork Fri Jul 14 19:55:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liam R. Howlett" X-Patchwork-Id: 13314190 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id BF7BFEB64DC for ; Fri, 14 Jul 2023 19:56:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1B51D6B0072; Fri, 14 Jul 2023 15:56:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 166B06B0074; Fri, 14 Jul 2023 15:56:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id ED38B6B0075; Fri, 14 Jul 2023 15:56:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id DF0C56B0072 for ; Fri, 14 Jul 2023 15:56:10 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id A5F39120363 for ; Fri, 14 Jul 2023 19:56:10 +0000 (UTC) X-FDA: 81011273700.20.20AE509 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf18.hostedemail.com (Postfix) with ESMTP id 3EF3C1C001E for ; Fri, 14 Jul 2023 19:56:06 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=PLyIAvXY; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=XDWu6ydK; dmarc=pass (policy=none) header.from=oracle.com; spf=pass (imf18.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1689364566; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=HW0GS/XWDsRWyS4uR8KoW+GN3DBOkGA3uX40nMNHdnU=; b=Zq4533LJIFXfYRy5kqm6UDwgTDe8o8i4+FBZKZ37EtUVCafTjivUsX7Fhec9tupqQxjerA kkJGiwemDGJBftzxoZGdZ7jjb8jh6oID5h2I/+6bkXW41QTexinMdBgCP8HtzYbDAuFNjM +rLoedV54Vjd99xj78bYoU33M281hGs= ARC-Authentication-Results: i=2; imf18.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=PLyIAvXY; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=XDWu6ydK; dmarc=pass (policy=none) header.from=oracle.com; spf=pass (imf18.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1689364566; a=rsa-sha256; cv=pass; b=6cIQ+KzrB77ObaohCkQvBnfAecYTZlowQCHbT1zTe5GBNtaskUx5JzyMFk+RdLHvG2GdJq VB2hbT1V1r05bGLRVjaUbx2a0Mgccfa8OxsjVfyu/QLq7IXzYXCwxkXAPdeT/Lk35lFbd5 OHqYXT80psLGxcEjvh0p+p8jjA9QUwY= 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 36EDQUwj013553; Fri, 14 Jul 2023 19:56:05 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=HW0GS/XWDsRWyS4uR8KoW+GN3DBOkGA3uX40nMNHdnU=; b=PLyIAvXYE/VPCrvrVp3Gir6Y13dyWLPegMKYAgDrlbGVVoi90U7v1hc09qP/375BNxaX xtTMxETF4C3E63SORkYPMD/rHnXIrJaGZHq5FLmDWeOijvyImNc0v3tNj0S6IJUdRnVu /MwcTM/m0jWL6x14bt4tDBXmiD0Csi9sOAJCNXBzppS0SoflyFNGcQDK2we4EkkYjDUF XeJG9dhnzZekXJlfm6JX5XOpnWIkp5gu6Fenkozb8lhB6aq2/a/bmNVJXevO6M/AX2Tw kabulkHaTKZ3heOVmnkA3m7xUkhJ32RtoyneZMgEPlcjn3CdSh8n1q3TQhlFdhL1e+H6 rg== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3rtqgr25t0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:05 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 36EHxNTJ013788; Fri, 14 Jul 2023 19:56:04 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2168.outbound.protection.outlook.com [104.47.56.168]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3rtpvs5c64-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VoJTP9QFuKEB/tyj99lCzXJGH66GzpHQTL6gNyJKuJK9koBEZhmkpLiLEzFftPTjF8DokiY/HNURNYLg3p7XAsWU+0gQ9Ka3ZN3JPY1yLFueqEsOrl/6sAhpr1s2gXfqF1d0DAJdrX2ykiT7BhPte681IKUzR62d3GJBnlEJhObK4CkVL5D1SrUsSUMGzGFxqGvx+ITooXol6/OhjriztvMErmI71SIKCFgxWk0eht/sZpWMyfwtvVurCnF9kQKE/sbrih+xB+ZQN54xuJtHTBLLjCyoEAJ050pXgkDoUxCiezCgNAxEGaAfJ3E+jKnWye9ozGN0nbT8Z/DScr0jYA== 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=HW0GS/XWDsRWyS4uR8KoW+GN3DBOkGA3uX40nMNHdnU=; b=i/Duo8g81uxTCOEie1xBWCVCEwFydfhAOeYa4K/S6KwVZ1TjbqoZ74OSexKDzqp8L/7xy7jxthTnBoy94JtoacnJr+/AAbHevZ53cVBFNHn9LrIKs621Nb8Tw/VxJQwLS1CX/t9IXlM7TBKbKQtdQZ8r56Q4xLNUBJOZoxe6+IIH0nMpO+bSfV7A7dIuDbmAqxEX4ctqroq7U3ocIlTIkDVM52ojVtxguk53sPWd3auzAQt2FV7eHNqN9lQsBzUvJXE61TMfJELy7hKaura95yaV+YwAhRm7r4wDWpa8+JX9w/VDURswUt2H2qOT6L6cTouBmG88bnAHH1aAuaMxPw== 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=HW0GS/XWDsRWyS4uR8KoW+GN3DBOkGA3uX40nMNHdnU=; b=XDWu6ydK8lDl550QyP8PlbNSxxVOjdHszdz+nYvYVpRzms9KWVk4Tj6+S1On6sQ9Zd8gD9jTsVO8eNmOVB6dL+SZy4MSCmMXotpJ9dqy5r8zhxsB8DJ9d19GlJpZzV1WkZkEe9AbRXIas6k4S2biL/uqmM47MSBWKe7KXKvaEFE= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by IA1PR10MB5922.namprd10.prod.outlook.com (2603:10b6:208:3d6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.27; Fri, 14 Jul 2023 19:56:01 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188%4]) with mapi id 15.20.6588.027; Fri, 14 Jul 2023 19:56:01 +0000 From: "Liam R. Howlett" To: Andrew Morton Cc: maple-tree@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Linus Torvalds , "Liam R. Howlett" Subject: [PATCH v2 2/4] maple_tree: Relax lockdep checks for on-stack trees Date: Fri, 14 Jul 2023 15:55:49 -0400 Message-Id: <20230714195551.894800-3-Liam.Howlett@oracle.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230714195551.894800-1-Liam.Howlett@oracle.com> References: <20230714195551.894800-1-Liam.Howlett@oracle.com> X-ClientProxiedBy: MN2PR08CA0028.namprd08.prod.outlook.com (2603:10b6:208:239::33) To SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR10MB3022:EE_|IA1PR10MB5922:EE_ X-MS-Office365-Filtering-Correlation-Id: 7288b6ea-594f-4422-c9a0-08db84a459a3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Zp08PH3E/VWJ3D4K5zl84Db0N4Mv67jKFsZ/EXiwoQ8iSASQnqq2sKANGyQe1hPyE6OeHlNPkyoctLChiNPRk6Ui5ZsuiRhw7BkBkY2KO33geweWGTgOVU6pnwIAdCyMt+FCyo7Ow6InfnoSoiYzaUAAa6feA+/pGY4kcqoutYkOotObdclxqiUFDFUMMzVl5vGBUX+VtZ1ef1XFLHtNCDG5NVYJMYiwzOdN5XDD8TqUbFdFZYFPYYmR7hYSFjjJenptbSu92szHxuHQW0r2n2hYCCgEi0b4roWOQqDTS9qCkdFI6GUg8+fmjkTLS/sfNrvXnv6O9wMbGipC06DlduSs1omCmC27VlIRhgSHDNopQqDCunW5ymfb6I05AqxlGWqTfNKgCNABBfcmCaSTtPNZ0A7hL2oc/KHg/w2whaVLf4IBCBlQi6NxMFeKXXQS5yd0MFlFsFkW/G6IyegQ6GMA2PSMS2Rii5AYwo9qRkx0wnI6q0YJWSzDhBaBI3vjjDj3VYhI4oC1D+tIqNIfGKuzuVVAf4ltj/NgFpyZkpLRR4f0FN+hnyJZHn5JLFZb X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR10MB3022.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(366004)(39860400002)(376002)(346002)(451199021)(83380400001)(2906002)(4744005)(2616005)(6486002)(66476007)(66556008)(4326008)(6916009)(66946007)(316002)(6512007)(478600001)(1076003)(5660300002)(6666004)(54906003)(186003)(6506007)(41300700001)(26005)(107886003)(8676002)(8936002)(86362001)(36756003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: PVhyNtbmNTXhi+zuxtXn5YgPMWpnBibtKjr1U6M9ICmhoDPsv2RIt6cqh2k3Piv0SHhpoTjPilACC6MAQ0+LnoagACPTpExL86geNepMFi7FuYAeH6xRtH600Z5yTXTF7/sKpa6DktsBFFqA0D86CDEb/1w/iOXX4FnJIbPxIZTEL8EGhfwDZ4TmRtPJpdf7NXqeMJE3MoZTaZQAB342Pgvc+X60whSo3jrudF7iLxzrInmaBcHvJ27oEYTl8wB8aj2wuf0yu83bHUDvb3GpHRxRTOKARZsT1HIBdmpre2d4hZ7udspoN5su/DsrRYLrrOzzX+cRuyGdZ/GrKL3PNUygkpuCkR6rGdk8gyQyJiWoWsdoQLMZ+GtNKWR9Z2+DxRDmbZptq4bQhak4e57ThRcIE3J8K7uBp9L60yuYo61u98fBo4W1StjWoWn9GhwyF5ycD9SCME3I9+igOTXLYs5mwIM0gh6fHxAW3/4BDnEx/soFXECuQOATcGIc8QTEbJ7Gns8eW1557oNxxqGNPqoXNoqPX1hxNMlXPAaUH3rMk+hvqiNt8u9q4VTAx/Lg7pbPRQSsefTkvzde54Y3cALkpD2cMZ64wuhUOazb1diLn8LEM9I/3wj71YgaQuqHy57ehCNHGXUYiCWx48nwMKPcSeGxX10v0zfL2Ky8wNBcusx+3mDdDodjf2BQuInCpIxEf89yWXjBJahoh/zX76VfkhqEFS4RZzFMgTfuEewUJy/jv+3BYRQ3yTVTFwi3hpCmwlPjsKSyzcHKQRm0qQu1BxKg90y6zWYDaj9H6G/DN4u72lI37Z4bMqAqfVGvQ3/Nu5mxQSuEUN1pmxdwaOX8O9F3Nn8LEewDOBA7WQpGKQKh26qKjA/t5pDIQNbb/fUE6SRinR0y+mx1rEjRT7t0A8ua672yKvtKR+ermyFPpnWzvRW3iloRbfiDeNBMdEENsc0/RGGWPomcHG3Da6gySeTY4xvBU37Cz/hJSJ0klAoEDJiAH1GnW5BZNpqObAlkJYKnCOli3tf6oF8JbpZTRTwkAPBhbsVAH+N/CBO4iiBoi9A0tY08P7KH1omEYq9WxBTaP3U5vrwqMYsu1/q0ffChx2B4GArGH+SNs/KJkJzR+bJ0vbPg9UKRotbadBY7zVhz5JWTcQ02oRk20vlYkZt+fJMrmgIzaMhVw3RrxlobI74+nxmTmwo09fOYYGEJogj/rxMCm4djvZTb8TqXRgBWJD3c7PvU/B3s1mOmIeawoxsfgRS9ppc8hwy3IgDUVbRfKBNJJ0QeEPZpfJgoVMBixK0cXU9tl9rQdwdAKrLAPO3Mecpz1+rYrwwvqGG36BmZzjFevG6Hr+F06xfu/7BZLISuYlCHfSaWYFSrJyIfsAVyonQsKzix8kf2e7OWGnXoYUgcUjIHeWZdrgpzfCcRjqm8lv6FGzrxlHuiJG5AIEBBgUtWoX66iv9d2/40XsJD6aj2NlKkVb74Dg5yfCLRIOyICQHKmHfmy1I4PyrtJCGWnF3KtbBGvYce5kQtqbzNC9m4BvCa4KMCjx4XJsHHIrwv0ypvnERaXcQdME1NDe0/JLwxcX07ffd2V+S/CQCR/DpYXl8MiarJ1w== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: bo1EX5UxdoKYcdIvxqywcOt5lFJqvD7tl7Zm6Ofguffw3wSVHd4O0NGo+PWprgCcB8lDCYwu41BQn97sKVRu8PYBRlweabMhfRS9foeqBEXSxlYLVE6XZmjLburuMvAV/1jvta1dSadO91faDxsECSDu7bi/BW/KzhkUyjV6Tdr9DBGS2iQNJSwQz0A1bjfh/Om6dsZ0o/XSJhDKmmVNVDSXjJbtabFJOarb+7sifSSdnXGODQGuzlL3nPDX4rdfa+oOU0f4GiZknPoJuwD9fx5wEuvhbLNzX5rL+GAmI/+fRgiAAECKWzCwphRq7+7PsCcbrdUfIgYRNGgtSshRoBFCZqAER5V3sG9CyEwf/GN3UR4s1zWV9woB4KAkKM5/OON+/45piq+8KLDlSdCxccA457lG/jNIkCJqk7sto7HCgHUR9CwDO4gC8tA5xg7AN511XcEvvTtuwAXputgKwr1eRKUZBuxIxyeHDGzHrRRj4I2LxFm0RJ/bXG0xo5fJtlpxyWDw0WLNOKYNAbkvlJYFNnZSWtL2hGGbIlfeb/xPfxnHHBMjj07FPza4Yc7x6ifrr6KJUPQaIT8cC+rzpcSkW870TgpzSrl518UpwAOOIwuQp0wVpC2i9yuaW9bUssSpfeVvJmo3MPV1c7qgdifla+c7Ohkaz6X/nSMvWhUFrLrN1DRpbEF7flKYYGWY4QvSnIo5jpwtqci61aXvhzJR7X8S+UBSQlfMEvGZLRZx/wkFZIKIzXLJ8f1SGoAbieaibXg8yXOPr1jbfXDT2YdHudC4Ercs3cDWLbjRRGVwbt0ooUeNPVqM3ViFWuuovfMV3wEcA3q2zZn9oWY3cXdLsaO5Ka0gtDj870Ziqt8Eus5+VXH9nKGC2INeMVFpcvgI0fKAaBPc507H7wMSgA== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7288b6ea-594f-4422-c9a0-08db84a459a3 X-MS-Exchange-CrossTenant-AuthSource: SN6PR10MB3022.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jul 2023 19:56:01.7576 (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: ud0BJkLYuTVz1W5EUjP2QKRC1hJ+QgZh99coeVl7GXVZa+2sEYCD0OZSje4TWPhMljbsvrkj34J/T2N9ylAQhg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB5922 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-07-14_10,2023-07-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=0 malwarescore=0 mlxlogscore=999 phishscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2306200000 definitions=main-2307140182 X-Proofpoint-ORIG-GUID: JWLOOZKZr3Ha4mt4m-O7W6o3L6uLhEWx X-Proofpoint-GUID: JWLOOZKZr3Ha4mt4m-O7W6o3L6uLhEWx X-Rspamd-Queue-Id: 3EF3C1C001E X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: eczwgnx4q53usxsp1xiz46su4pc8daw6 X-HE-Tag: 1689364566-65922 X-HE-Meta: U2FsdGVkX1+YfcFTCvpEch20QREwrKIW/oFMSHtztNJ+HerFigHpNJgEenyClktSxiqG3Kk4UVSOdlJ8AEyxeP5vqXr+EaXQBcR7x+Zpj9cLAljJYDEmIVpvQ7SOlNP0fqi0d+Y9xg2P1iry90lu0zYoSWP61Grg6bri6UcRgJ6RK+gZKg3bHOq4G/m+hhiDItfBTjfgdujoTmFlKvQLyL2Tle7ZSF0ekp5VKXu3KEg6yo3FAx0a+NhXXEB9ttX3TW9OE6HhbLZOG3CQE/BAf77KFYIclJljlvC7t9ZTfOPnhfnuYWyITzj7ElBLgqi38Q7REJDLlz71N3cjxDpzlrYkzzKJwCc0DVxWkCnVY/7IbZFx7DTFRJXJXI5uyVxmnJqFWfwVVmNxk5zO1Tn4wnSs2b8T8CMX5w4WhIAn0luuX/qSVl9SJs61pLHXtLuZcmdTW19Ev3Ov5FAfHM2zBs3jLObj4rLQB1P/s3Vi5m1/AjL/I8BJV+erXeYOjI80QIIFn2Czr7DsgPROrHAWzeLl3jiTo9Ls0vx6W0ZCk56yclyBIdZrFGSXKa+CkaAiS2wsFIeMo6Kbj4O5nI7Ot0H/ko96iFqwyWg2ZfixjsADFgB7DsssRJn57XwweH8kdd5KR3voiBTFjPNF898G20Pn2DilYx+qhDjWA9eB7hO8Lv3jo5Wxh66ch0+hXaLJ2tfZUJrruzmc5B3drfK5wch22AHwnu3f4pzVksqYKjiIXjMfnbvOp2dAYsBj6Q8oXQ1MhubqxsODAiDsoHQ/MMrUkRo8JIYveJhU611SPDpCfgZUX9SXydqvdDXtbP+OtWxbcLChKapKqG3ltIAIY/sSiBiEmNDe7lLJV50PWq4/YZbxmfU8fMwKHF4gn8htIrdUQz87v4bNteowCSMRcjEQZRSi+0AwbNcVcckIQya7w7/WVxGx38Quyi/+aCYA3qSuq14NERwwd2HFxg5 +WDZWoRD IrLkjguZaDv4+B8/m+1BDw4r4Mlj3F/NoAoqD3fF7WpJmhVk1EmNb4EjgHCji1scQliheA6vDtrTXOcIqcYNe5wFScTaAuA4v9GDPq/fLCqpSiN+EkhOCR2BGsK79gkyiml1r0ecWLFGH4Ji8SI95buIagxE2SZhOAlQ/m2elLPFd+I45zEkALLU5YLmEVIlmfaU+uYu6j9r+4jcRUNUSdxnv2nv3cU5akVAH+4i5maz/4a9+6M6RngTmri5LJ5Wbqz2copsk6oelDoTy6kQrUvn5OnCaUWbnFXy4Ngd0IQYVvP0o/jBMINg43+vNnBRxSXwCRN7CUtC8UuoQvnR36+PdeE4dgsRgMTJyR/KFfIaBqxhSzMOFMIDsPBoJETiBjZMivz25Pen5JQVXkQ5FQo/r0CX8sr/tzzJxFmMivEufYUYbHJ8dlGyLYxIwjZ3S/tcC3WARfvHsjPhosnK0CpLemXhwoEGRla5N X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: To support early release of the maple tree locks, do not lockdep check the lock if it is set to NULL. This is intended for the special case on-stack use of tracking entries and not for general use. Cc: Linus Torvalds Signed-off-by: Liam R. Howlett --- include/linux/maple_tree.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/include/linux/maple_tree.h b/include/linux/maple_tree.h index 7769270b85e8..6618c1512886 100644 --- a/include/linux/maple_tree.h +++ b/include/linux/maple_tree.h @@ -182,7 +182,9 @@ enum maple_type { #ifdef CONFIG_LOCKDEP typedef struct lockdep_map *lockdep_map_p; -#define mt_lock_is_held(mt) lock_is_held(mt->ma_external_lock) +#define mt_lock_is_held(mt) \ + (!(mt)->ma_external_lock || lock_is_held((mt)->ma_external_lock)) + #define mt_set_external_lock(mt, lock) \ (mt)->ma_external_lock = &(lock)->dep_map #else From patchwork Fri Jul 14 19:55:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liam R. Howlett" X-Patchwork-Id: 13314191 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8B54CC0015E for ; Fri, 14 Jul 2023 19:56:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B543E8D0001; Fri, 14 Jul 2023 15:56:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AB5366B0075; Fri, 14 Jul 2023 15:56:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8DFA18D0001; Fri, 14 Jul 2023 15:56:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 7B1DD6B0074 for ; Fri, 14 Jul 2023 15:56:11 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 460FBC037B for ; Fri, 14 Jul 2023 19:56:11 +0000 (UTC) X-FDA: 81011273742.20.9D10532 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf10.hostedemail.com (Postfix) with ESMTP id E010DC001E for ; Fri, 14 Jul 2023 19:56:07 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=fYXMWdA+; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=z9Vi5PJu; spf=pass (imf10.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1689364568; a=rsa-sha256; cv=pass; b=gWF9d1QPEv0mNRTbWCJ1G1V5vTUZlqjtCcy99jbKJpSUfV6KfD2V6NMXvzFObDfbNtQo6B 8Ms0oWVWnQst9ZfsrfZvuZXaxzK6Z8nTg2+vqIKRS5nk5FFW4lVJd3DIHMmGZnrsd2bdQf OO1ZTSYmGjeMouMfNyF5Fb1UKVoZAoE= ARC-Authentication-Results: i=2; imf10.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=fYXMWdA+; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=z9Vi5PJu; spf=pass (imf10.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1689364568; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=xm/+H+gq7iEoFQgqJq4P6qGurENe+48qBKgm1HBTaNQ=; b=OCqRvB27hJ/Oay7EE7zDJmvrLs44w9q5MjYdmL6B+mhGR5csw3EGX0OSKVRWL18X9oBDZv u3lK0TFyClsFETdGEqVVWQvTpWsnt7+ghjlJQJYoBRow0YM/sDVYmtj5rbXk+z2iDtFwOG ZJHgnH02kqq+f1Qq7ODwvXat9+nJ5tE= 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 36EDYHh6018937; Fri, 14 Jul 2023 19:56:07 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=xm/+H+gq7iEoFQgqJq4P6qGurENe+48qBKgm1HBTaNQ=; b=fYXMWdA+JhSewkwaCg3YGeXws8lzj1aysE8edzDyyzN/mc30bt5Z28o2HqhJchrJ2MG7 abC83k7d9+bTMkTmaFXvxpxxqUf4FV1Ptox2V0LAAQykgZbRp76ufM7QozowrBW9P7cs VQdIB20RGO+y/Il0pis3Jj2UwFjb2kYcMxgfdTxksmMxS4tkwi06sYZhG+Ehzle2L+bX Avn8Gy5nknl/KGuzDj8ABnjUzu48KT0u9I71aeWyUhj2Fbki8TPy7/31xNt5AdECrmxZ +1mKh6eZpZSwoOFLrCEUifVmx5z1ab911ioZhrNIxKmvfqaua2hPlbInrS3wbkzTxpKs Dw== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3rtqnct51m-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:06 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 36EHwsJr013836; Fri, 14 Jul 2023 19:56:05 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2168.outbound.protection.outlook.com [104.47.56.168]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3rtpvs5c78-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gWhZDCsMkF6BNzFbCoosiStUwl+iREaamKsjbL4b5fh3GllaojgImDeXFpq6nku1fB16ISCzEZz7i7KNUhKcTfpBeXv38rOg0J19F7pgcf1QJjTAXuztC4LwhM39F4IfJZs26YQNwwm9HBbkZycoOZzfz6YIPUfJWAhu9g4r9NnqckmmPs+HJPCprSpvZ5H7P0swZBO8oAy7m/Xe8GNk6VxaKgSx1qftuJvxoLa8rAWdW2W3GcIEFTyIjLfWrVdOdORU2Bzbkgq8PrSXuVAL/kou4CPx3qoGQ6mkjowEuPYiubJ6Gxb8CpAMEiYHgH0nky+9efcaSXIcQWnid4TgaQ== 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=xm/+H+gq7iEoFQgqJq4P6qGurENe+48qBKgm1HBTaNQ=; b=BBgVQhTTKnjZ7xchVAsR9ljGbAWr2Ju6KVY7gE5T0OlAnCw0OdLg9lLvaSTllEtx6wclkEdM5hWMBCBmrvhUHlnotEyIPw3asNbchZiuEkXeRvc8uwcg/A7L1yFBUn5Nw/83dXrFbm+ivHH6NOUrGT3D6vsDAaCqQnSUxW596jO7jC4xahQHW3kexLVtmlg1KdantUijGbgcNdSqZt3DqywMcXCzvnfqWzlwQs1Yc0136WFyLu5mJ9163LN6yGjTb3ScHab+FxqjtRcbQi4vRVlhc6oIazGGT2UI9f02xh2MZ6KPfHxnCJ1IkYbI3ccHp1I9/vYPQKndlnZxOz+Pjg== 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=xm/+H+gq7iEoFQgqJq4P6qGurENe+48qBKgm1HBTaNQ=; b=z9Vi5PJup3Wncb5H6poF/SuNKlijZOV2W6Curx7VYRj9pf3JThbF3m6XqncmIcGILGWhWku+iG2f8A2BeNxtjYkWKqgRORwpOUs8e3E0TakiGBBgOQUG89hzrtf8d/VvYU1z+kE/3eBRGjdA2Jh5BEMI4j+07xPJColG+uSWbFM= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by IA1PR10MB5922.namprd10.prod.outlook.com (2603:10b6:208:3d6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.27; Fri, 14 Jul 2023 19:56:03 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188%4]) with mapi id 15.20.6588.027; Fri, 14 Jul 2023 19:56:03 +0000 From: "Liam R. Howlett" To: Andrew Morton Cc: maple-tree@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Linus Torvalds , "Liam R. Howlett" Subject: [PATCH v2 3/4] mm/mmap: Change detached vma locking scheme Date: Fri, 14 Jul 2023 15:55:50 -0400 Message-Id: <20230714195551.894800-4-Liam.Howlett@oracle.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230714195551.894800-1-Liam.Howlett@oracle.com> References: <20230714195551.894800-1-Liam.Howlett@oracle.com> X-ClientProxiedBy: BL0PR0102CA0014.prod.exchangelabs.com (2603:10b6:207:18::27) To SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR10MB3022:EE_|IA1PR10MB5922:EE_ X-MS-Office365-Filtering-Correlation-Id: 69f7f86e-c73d-4a2d-6a1d-08db84a45aac X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SH+W+IoVxsjMTooXtmOUOSE+xRedKaBjcxqtDReYwtG8Nyv44CVxUON7RmT9VVtfBqMnFsI35oEkD6nJPSanpfeQip4RY5uHWVGT0cfsVBWG2wXrXEppSR/fhi5Ia5v9IAHoXuaEb+r1SGlO1VcazeUg0Ba1EG3qasnYIIWrPFyeyjhOjdH+HgeTLyzIpc7EwQF0R5EdGGgpDwRbf3wEseyqC/fpQAkbWFk8CrUXd2nVOAc5zUm5Nyzha8WXgG7slBgQxc3By9rnlBJkw+ikXsp3auoJcOuAOGq5V3fVYa2tXRjnQ6Mqw3kwJvke9ttnN+j8pdJRlZUnlUBBnMjVPsuVIWfxhk/1+cRFxp8ph1YuliD+tU0LYCRfHyzF6Zx3E/5gTIno4E47VsR84HTS0Eq9wKjmZwIJwNNB5bqcqWmSNlqL+mIKQjh/STuWGb+sIx3phzOvyxZ38/bP2tZ/VLiAYdRmQ3dsC7XrrPmfAlC4JVW9poSNTUeuYcUJ7wA6W+siBeoHWLr/o6xCQddZlbdULTEgFCpbCPKcltcv0jPlS9hkVGvopXDdsdA0SzFo X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR10MB3022.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(366004)(39860400002)(376002)(346002)(451199021)(83380400001)(2906002)(2616005)(6486002)(66476007)(66556008)(4326008)(6916009)(66946007)(316002)(6512007)(478600001)(1076003)(5660300002)(6666004)(54906003)(186003)(6506007)(41300700001)(26005)(107886003)(8676002)(8936002)(86362001)(36756003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Yn3AQLtt/H5RN9MH2C7ied+PJHkce7aRmz29ubL8+ik4cn6eTriDITPjzhE/t1OCeA90Y8KBIVIBAJa23uGlhY0hVlEl5BZtM9o/v91K5PPpmWz6SIXjNTC8eIymneCI26fOOAeA/qQyoUrUIMI7frl8w8DYVgMVLJW8DlhK+UkLBVVHKFqF+PNrI+V5uU5yEAzMreutfo/G6vMgle/WGdsD4lxdtDL/MzfzjKVMnxSuSFTYnoSakg0BfpfSB4hTs7Ksd0z3mWvZBiK37QCmJOey0Uy1SiN/qTkYCWoUra+JpQUY9YANEvDSiZhzY/WisYPyT/4XQaVoqGf00CaqRhdLkXDgI8hGnE35pcMOEn9LiUpJBYkxnUVRk8sTOcEZ04HgiwhYdqFW0QOeELQWuf4Xv+otgKo0N8yo3FkHO3wVcHNCAfINAZoNzP4V9tcvNsFHJiDnOFxj0X0iWGoVvJBq6cQKTBpk452gWJC2lPiE7YxA8FgKRV+duqOM3dyZacgmAHEbXjj8JOnk9cT0BXkT7QL03VW7YQ9eGJg4nj2Z/drder7D9FYAov8yMeaIerikS+39LJo1bLMoiVlnf+0clSjsu4ASJeS+/qhh1wiUHx7I98aR5IaX1U2PneHVrkrg0GyDPK0JwUAoKnEE4t8sBvLk7+6wShVZZc2SJ1LHPVHjx4a8qr8J9f3LC1cL98hOWrvHpq3nqP/JDf2Y1OTT50kvvkZMf5hmcmQD1XWjB6pEl/PtzjXezBE+4xa4MMO/WYc+Tx59lIf7UbFCkQN1b9tuBmZB3GBAwtG1L7o/FBvjkV1XxsRx/KNu+ZBFn1YjTzSy2He/bzWFXEWo0UnoYUYMM5WQDz0nkSVjvuddZyzbxcAXECyCOe/0ctsiUCgL/edi8OZ1jQsXtOy96kB+W7m/wJbP7YHFSUoEymmukkrBViAPCgggoO3gyMHs8kIH8a+sXmnVsuZkriaKc+4k60Jjr2mvsu7WynvhMQ46tjSlvsXU55L0hME3W063143/SQtj1LR48ugyGi4gK2MtcSvWrT4dPZ3Nyb3LJHzmG31SzjmQ9uZtHL7wmDuBs6bUJdNv/LBGtrtNXZdcFl14XJWGvn0jQFsmB9HEgvR3R10p5M9/9xHPbBLE/WaP3c4uYA30yYxZIzI4sDV/f7/sI3NOSau9RPag9L0EK5EC9rB/dE+cDWT8cd4P8vUEwZjCGo/6npkgMokM5e6NCxkXq71RDJRv4R/Vvy+W4BRhRzBJatX6+kkdCRHeZcMn/cEBl+Yldz80uGqsnqp9OY2qMwZT1f/oB8WU1aPpyQ7wzn0ikQX9IrkJYN6nQd8MDSC1TBcfqfR2YZQh1VJA+kXFxRw/zvj0uxcUwlYNZfQ0yj5XKNy8ObtX4COdu//JZfcO7aHBx4Q0z0/tlCXkh6E/Q4NHcoBrSncVivE/d63zxrYDCecfY59kUi1rYgFzXZr2cs74bwec7kMN9s17RTdH9WrmTmMLY7CMbdWt7I7uGeeKaquMceD/AT1I5sym8X+m/j+rbbc0UPiAYC92Tg7fB7JgKwqzzIdfX3cEyXl8hx7z+8LyjonBvZTjT+kbbZGWW73o+yZRPBd65DjyQQ== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: PYllGzkFrE9so/0oHS4kyhJJyKReraDslRreozEOeafHl7Xfok51Xa6aikMlHsme0xGbVdQKXVqnNaK9ciUFC7587uoGYlB3ReZ0EwMdcYobCDaFSkF8YTA+gaoUY8bkD+Q8dy6lbMR6J3GrybxdM6KajzvQn6LZZqsnupaXRY6wQNbl4UdWnzXDh4qNeSn2WCZuwd1BrRYC0iwPEbRevdXMu0hmsrhZ5FE9ADzsQbdprBMBBkKpLgx4R54YcxZgMIRqfexgoY1+7w/3AQ+rsVL2hNduys1wL5VNWSTuWIOw4cOFoJvPOdHhWixZV0yVGQe5DmTmc1YYiSmHlm5fytAJeg8dQwrcENmp/ncAj5jc6PCqLXjZsza2igp173Mg7OsOggYbhZinQGGCX60Pv8p0Ha3gvAeX+xulKUeMOL1LE/Bfkn5lG7Q839oprrsTr+zEtv2MaKGzdp1ePNoh4t2PwOm0mLPi5hpBTb72C63P3R4uoznUmuNlq6+9z2j1Dh2p6QZymceAB8KAk+f5hEU6OGwvEvVgTiUXnUB992breKltVQivE3fG7ioWVg2ozOazFwddklj83xp90fnIrQC60b64iuwMu+cE3Rf+AKixC/qx7SKZwxfPqXLeZ2J6TM2KesWZPReruGq7vEvEvDq+8AEpKKdbxH7i8xaFHs18/cakOPqLginwHGoEuzAZ9WAuSkZZco0Ujc4Tmz7ELK6fQCTeQw5MK6cuhakwkUysAKmQfYpc/nc7b4W/vdYzFh7UtlCZFSxIXy319r5BjpHWTK3BAkyeLhHZE8aXCYAmV76Mo2LYsPADIc4IHy8tmv3VKGChP2hOw+Z1FIBwrU1bN85XaXMR7O/RWr9r7kdKGzFPCGR3s91O+wM0ojh2AZ/8WeFcZd2kJd2YRoBZTw== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 69f7f86e-c73d-4a2d-6a1d-08db84a45aac X-MS-Exchange-CrossTenant-AuthSource: SN6PR10MB3022.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jul 2023 19:56:03.5467 (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: OpeN3JEus21dxYE1BHvq0xYgOIzd++qRCKOw6CnqNjfN+JqVJAlUcVmn1wwc2l3I6ldzP8C9rF2/HfNUfT64bg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB5922 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-07-14_10,2023-07-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=0 malwarescore=0 mlxlogscore=999 phishscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2306200000 definitions=main-2307140182 X-Proofpoint-GUID: ZDFcvA5kkpZgPM3MwRBRzlyM2VVPKz3T X-Proofpoint-ORIG-GUID: ZDFcvA5kkpZgPM3MwRBRzlyM2VVPKz3T X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: E010DC001E X-Stat-Signature: iq9rr67hzq57b4f6qadbpnj7ydoctgda X-Rspam-User: X-HE-Tag: 1689364567-801648 X-HE-Meta: U2FsdGVkX180JeMoiXHTd5ieumc6JHMcV49JeuNy+x8HrvR1jCHohCGHqYsb7Abi36spqx9q7AD0+8SrM/XiAKoOdESnh6COfiUW6LLTNIuRBlsMKon0lpnjCUtxh9IMGp4w2CMh0PAjg7j2SpzMWjoGrW2bxDLLWf3bQ3fggZe8waibNxg5BNMue+OMgkbdKsSAGpPZOa7YSstRxPoE4I1FqZohmtGw9396qiy22ntQqhTcsfXwHKkuaP08Raz1PabA6pC+Iix9x/57u1Q6eecH6PDXmtMlqKkpoCXClvNVN+R8dW+HE1Im9Oa/zDRIHjkrWWH+hHrx7jv/+IB7k/NIs5qMNfBZP+HcR6tY6IgQMf2g6JmunwSgER8+9hJu4K4PxTPFgT43MYXalLqC6NdZlaPVnT16mlx8bEefqPFtO2HK73HHRYpV4/8VxBZsdpan/RNiSMs5NkpdSCRMosRv2/BXRHqW4g/FMJoCBspEtpTuQw9XvDfuEjNo79ysutV/6odHXOQGnj+DJFpvzG4vkelwKRca2egGyiYs16CVSGGRnpThwp91Z6kfUW+xgV8WWVrLA9KJzXAKV3MePIghd0Gr02oPX85WeEzJelXTc9YEc2OjwYIcOo0yrpDcGpuaIm2qcOknVxEHDrd99UrAhxdGVKcP2S/VmultxvQyVRYz8yG8JUGCbVm0lKu7S13jOQnSxOvuVWFFXvgmgjuc1ddRnV8G9XNudsnvcfTj1KqdkR8YJ0do1Ic760+QYUUaNrDe2tJNOwbbza93no3AgGXOucLLNTfNIA/iMiM+uoT3+o90jLz3guwDd5NJFbZ0i1mIjow49ACmTq/FHlsU/J03rA1MdgTOYkebO1L+PDTSkSIGIU1FHIVPAsYEyq6XQprlHU7igZQ1U/WndqRMZMK9TnW6RPanONw1dm5gRBgzlzvP3GgHM3l/muVlvh+CJj1Q71UKlCjUZXB yBidRGoc o/2rN5PN20hCnl4VvWCH1qpB7IDJzDrYfEPE5RwW6eBln3BK81yhMPg9UtD5HFOpmhBbfqCRCfQYDNTyWp6Ar9CACbPqqc9m6d+K03CIOnMLVP+eqAZxjqnQc1YUlYr4YI9eZAu4Q6sn+ypuJ0qaS0RozuKBLYPU9QupUOifoiGrHV7ISWwLJHuoUI++0rR/dXCDd0fHTC4KQ0h5mqWVdFArgsliLHp6T9ts0BkVCNS4LdjAYVqYOjQg7HfpNp3CUkvzU8RXBvEFK4PGm187/Jq3NFCJBllDMB6uMgiGLDjTZjcAGa7YLc3oT+v6iUm6P3uCHVjLKTO78zRm5r+tZ1HsdDxP/0lzhLE0MP49YMtwpGDb81pMF5tPFnA3d6Vv7BxSgp19z1kqGCAn+9inTaevuIS/zUIqlASyf3gx3TNaWe/XnuywsaPm8IQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Don't set the lock to the mm lock so that the detached VMA tree does not complain about being unlocked when the mmap_lock is dropped prior to freeing the tree. Move the destroying of the detached tree outside the mmap lock all together. Cc: Linus Torvalds Signed-off-by: Liam R. Howlett --- mm/mmap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/mmap.c b/mm/mmap.c index 7b70379a8b3e..ab6cb00d377a 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -2427,7 +2427,7 @@ do_vmi_align_munmap(struct vma_iterator *vmi, struct vm_area_struct *vma, unsigned long locked_vm = 0; MA_STATE(mas_detach, &mt_detach, 0, 0); mt_init_flags(&mt_detach, vmi->mas.tree->ma_flags & MT_FLAGS_LOCK_MASK); - mt_set_external_lock(&mt_detach, &mm->mmap_lock); + mt_detach.ma_external_lock = NULL; /* * If we need to split any vma, do it now to save pain later. @@ -2545,11 +2545,11 @@ do_vmi_align_munmap(struct vma_iterator *vmi, struct vm_area_struct *vma, /* Statistics and freeing VMAs */ mas_set(&mas_detach, start); remove_mt(mm, &mas_detach); - __mt_destroy(&mt_detach); validate_mm(mm); if (unlock) mmap_read_unlock(mm); + __mt_destroy(&mt_detach); return 0; clear_tree_failed: From patchwork Fri Jul 14 19:55:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liam R. Howlett" X-Patchwork-Id: 13314192 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D3B12EB64DC for ; Fri, 14 Jul 2023 19:56:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4751F8D0002; Fri, 14 Jul 2023 15:56:14 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 44CDD6B0075; Fri, 14 Jul 2023 15:56:14 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 277218D0002; Fri, 14 Jul 2023 15:56:14 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 16C6F6B0074 for ; Fri, 14 Jul 2023 15:56:14 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id DD5D3A02B8 for ; Fri, 14 Jul 2023 19:56:13 +0000 (UTC) X-FDA: 81011273826.29.5C9439E Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf28.hostedemail.com (Postfix) with ESMTP id 73B6EC0017 for ; Fri, 14 Jul 2023 19:56:10 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=X6DynruP; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=UqFnZywd; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf28.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=none) header.from=oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1689364570; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Y2GhaCMP5kuOs0i8TR/0PGWaib2EC6bHHD4EtCt0MLI=; b=O/IDvGUZ0FS4xEw/QlkOLQAkS3plZV5MFMh1jP1wz6tLdcM33OZ5ANeel4otpw8ZPZ0VrK tbJ03Bm4M2mrFo4OK5d659FDSV83i24GvXgBmTV7MOtsQVPVKY9zf1D8mufKMParw8wIGd U8oA6BuyemHYlDikAZv0cHKEoz8mo0M= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1689364570; a=rsa-sha256; cv=pass; b=ostYXzikMRpllMb15aqbjZSmtvQS8aEguGVE7/njEfi4E1EIaXtcw3LtOmoyJzTv/wSlGM W9R5XHobZFdeLu/5jA9zxhgYqxghC69DDFiYmtKe496jwyhBRIeIhDdoFTTHCBbmjrbzR0 r6wyLG+g2GpVYk94ztjv7lBpXGGe9o4= ARC-Authentication-Results: i=2; imf28.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=X6DynruP; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=UqFnZywd; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf28.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=none) header.from=oracle.com 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 36EDQoRY019492; Fri, 14 Jul 2023 19:56:09 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=Y2GhaCMP5kuOs0i8TR/0PGWaib2EC6bHHD4EtCt0MLI=; b=X6DynruP8gXJhzkUv4keOOpzeWe+yU3mVy4W9U+WDeA74DUCsDgRG+A48HkOwTToD+DP bzDUIOeYp9Pcn0c0vVcPpcNpYWdr0M5fXcQxdB39vJ6J0Wl1i+CnszGsMeyyrkEjYsKq +pEVIH7j1Va5paESKUwf58wY8dypZ4ADKAotYL4lkeguORfcJtAGuIRe2TSvkTXlrnrh TdIrw3gLJ9MUVPKPwwvOWMNbvs/lPQBw24RFxPyAejvyiZBBxqcnLMvcI/tH1/BE1dEc ixyzDhaRLNUy7nLWwZT9OZbVCrFkUpgT1VXXbaw8E9cCYWVMDc4p1y6MYtCEHG6B4nel YQ== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3rtq8at7qe-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:09 +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 36EI0PpZ027115; Fri, 14 Jul 2023 19:56:07 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2049.outbound.protection.outlook.com [104.47.56.49]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3rtpvydhdb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 14 Jul 2023 19:56:07 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=grJw92d9VliZuqt9TPephDdkeHHKY5hu7ilXQxbwAZvFDSeF+zchqMd94YROrxCKxRxRxQfk0QM6Nb5xJdyFxRKUygBMaJonl3hTNdBgS2vWvILhiY/9lQ7XAJ9NWpmx5BTMG80VAU7pmDNJAJURZap7dsWPRIB0XllgtBA0YBlRAGdWUza2DzKb7tEAHhSMuhjqeDxkN46fki9rNljmZyOrBrzRRew0Vc+gxcPHH4HVgDVrXzfchnlECny7k3AeRRO9BhWfPM5GWFuB9kc2iI8aJE/PBqPtCX5JxGwzV/QKM3ADZ3KpD0IXwhwo/15nAEaox/X2aUZQT9N8yQvRNQ== 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=Y2GhaCMP5kuOs0i8TR/0PGWaib2EC6bHHD4EtCt0MLI=; b=Mrh6Oab+kSZ/1hAhQFokKsIh563qUQfRISm8mCJQvXvfSZUzQLh98d+ByO17wMe1dhwO4LdRAx6hq+r2S69TSW4w1XcjhwHl2a/lLzRbcOBBNnL2WM4FryYUkjzWTTc/ZuV9KYRS0kAKXAa+4/69lMaBhNIr1/atqNyaVlCOAsH75aXp7/YuXmiMRe3SAkfwSL0Z3Tg6X2PiOBCLe83nZb1RbrdL/AsU+eBb5EDq3AZjUCYWNdS9vFSn6iLdOjTmmUbwM+vEmUzE1TbyzMcA6o+mXfqPF28pH9yhfXmcgzlmHl84nRD1MqC6V87ZOxgwWA/L1dHPNdgdoK6nBmKMBA== 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=Y2GhaCMP5kuOs0i8TR/0PGWaib2EC6bHHD4EtCt0MLI=; b=UqFnZywdxdgHTjobinkDhY+9AMNrdmrBIEFbnm6U5h47vz5oOmUOcdaQLlnrmWghsHHG0+VQvQ53DRnBaZpiwSPFVkD/RVBkBAbd9mXTe1hOZfbP7uQlK38sDdSIlVUhweddNIsK/xn/xA6fttku7R8jw4YWXjdpgpAsEDi6cyI= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by DM4PR10MB6864.namprd10.prod.outlook.com (2603:10b6:8:103::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.39; Fri, 14 Jul 2023 19:56:05 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c370:eff7:9ddc:f188%4]) with mapi id 15.20.6588.027; Fri, 14 Jul 2023 19:56:05 +0000 From: "Liam R. Howlett" To: Andrew Morton Cc: maple-tree@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Linus Torvalds , "Liam R. Howlett" Subject: [PATCH v2 4/4] maple_tree: Be more strict about locking Date: Fri, 14 Jul 2023 15:55:51 -0400 Message-Id: <20230714195551.894800-5-Liam.Howlett@oracle.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230714195551.894800-1-Liam.Howlett@oracle.com> References: <20230714195551.894800-1-Liam.Howlett@oracle.com> X-ClientProxiedBy: MN2PR14CA0014.namprd14.prod.outlook.com (2603:10b6:208:23e::19) To SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR10MB3022:EE_|DM4PR10MB6864:EE_ X-MS-Office365-Filtering-Correlation-Id: 93719744-b80f-4313-2f82-08db84a45bdb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TJgPCEIeHwZOy3uYJfncp2WuCbTRJCJzlvLYEqvngRQrun97EotQ0PyedYrHDTiQHRMBEXC1u7OexydQRgvlitSUJXv9lyEvf+7r7jtGU5O6H3QMC54Usq06OkoeoPQEVNdnmqd8gCrCc17+xWe0UztiVXapiTfXLvPZNcEtUTF9hNWGQ7x5t/DQzzSKVWlvZQRIV+oH1oPjXssRKPG6uwVTYEAOV071o2mFkfo/eVdk6DF9xPtjn60rQuJYBmrS4glOXUueT68NG/JtuSsGSPpduQlUD/rJy6s+diXiQK/gB1c+hvFYxv5uk9dVhPlEP91x3IEaF2luwaV74iewXcicSqsH9U+cF6XIVAOg3hr1gaN9zvg0zFMxJrBS7eeV07VE6VUF1I1SuWHDfqETtN6jbGJVxyZW/xkVi6zm5fnBhSDa88LbV5XH3jheJaPxZkJPr82DA5xV/CyCv3W2qjWg7azeTDG6rrZ/EVG9Nb0wYXH3P3tnL3+J0MWV3bXO8Yk7jLmIzjGwDkSLR4MDg8Ay25T4G8Uf3DcmIDWTaliW3kRlwldjFPMYYR/3Mz07 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR10MB3022.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(376002)(366004)(396003)(451199021)(316002)(5660300002)(41300700001)(38100700002)(8936002)(8676002)(86362001)(36756003)(2906002)(6486002)(6666004)(107886003)(6512007)(478600001)(2616005)(83380400001)(186003)(26005)(1076003)(6506007)(66556008)(66476007)(66946007)(6916009)(4326008)(54906003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: p6g2teEw4fTeJGsvo384M85wzf6tQqooYMCn2admz0n6Y7wOoDe+dNpVi9VBt0KuDH/LMKG4EYbp0onQ3hOTwIUQy7XqpAo3ybokXw8bK8WCZBDXVdHC0U3xjqIR7zlw8GP2iB8uymG5j4peDiSe81EoclJapZmzT4TSXvnG7wAVD9G/kb0UT6fz5KUzj/A4AUwzruWODcN6xJnRnUa7qdS88PMj0y9GlfqS3e2b8kCEdy2uASWT52KJvsmfOaaUzce3TFYQ1J0v3JQASReIX4QASuxV0EFxcFE2CWJkUb5IuBoz8C7Ha27INm1e/vTvFG/ElJBC8CqwpcJsTYEFTh4UVWbEkjDrLUevL275WkClLj/ZtHYISRtOeaBUtgVcCzc9agigREoSqGjAKbAcnCHRyvRwrb7CDAm6t6BJq+4r9JV0U4uPjbfFgpDp+bjMwKYdN4HKXlgrfqrY9Dri4hDqERXVeyqS7d4hiJ39PYOb4PsdAXgkf8In5YuA/7BOyXjCzkoRCgQGOYa4VBEI2NurEyn1lvvKmUe2bNxdOaw5IPkPikYMRYYPb2NgA7NuJMxVdZ27IBJHwlvR1zgpcHFjqK7iI2QF/ahrsK8VbbMLaS6khKxqEwZs3J4Q/G26qci4O8NQcvFsu33JzGneE/v2+dJgZLyKQr2uhF141Zb6veQJBQ3r97DYP6+bAvyEeVcj4DOlMA+ig3VVrJaHill+nIW5FX3RlQMnwzPjPRC9O51wvZn7ZpoHfIJ4XuphaujixXeyyHqkkqJxOkw7z8XRkUvTPTLEP9P9+tkCiGzPlcOl/N7Hh0hR4QRs71OIrJa5No4ec4WBC4AyTsldKxWSejBLMDXvrttzGzWiwl0GToxZYGDI8xjf1srXIeNEteSRUtUztKYT4YfwNXZEXQITLmFZjYbEVq/4qrfapinwbsXDCEgIwbaIACx+89b4/Ny3ehSZ5g452GOA0dYgIWwOCVVMgw1OpQYBdFf1TrUfm8JSeI2RCW78gjXH4IhRnIc+RY5h3lt5PBdz/5QJ2Zvm7lSNEIvZlppywqzEcNx6PK3FfbkeTe6UoCiY0CT6535+MEGrsz+I/eHgdjL+GQh6XJaESJXGwu4zgwcexi9fvnrxYBvC9rmnJDOvcpbPFmn6Qrd48DFtvvBG3rbtBqQ83ai0DVHgencTEVDmbC4+K9CySnxrEcb3hJ5xcdnR5LE+C7IZFUs+PMI8qFFKlVowAjncipPLOh1wiO/MAYkqfiCVYHB2hK4eoZbb+yqEQEO16ZDTk0GKJwQw02YvdYRFZh0dgCV50l2l7rbHNzbYBFQD5lUjFhWTP0aATzYMLu2nb6Z9xCCJEfOAR/IpiLRGoHxcFQ3vCYorkRf57NuXKco9FR2LBFxkQ8r8Oq9/JWYMf2yo0oJN8tZK7he3kCkiTjUz6Vq7W2lDxM1csGm8LlIvlTdw/K+wrqcd5Ty9NXILuHdinhMcoVORZDYJ/FsgiHToY7JRKrneo210njdYe7+YHXff2wHdOJlNSg082A+abfI4A65ctVaSRregKnDm6XYBJ1YujZMXNQHfXooTkz1wPBOHBHFiBkqqoHi/BdmOStTzK/Jk0MCDWYYzFg== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: CU0mdSjjuQm7fjAVTpCutQvWRjH9b1+OvjLQ4MF/Fsteck/lZFHbTE2cJFizoyNENAYEP3+mtLDt6Fb7VWOwaXwVdp+//9DCJLnKYb6Mb/LKi2jOGLYokrcsMz88pvv9trL0nxTc5KVKV0YnYLK+hvsWEzTQ83UxO1hAUH3HqWkRgu9tD3022eNrxCvcGsOnOrAzWu2LXCModM4nqKRymr+NG751l19rB/6wiERPGjST8nYjlOt9ZkmGikgsIRJ1XrPqnvaUfJg9YhR4k95j9ApmMdXJPJ8p6utvSp5GZrox3gYrVdQaTdrynsKUXtPBE3EI0uEUqYU7kBtr2TxiyVGnv5NkZ3gGrYHZ/qly2ZkYdYbUW6yAHyNXjJl6V6s+upA5v9MK0I7ow5kftG16/nARM7QoAqxTw9qbAbPwbB1CNi/dKRLSoyPdb2TAHowJlwUt1CrO2I8rQtByB1U869tEDMKq3+qQ1PBrsfu/lHSdY6QyCIna6jkrLMqtnRxj5V4MvKeebaeTi8rSYfCfkF0qgP63chRdxSgPeurLVNvuQCa/X6F/+1kNvmuD28Z962r+N0Cf5NSGXF2lJjzpDQ0R4t6fcVOhk3bgsPtou00ovhE1gjLAwgH4ar8G+hvAhYcbhqZyPZMNvTEaWbUeepEkFP5prVd2r2LN1y5cICcRiBBTHkO2m74XUrDPJTB+VQaeWJJB6BtZ+/H2AfE8HdSTs1XkLoDHTrHAWtIKPjeUb19PjoyfmN1125xAGwy4dXKoSULGbkSmmd7ZmTuzREqvn3AEHueVQ5g8SnlwSTqaOR9DiZqIR4nH+2iTtJwbi/0KUPSxIH9GoXaoCWNBAHezhKxAGjh6Escj/WOsoeZRESCqMmOgfnlzUQB3e8IUfhKqJETOZcIF2gVCelXf7g== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 93719744-b80f-4313-2f82-08db84a45bdb X-MS-Exchange-CrossTenant-AuthSource: SN6PR10MB3022.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jul 2023 19:56:05.4939 (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: Unmj57IakXWo8WR8HnnEuqWyT2BhL84t79QMRPWkey20hGmNhmlEDhEHs5ahINTablveZukDH51LnvOzKeLXUw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR10MB6864 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-07-14_10,2023-07-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 suspectscore=0 mlxscore=0 spamscore=0 malwarescore=0 phishscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2306200000 definitions=main-2307140182 X-Proofpoint-GUID: aC_tBsQ-9dqElXJz315IV1zK3u9YpN4Z X-Proofpoint-ORIG-GUID: aC_tBsQ-9dqElXJz315IV1zK3u9YpN4Z X-Stat-Signature: xz4ucf7w6exau86pboborisndt1g4qch X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 73B6EC0017 X-Rspam-User: X-HE-Tag: 1689364570-923573 X-HE-Meta: U2FsdGVkX1+XrF5eHMIrvJHLj55PzC2VWhsrrg3wZSzhZJIqQq9xzzPKL+zNl8qdPkOJ/d9QzyzSnQ1pmOeQsAIUrF/8OOg8DTZAnv14q1loBXeZ20yRaWKfa844XbUbj2vqqGHbD+iTt0j78hmboLHyF/8IAbEcbUCoFhIInqm+GxX6NPESuxJzQE4NelZTKN3+8WHlbU+uMmRMISQi/MsYou5l9nXKL36PMPNF7B4NKLfFb4QpsXzKkopEYN++Trz8Vn307h2KhOKZtS0mrGL0xxoASBUUqCV2N5wK2cPOTqO3TvfNBOsx0iOjspqUUCS8eHlbNtDOtSnSzRZp2W6c2HIWeUDa5+SigscMuQVWBi8ggq1incEAD3znKF19c5LvzcNNmo3iU/L5lV8SH5U2E0agrkOy3WmAZXC3GcC70/X8yg40UknRTMeItW5z1nxSCxU7gvY0r7eiJqi4g5SY2hjv3yYxs+0MIkL1oQ+bme6K9l+riQaM+Q8ah0wxoxyPqxygo/byxyPjJe5cVJztsmzuzARWDXF5nrC34c8uolGKYc6lP+1Sm/lg2uz0g9lotGsrUKkSUq2VGUIeQIvA2J0s1qCv7qb71ACr+fJKxlX8/CdX4jECvb90/N7GNLkgiUjB7i2CV/sivShCvb8roySN4oCwFOrz6Pd8t0APMejIg/WSCmx9J9PjMy8bwXm6xZsIOOk6hINNl5ax6TY0SYAj+57tZ2hcS0R1qVcXhWPXREYuOXc7V2+jYWDfkDQfeXHIbTNQjY3cn5/nue0ucfZpogQXFX2MXxClP7vnp8u8AdIuw/DivAu0BuMGn75eA4+Axp5H4dODRet4GZnOJ+QnrjTJMW4qOLxE1aAjxQtC6SUIpoQT4b2iEY2ae0xorRFDNWiKFjTNN4tuCqLxkhDzgmoAyPBs4qbwRUUyB/SVYVlXaB69rVQ5dg4p28Z4ZrDv/i77YzFDZPG GCIdQzar azCREYtpqp8TGrkW7izP/OoGr7VzEXlqnywyMVJkOY0+IGdMp7LYArblOZidKpQYUYhU8MKPyJUOy6sjRxBkOKLgScpNBefRmEDlg+5otMvfJyzP5coMLP4qmTJmhHtt5jKJoEu9F4waeX7zJk+uPRS4iH9iNKet93GNMWH35SqFwSyxrGDtKxqEofCEj4yCVWhFNi8mh0PDE2Xlamlk8gr6kU8fkbBNSFRKtrHhNlfUZSsmqq4vh5bTPNGGtwaAwsJKM+M6ZdwQnu+vLJCsokJfy3CmVCh3zDY15PT3l7gubuT/PKVi05UVDUU6j/xpFNqnotCU30p93qiSbqpmtn+vTeqT1d23x1SQgZ2LgZU8j8bxVZUYv5sRbyQIL4ma5i7W+6beFn+AA3uIeTMXiqZ3xWfYm13ObaGpCsxRvokTejkUGbgjOxv1zQ3GgwSzKkZk6KzkJUs6ZtCEF054vDWti9isD7ok0csmPv7EfewcTGlPBe4INizohxK6CllDO2ekI X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Use lockdep to check the write path in the maple tree holds the lock in write mode. Introduce mt_write_lock_is_held() to check if the lock is held for writing. Update the necessary checks for rcu_dereference_protected() to use the new write lock check. Cc: Linus Torvalds Signed-off-by: Liam R. Howlett --- include/linux/maple_tree.h | 7 ++++++- lib/maple_tree.c | 10 ++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/include/linux/maple_tree.h b/include/linux/maple_tree.h index 6618c1512886..43f18230cfa4 100644 --- a/include/linux/maple_tree.h +++ b/include/linux/maple_tree.h @@ -185,11 +185,16 @@ typedef struct lockdep_map *lockdep_map_p; #define mt_lock_is_held(mt) \ (!(mt)->ma_external_lock || lock_is_held((mt)->ma_external_lock)) +#define mt_write_lock_is_held(mt) \ + (!(mt)->ma_external_lock || \ + lock_is_held_type((mt)->ma_external_lock, 0)) + #define mt_set_external_lock(mt, lock) \ (mt)->ma_external_lock = &(lock)->dep_map #else typedef struct { /* nothing */ } lockdep_map_p; -#define mt_lock_is_held(mt) 1 +#define mt_lock_is_held(mt) 1 +#define mt_write_lock_is_held(mt) 1 #define mt_set_external_lock(mt, lock) do { } while (0) #endif diff --git a/lib/maple_tree.c b/lib/maple_tree.c index cef47ce8eddd..722c78077b25 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -777,6 +777,12 @@ static inline void __rcu **ma_slots(struct maple_node *mn, enum maple_type mt) } } +static inline bool mt_write_locked(const struct maple_tree *mt) +{ + return mt_external_lock(mt) ? mt_write_lock_is_held(mt) : + lockdep_is_held(&mt->ma_lock); +} + static inline bool mt_locked(const struct maple_tree *mt) { return mt_external_lock(mt) ? mt_lock_is_held(mt) : @@ -792,7 +798,7 @@ static inline void *mt_slot(const struct maple_tree *mt, static inline void *mt_slot_locked(struct maple_tree *mt, void __rcu **slots, unsigned char offset) { - return rcu_dereference_protected(slots[offset], mt_locked(mt)); + return rcu_dereference_protected(slots[offset], mt_write_locked(mt)); } /* * mas_slot_locked() - Get the slot value when holding the maple tree lock. @@ -835,7 +841,7 @@ static inline void *mas_root(struct ma_state *mas) static inline void *mt_root_locked(struct maple_tree *mt) { - return rcu_dereference_protected(mt->ma_root, mt_locked(mt)); + return rcu_dereference_protected(mt->ma_root, mt_write_locked(mt)); } /*