From patchwork Tue Jul 12 01:50:36 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liam R. Howlett" X-Patchwork-Id: 12914418 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 2AA9BC433EF for ; Tue, 12 Jul 2022 01:50:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9EC8B940030; Mon, 11 Jul 2022 21:50:41 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 99B7E940010; Mon, 11 Jul 2022 21:50:41 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 81682940030; Mon, 11 Jul 2022 21:50:41 -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 6F77B940010 for ; Mon, 11 Jul 2022 21:50:41 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 3E53F206F8 for ; Tue, 12 Jul 2022 01:50:41 +0000 (UTC) X-FDA: 79676768682.06.D5C00DD Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf04.hostedemail.com (Postfix) with ESMTP id B253140035 for ; Tue, 12 Jul 2022 01:50:40 +0000 (UTC) Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 26BMYYW3027941; Tue, 12 Jul 2022 01:50:39 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : content-type : content-transfer-encoding : mime-version; s=corp-2021-07-09; bh=8H0/kd1t7uxU1BReLUdM5T7UvMH2bY/aG0hDK1juWjE=; b=rYqtyWghq22DmovIs052WgsfbKxONvFKdWVmJFABsmMog2O8dmpdxK2wVL+yApq28kaD kOaROvlv1XclqrYjcbsY+1j1nVJ5otVal6i09/Zru+5/FTE0D4XXvUCdzpFGbyqH/kIv we+wCWTrW/BsVcHph831DYX9KhEZNgWtSW5HR/ZL6lQCc26rWtHzCSjju8HW10oUdq1d SWqDLfYDlx+jUfCpjpkSbU8hI8YBekBWmmlPOjnbAmqptYncG91tmac9mG+PUz7QBCMO UxSRUpuKhinyZxAqaRGiK9pWw59+9qypDwH5VhkSiwq5dasbUxz0ffs0jbwNHVMFUlWO XA== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3h71rfw3ht-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 12 Jul 2022 01:50:39 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.16.1.2/8.16.1.2) with SMTP id 26C1oBbY008966; Tue, 12 Jul 2022 01:50:38 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2170.outbound.protection.outlook.com [104.47.57.170]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com with ESMTP id 3h70433nmd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 12 Jul 2022 01:50:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hXAX5i76WmDtG3zTP2Mu0wLWSI4GyCTeQ99/1+xLKz6gg9aNfnMIH59F0ZIM3+8Eya7MWljJaohqTtpwvgXvUqEFkJjLh/DdOjMxYt8UCwMzIeltiQqVbAmIQBPZaKBgjBma7lXyQr1+6RyrvVCaBqulAGFdLS8Nz6zZ6TSwdXIgFIlP3nbDMSvklL/1vvKpoKkBhB2P1WroXKbEsrsINAf2Ss2gmzYP+wCO6W3E7WeMGcCqSrazOO/aQLii8+y8QUpPWzjaVSBjkkNKXh1dArgVrXjqeGnw/10mroLGDbPx9GDFPrAxqFNOKTFPsoy/i4uNi8a8dG0esLfHzGeoNw== 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=8H0/kd1t7uxU1BReLUdM5T7UvMH2bY/aG0hDK1juWjE=; b=gvazKFk5VvieFzUHtj1OVhP8NTqK6gsS33Yky2w4c4ZcWsU8BkIiCO83oZdjvVN+feXrIa0Kg0xikOP4rlKCbNm/3xtPc6ab3109yjxgyt1khL55MvbfF52WFPVai7RazRIbrIxBVGxledcA5818vPjswNtMX/wjFCw3nKNBoVkMBAMfYMwACn3qSNpE0gOjULWpZ7vrKQAjgWZw5YLE7qz8dUR4dk1seahf/jSxRhBOEMMF1HSh1x0kOcyQzEZ5TGz/cAx5aSMX4/2TkCxaOWqeOg4YbCevnECWhgw/gMF3avtbcue2pj2MjT1aX7Uz+lb6L0+dlq3cRVFy8t2vZw== 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=8H0/kd1t7uxU1BReLUdM5T7UvMH2bY/aG0hDK1juWjE=; b=mCzRY+c33XcT8etzX1nCX6vA7F4OU4lDlC6p5ZSM9aejRlQVfveHX+Q6pzYtTbUQ0JPvmKRe9mRW5zdYRHWh0ZM4KlJs629WJUrtWlI5DpUb7uOxGFGnvXFqP2uWk016Vj0WSJ0oBVF7UASyyigSLp47W+TDMToV0OtwfcpyWCU= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by IA1PR10MB6267.namprd10.prod.outlook.com (2603:10b6:208:3a1::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5417.26; Tue, 12 Jul 2022 01:50:36 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c4d1:edc3:7d21:7c68]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c4d1:edc3:7d21:7c68%6]) with mapi id 15.20.5417.026; Tue, 12 Jul 2022 01:50:36 +0000 From: Liam Howlett To: "maple-tree@lists.infradead.org" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Andrew Morton , Alexander Gordeev Subject: [PATCH] maple_tree: Fix mas_empty_area_rev() search exhaustion at root node Thread-Topic: [PATCH] maple_tree: Fix mas_empty_area_rev() search exhaustion at root node Thread-Index: AQHYlZHHZk0mGqDhCkmeguxOWUt84w== Date: Tue, 12 Jul 2022 01:50:36 +0000 Message-ID: <20220712014957.4064879-1-Liam.Howlett@oracle.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.35.1 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 99f9ebe0-f462-47e9-729e-08da63a8ea84 x-ms-traffictypediagnostic: IA1PR10MB6267:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Kd4oV1zTlqbFpbo5LlN0S6hJPaLwXqfLXmDjkmAGTKDce/3biDM5IENc+dvGjCLogj2JOpchOfGxO6kEUMErzJJI8S/BlmVICZqt4KuEMnoWCgNKx/9MQ9DCrdIGH7VxlGJ+bod2hWoaVnrNhvHiftJOfNCR6pW4WiYtia9ARLfgt5pcnmRUHE47gpPM1H2c3uvdD9ElC6Nrk2nGd8xb2ppIO9lBVuZX+94X2I/dl7+z8CLZkVhUx8J+CBSDP4jRFII9Xi4fOK1ny7MLVFpR3KYSjet+uEeFgPJgcYFcIJpj+qmEolWHDd+MoojcPXFP6Xl8OJie/sMVziemfQ2RlVomzXog5ZuQQUh/lD635CHiuKpTN2VmZhaQTTLtH9vzxkkmxXWXoWc6BAvWWKIbSAGa4esup0rz+x7+5cb55D15x4kZJutNmjtPGad7Qq4vnAMVkqJRn1VCsXueizQIWqJ9RGDMj1Rc3aNZfpFqiLzluq46XKc4mLo5WtTkz09PzBWhb40UtuJJ8XKbBKL2u9eGwCea8Uw2iHWB3DYvWaoqFchBdw8dg62r58G8K03v1J1P+DyRELTG5j5jp1IenKftJluBNsMTeIucRtuSyMdKW4KEULlPOve+lwt3kNedBsgej48wE9wUlt9Z+yrJbohnBizcQ36NX+Ax1lQ/HEdVGA+LO+suRuSQOW+4BNyXStozDCdrJ5sKvmaDuYZ76aS2wS7HO5afUeIbccrR06xZ3gk7bZX/RvYhj3KTdZuZVwFfC/Sb8B9W7QgouiTrTayK+A6jdnk1u4wWsJrr++T8C9HLd55V/XexMMjKvmZS 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:(13230016)(396003)(39860400002)(346002)(136003)(366004)(376002)(38070700005)(86362001)(6506007)(76116006)(2906002)(122000001)(66446008)(38100700002)(91956017)(64756008)(110136005)(316002)(66476007)(8676002)(66946007)(66556008)(1076003)(41300700001)(2616005)(4744005)(44832011)(71200400001)(478600001)(6512007)(6486002)(186003)(26005)(36756003)(8936002)(5660300002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?+CHfyr7eqoa5svK0jnRoyQv?= =?iso-8859-1?q?z8SZrA5Qrmiwxma3SqE1d7NaFd1+MkmignWWr0cZY1F7MYdHXK/sG/t8N1gn?= =?iso-8859-1?q?2x/amL5o9BQlHZqbkbsMYsEqEvX2KRME1BVT6NQG6BWwcz6AKLNkCe9dGJDM?= =?iso-8859-1?q?Vw/3QjQ1ywQj17Qi2XzP9Uf6FRGoxDY5bGYPsuAnny+tNElcnGiBjjbsVrGK?= =?iso-8859-1?q?dlwNLHHjtbj6v29cdnjI/XkLZsNwM06q0Bl/3RhfP1N8RpAe02ql9OpFGhhE?= =?iso-8859-1?q?+xncwZ9n7On4AgrfuC6jNooF+xhHessIwA9M+7C8qBSC1FJmsLchiFELSuc+?= =?iso-8859-1?q?DmIyU+NdnVNLILeWdKycbiNwcf93ZzumlnMGq0wVXw9ifB6ctSRoh9sE5gzw?= =?iso-8859-1?q?xUrwFIU7Be7qO5UhI2OfiTAtjeqwKFuZZ4GwwbnJkmsJgFZFe2jsFKaiC4na?= =?iso-8859-1?q?w/Z90nJUNkGzR/qfuApNDuaRoEKV8K5+Tn56JkRSlZI1DUbAER0tqmwrxGXo?= =?iso-8859-1?q?dNDgnxTnA9q4YLsd1OKQ6lMHGe/z0F3utJkTXt+rE2WNcfDyCeoeRXzOkUPn?= =?iso-8859-1?q?3J63YKYqxbvbvZLPzOPMHtmIxEfDfzPnMTSyI1XzeppTsgMQh5vsXV3qhXmR?= =?iso-8859-1?q?ctQMN9fXAmoQlz87CpAQaVvMZwM3PAGhrqeVFP9HR0KnyeGAlspQTC9idUek?= =?iso-8859-1?q?6SKOHsMv3y4BO/fPNiEDTZ+lCKQYM5nXwb/Ze0iUX++cksvNknzizMub8r2c?= =?iso-8859-1?q?9JQjI73rALQSACl+G2nFx7ZSmQdCrgJlwzEvxENt5J4ePZgSzTojsSB8cE6x?= =?iso-8859-1?q?Rfsbr4MOScSIg0OTM6tZfQZBqWK5MRPHrWi0ETDVBwDDGi2/BJQWtfPfEOWS?= =?iso-8859-1?q?ItemMwne2cY4vJKHOwjBd/DstFO06xh1RYVsMxZpQgW1uk6XXudW23+ssuOH?= =?iso-8859-1?q?3XS/MQw5zSgsdg52BkbjXRCAUtX3g3D7ssJ3cOOG6+hlphhVa8zwaHH+Mr4C?= =?iso-8859-1?q?p4TXRNVLLpQPFdQh/ql+nQVJ1/Xd3ZvR0aumGKE19DAyyo9+XQQtPN+EQH02?= =?iso-8859-1?q?72i1i+oleeY1iluSLYHXol8zGPyKocmRTVGYeYi0MRqGIDq3k3cmiLCaofij?= =?iso-8859-1?q?RHS6gaLOacieAT14G67Qxdjd9lr+LOEiAhx4nWJ7A2pmfVjPYap4CQnf2tu7?= =?iso-8859-1?q?Ihbc3PbEK+MWHgLvcBGYBG5mPq285xRgBPDY1OCep6S1fMInGiPp5KByLDaa?= =?iso-8859-1?q?Ls5Skvw45QKQzX7b/jKlGz8F2lA5Fk+KEp0yEWhbmqWdRV5Hva9iR75yIDbV?= =?iso-8859-1?q?6QyfcusRzu8Lw6bHoVlyZldmw2lWJCQJJ4mZ6WJWQw+5EZyg6ey8ICgT2s9W?= =?iso-8859-1?q?eVKSWD0ELV8RtWYI0B2P5msYDv5uBFsWXUwMrZsk1+cw/+SxlxCngyp/cSM3?= =?iso-8859-1?q?/nq8wcrm8FgaRqrjNuYqLVPaEAVpHYdqIjVLHkIQ3hXBhqOxnEsNCkiNShHx?= =?iso-8859-1?q?lYttIOUDsJhmvAjdB+uSUpyy3vgL3IZLZKkomMK2KhjeklE4dUFQXVtJF/qd?= =?iso-8859-1?q?b2T3Xj4EdiVkd5dfYA+2k82mOvozsGwIZKFbVCyXaJm60lCDtsSFVFILbgCS?= =?iso-8859-1?q?YCXAX1I8yYMb2lUsyNlCGNm0RWPbHGT+Bn48TVA=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR10MB3022.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99f9ebe0-f462-47e9-729e-08da63a8ea84 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jul 2022 01:50:36.5925 (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: UlQbe55q9czlkkuxJi9fT6IjSNHkj2aKlphcd6rigNURWDb7nOk8muTfDOWIJjWzy7edr66ltuSBSdG+rQCA0g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB6267 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.517,18.0.883 definitions=2022-07-12_01:2022-07-08,2022-07-11 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 mlxlogscore=999 malwarescore=0 suspectscore=0 mlxscore=0 spamscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2207120006 X-Proofpoint-GUID: j2zh3dGQQwaCP6MSyrZ-Sm_xCcyuMf98 X-Proofpoint-ORIG-GUID: j2zh3dGQQwaCP6MSyrZ-Sm_xCcyuMf98 ARC-Authentication-Results: i=2; imf04.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=rYqtyWgh; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=mCzRY+c3; dmarc=pass (policy=none) header.from=oracle.com; spf=none (imf04.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.165.32) 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=1657590640; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=8H0/kd1t7uxU1BReLUdM5T7UvMH2bY/aG0hDK1juWjE=; b=WHIxt7MY0Zlekb04f1w/0UExJkF+DUZSMao3qPo73KyY2ER39THSj02RyDdastERWVO9/Z 2qjx1zEwpqqMAmALZv9DQHdBrYi3PGzumMgYek4lxXeRPIKGp+4mBSY6aG4I0Q9dSW3jPS RDn4nUQnrVa4HR4RbzAF8goJXcyegxI= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1657590640; a=rsa-sha256; cv=pass; b=WANgD3/Ijp5r+GuyPAC5bx+//uc8UJBSGx+GIe0w5krqBwMeYNsDULc8EAsaepCo7pQyTX Cs+Pit4kS739lJQIHGkgw0xg1+5KKlrZfu0aa1mMmWjVe/3fqqFTr1dscDT1zkgIzvgQXO UWj/lKYiwMAS4lCI9CRObKwnyYQx/2I= X-Rspam-User: Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=rYqtyWgh; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=mCzRY+c3; dmarc=pass (policy=none) header.from=oracle.com; spf=none (imf04.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.165.32) smtp.mailfrom=liam.howlett@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") X-Stat-Signature: ieapek5q3oc1sn4r1erm87r7m5f8jbdj X-Rspamd-Queue-Id: B253140035 X-Rspamd-Server: rspam04 X-HE-Tag: 1657590640-482430 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: When the possibilities of finding a gap are exhausted at the root node, the error code was not returned which results in returning a range that is currently occupied. Add the necessary check for the error code and return to the caller. Reported-by: Alexander Gordeev Fixes: d0aac5e48048 (Maple Tree: add new data structure) Signed-off-by: Liam R. Howlett Tested-by: Alexander Gordeev --- lib/maple_tree.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 9dc4ffff18d0..14e9ab14c1da 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5287,6 +5287,9 @@ int mas_empty_area_rev(struct ma_state *mas, unsigned long min, } } + if (mas_is_err(mas)) + return xa_err(mas->node); + if (unlikely(mas->offset == MAPLE_NODE_SLOTS)) return -EBUSY;