From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id C1273C25B50 for ; Mon, 23 Jan 2023 21:43:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 15F186B0071; Mon, 23 Jan 2023 16:43:48 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 10D396B0072; Mon, 23 Jan 2023 16:43:48 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F15636B0074; Mon, 23 Jan 2023 16:43:47 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id DDDA06B0071 for ; Mon, 23 Jan 2023 16:43:47 -0500 (EST) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id B1936140393 for ; Mon, 23 Jan 2023 21:43:47 +0000 (UTC) X-FDA: 80387391294.16.00B87FB Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf16.hostedemail.com (Postfix) with ESMTP id AD465180016 for ; Mon, 23 Jan 2023 21:43:45 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=qfzS6wer; dmarc=none; spf=pass (imf16.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1674510226; 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=5gwh2pUJqLSlZFH9jRyBwhV4E3beDZxRaPFfOToEpFM=; b=XS3ctzBdV0fg0Z1gR+rucuox171LM3/LQqtFnbpSy7wAxSE7bfK/26D1I+tgqKrNpvPBeK 2Agh8YefE2PPHrdt8AEOq7sBxUwSvTkXxN8jsV/wIn+Zz1TfjfiTsEzzbLcOr4BRmua2Kc pcP/2hYURCQZGC5ybSZkPXMBCt1kDLY= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=qfzS6wer; dmarc=none; spf=pass (imf16.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1674510226; a=rsa-sha256; cv=none; b=wPSzHqe+gTOn8Mj0T48DNeybF/Cm3GO1OthtqvXW1r/6PIpZiTkO4W5efJbqje/LVtL3rU KkUshR1z2GoHaBGipk7+u1PK8Y9AgNQJSrB7G4KnQ4aXHzWJ/ybCMdCzp9actgt9bUGWYr Axgg8qvy4/TfKWkuNTCUQSvXqj9yaKA= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 2D4D9B80DDA; Mon, 23 Jan 2023 21:43:44 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A647FC433D2; Mon, 23 Jan 2023 21:43:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1674510222; bh=s9OQmsSE6hF3mWRQ1LHeoX+JrnuEq95UKv7kN6OTMsA=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=qfzS6werlmRKcsJzQWqnprzjD5nFyrhGlZl2H4WlRVwAuxeJjNNo8txRX87kBLqLO fd8Vnww8Nk+47SC0jEwMTOEWGh6dGaV7ifj1JtY11kH96CgksoRrXE/rZDbKxEpMp3 Ld7Pk0y6gPkLkbgsJDKNdMpzKdkdhe1/Sh4+iDWM= Date: Mon, 23 Jan 2023 13:43:41 -0800 From: Andrew Morton To: Wei Yang Cc: Liam.Howlett@oracle.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, "Liam R . Howlett" Subject: Re: [PATCH] maple_tree: should get pivots boundary by type Message-Id: <20230123134341.2514c269a07ad9e7989921c6@linux-foundation.org> In-Reply-To: <20221112234308.23823-1-richard.weiyang@gmail.com> References: <20221112234308.23823-1-richard.weiyang@gmail.com> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: AD465180016 X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: add3nyqqryhhoqd6ek6jn89prrzbyzok X-HE-Tag: 1674510225-835716 X-HE-Meta: U2FsdGVkX1/kR7kPw9c7D7uJ6Q+Ciuh3d9rY9T8vF4QlXNCOr/CK03ZtbUuGH+r+krjY9Ry1lftWZjSq96gYCfgrOJn3c4Y1vdjdNQJeVXNmHgllYFWvtKVCmymOcLhO31mLEbt4PEKA3cXx87ovPmVSxKxhFStcrioc/MjxP4r6YGSQzYNYgMHnjUHZ17QlvHG3VNfctxVDrW2q9ecbFkmTQi/CZBLVJ+/S2hTzo+dkbk2tu4ROsYp3CxKZt/2cqs64MnXTTPIbLFM7zmNlZTBjKaSVH2yJOeu8zkgJJms0hZzDc6yjCVQ6ncrVC8CH0vcFtJ7AG7PWlf1kT+ALuQy5iBgLZOG9/5WmJO8Tl/KjwktODzHnvYuxmWxiUTgmx4OCmOLGpgXER7Fp5+O/v29Xa5Cmeu4BjYlb38DTNWOQlxYABkbos7J4bJeCAhuz/+R3Chag6Y0tipYHO+0GFdw4LN5e2qUgN4PZitCurXA3g569UqZoRmJI5kO7dB7GaOL/5/RjSg7rkG55GfGyWO5VY5K+whB5R6+zWXzq63XV+ChBn+Ec3t2srnOLoAO9Fe/K3VbGlOG+ML7FyClcVVBui0R0+/tWmom/AIc+43o0nWaL6fcNSppTqu1cybTIKWoS4rlV2yB06YVpBsepKZ9lmy/Smwf6w3jIJPzW6CbhXdsrsAFZveV5zRUDKfvgyIPj0IVYKXRQgjhpK3Fef8BfRUxqUlvwRI0KHNU0ZacDkmRJqzDHWlTY6xeNi91BZCNBfrayOsvAtEW0vaJ9Zu3fh2dk+xu+UvbzUBOakYzJRGNAHeI/9y7KnLiFrHSVudHvr1KEdesM4D8IDGmYhhs4Ss3XU0Tfko3hcNaOjsaMtM/kLglq79yKbsYawZj2ojfZrLL6AJB64YPjVkRVvXbsIPQ6G2yaUShcSFM9QAYH9mNADeMjnF0ihvyRsWeepBwsO3RNulgoi1Nggg+ /LGsWR4M hpPo0dfz8gI/44jUS1YlpKRiibi+nmS4moPp1FVEPVyOKYQ3SCAMdMX9l3vRBVUb4OknHI+QJus6x6HJrGXpoUs7Fm+2smiB9bXiq0IdfNb8OlbU0jTpL1Xns3RWzYvL/LxmsmahSIxRqC7E+zvpmbfeCv1N/AnJ6pTAm0dj94u0o57iSKklcBete2IVbwxvU06SFflw6MetRH8ZNRb42fqukMML0U4d+BvuydM9VYp6uHnDIwEwyKuCCidnS9iioFNMlOtkE1oNDYErQjYAC5vKqxAlmHH5oTMNZ3tQ9b879PZQ2HY4ZaIyJMQnK1xNJg+vDwezzDCfAaRh8HrnSoB7hindhGirUXl4b+DRnLQTsPDPgIpTGaDkxgBtIfINi2K378Rdq00zR9WR2tCduY0EdUKoDbD/xHxGXq3jqf4bXqAN3FsJwZyfgbsZ3n6Sr1WNb4uBu7N4MuG9yCgg+bqLkZoVHppbzuTVErMsB31rMUtI= 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: On Sat, 12 Nov 2022 23:43:08 +0000 Wei Yang wrote: > We should get pivots boundary by type. > When fixing a bug, please always fully describe the runtime effects of that bug. I see from earlier review that the bug could result in overindexing mt_pivots[], but Liam says this code isn't presently used, but mas_alloc() calls mte_pivot(), so I'm all confused. > --- a/lib/maple_tree.c > +++ b/lib/maple_tree.c > @@ -669,12 +669,13 @@ static inline unsigned long mte_pivot(const struct maple_enode *mn, > unsigned char piv) > { > struct maple_node *node = mte_to_node(mn); > + enum maple_type type = mte_node_type(mn); > > - if (piv >= mt_pivots[piv]) { > + if (piv >= mt_pivots[type]) { > WARN_ON(1); > return 0; > } > - switch (mte_node_type(mn)) { > + switch (type) { > case maple_arange_64: > return node->ma64.pivot[piv]; > case maple_range_64: > -- > 2.33.1 >