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 AF447CD3431 for ; Wed, 4 Sep 2024 08:01:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 446046B0203; Wed, 4 Sep 2024 04:01:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3CD826B0209; Wed, 4 Sep 2024 04:01:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 220E76B020A; Wed, 4 Sep 2024 04:01:47 -0400 (EDT) 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 DE4016B0203 for ; Wed, 4 Sep 2024 04:01:46 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 8BC99140E5F for ; Wed, 4 Sep 2024 08:01:46 +0000 (UTC) X-FDA: 82526311812.17.0AA2220 Received: from mail-ej1-f48.google.com (mail-ej1-f48.google.com [209.85.218.48]) by imf02.hostedemail.com (Postfix) with ESMTP id 88DD78001F for ; Wed, 4 Sep 2024 08:01:44 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=eDB03X26; spf=pass (imf02.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.48 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1725436808; h=from:from:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=rtO/ccTkYnFaCCKGmM6SA+xIkxjX6VS63GO51IXUFTM=; b=6Z+PYVQX8KcO0faFQ5TkAKSKPGGZZONey7saGgKDa8VGFQB3V1Uh+VuTsnX735JqhJ4ppg rrObd2IUg0wPCifRzPS9ilXPLT6zc66QU7npJtuLKGnqaaM0hzdkQuq0xXJ8T5BI9gEUAw cUaX8Bl3b1ZObzQnwSAk66R9D4DzidA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725436808; a=rsa-sha256; cv=none; b=MmdMIos1mIeYY7uUGZC/XD1oXCQMqzvNDPo98jAB1v6PC+B6LhY7dmY3R7A8xVfcN4NdjG 9fuzjPQLqtCEDV4/8X1IMBZ389d6AlnJvHKGyDgtoT02mjaV48vI3fyhmtGmHGr+eiMZYU YaWlgnaaqhx6qGvwLOgeloQruX+Sh0c= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=eDB03X26; spf=pass (imf02.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.48 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ej1-f48.google.com with SMTP id a640c23a62f3a-a86910caf9cso83468066b.1 for ; Wed, 04 Sep 2024 01:01:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725436903; x=1726041703; darn=kvack.org; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=rtO/ccTkYnFaCCKGmM6SA+xIkxjX6VS63GO51IXUFTM=; b=eDB03X26/Kla6KDKl5IYf/UGDRyN23fMhb1KmR97q0ePcLIpOWeaUvDKlbXgDkHy2m LVYUBEx4qqqAtl2mNujsEX0neLITcsWIId6YGYoOtqHN6mVdGuhA/Siy1wtw7HUBLz7s 2+iHF6y0W+EG7DXI14RGgM/tl9/YCuH6d8/KvRjfXyQ53EpM68ihpa8/p70jFRpyIMP0 Vay7V74DTxkuKI0G32ZQaQg39GSbs9NkfierPVyOJYpHmWfZf8s9JQZpM8jCPr77SH/b 8Cw/BNyHgPDPYAyRMrK+aRDOC4jkH+3omHf5z6M4CRB0yOgj6bH5HLgqPC/oVneXF7Vx dcZg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725436903; x=1726041703; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:to:from:date:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=rtO/ccTkYnFaCCKGmM6SA+xIkxjX6VS63GO51IXUFTM=; b=UzHrMHEDnmXWAt22KQa+fxmaZr2p4haDsd1Xghpqb9G/geh8jlS1+QENGQOPo6gczi OX5vqbLPQF5rXB0/p+vD2NZtQ2jNkBvKFEeloVlt2MC6RZiQweK2BTv9EwLuyaqzWGgU jlm4YeTj1seV13iqhco72y9GCQrBSfj7UFX2nZidPCYmHhNZa9Psl1/OIRSdrKABAarC fFeObNRB7p1lIWtBONelUXHJ6OtJRAlM520urQLm5Vl4T9V65+rXpS4MUT3bKSQo8LUl sx/Yq8Q8wRguo8fLrHCvk6Vl9QMZLgZEc03N5SSviz9yVPwXHsAFX7ajxcyqovAyOFyT +FeA== X-Forwarded-Encrypted: i=1; AJvYcCVG3gp7m7IYqzAUXdWsWb+7dOXRD5zKT8tt0sXMxaX5GnZAcKxbP/KQuY7Z2i6xO9e+NZJULMRToA==@kvack.org X-Gm-Message-State: AOJu0YzDFDJbt/EctxE4HX8dRFEILmmUpmnDsM1sU2H/+XUXck9G1EB+ ONLjN5LGbJI1OwQA/Cathj5UVTB8KLExP/JQ6mMJQjpO5409FLI5 X-Google-Smtp-Source: AGHT+IHbu66uLAj/lO/VnOswse8L3NFWFbpoyH7MIutMqrXdfkUs/0nIdnWgtu4uSEsKEHm+n8f0og== X-Received: by 2002:a17:906:4fce:b0:a7d:895b:fd with SMTP id a640c23a62f3a-a8a42f8ae77mr110544366b.6.1725436902707; Wed, 04 Sep 2024 01:01:42 -0700 (PDT) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a89891db42fsm767814566b.184.2024.09.04.01.01.41 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 04 Sep 2024 01:01:41 -0700 (PDT) Date: Wed, 4 Sep 2024 08:01:41 +0000 From: Wei Yang To: "Liam R. Howlett" , Wei Yang , akpm@linux-foundation.org, maple-tree@lists.infradead.org, linux-mm@kvack.org Subject: Re: [PATCH 2/3] maple_tree: use mas_safe_pivot() to get the pivot range Message-ID: <20240904080141.mc6agi55m6wosfev@master> Reply-To: Wei Yang References: <20240831001053.4751-1-richard.weiyang@gmail.com> <20240831001053.4751-2-richard.weiyang@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170113 (1.7.2) X-Stat-Signature: oo85w4x5dj6ofgkzyk1kbrckxdm5dtcw X-Rspamd-Queue-Id: 88DD78001F X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1725436904-366518 X-HE-Meta: U2FsdGVkX1+fs3p7xH/ZU/gT8BP1SO6/Q2JrVXLouCbZXq2nR683rFKWOfCX/nWATChmaKzMasPpaHT0hebf7+r/lz1QkI379rEq9Did6Yadnm3IY7wREY/EOX5dbAn4FqUKMeVa9xuFzgva389rfJ7e4Fr9QC8Cr2DttXdWJ4QDEPDwQySTYzAndSelN7FRAXspOVPaGefCj8egcmfHnu1EgsYtzFASYIGjq8H72rbQshfWRvBXHCofTrUDorxfOwjeqNQCXfxnfP17en7+ShT3u+SCdJ/aj0FYfXimIEoYo0KSxK2Txvr8PYEiQFTSnA1ccdwQdsHhhcqSC144uoG0XGtnSQAzgjUawVVJwNStRri2hghgHmm7LNL2Zc5GpTwc7VIK/b6Z7VQKgZAB8+SFuTZ/MBgtOED8g9FkXILTi4oY6UkzW/tApeyFQvFMeO5MonE3wmLz/mNhcJ8yKhnteD0OFL3gKB9FjliV6zBagv+AeK5Rfajh1qU8bWCxO0ziIv2CCFFa3lEQX8Lz9+cgb19ASnHEo7riGxqzFZIniseBsszIm5YnRyx0lC4ujA8uoazNxnCYvQvRYRi4rp3IJiPoHZ98cx+O4vc/fhQVaBxbgWivS7gJV3h4Pl7XzYEXaFsIIcWL40zQy8OJWVw1w5HzKjHIfsPert0Cxcj90wSByHAd+TaLHQZBUsq7yvwaPL9IpXvRux9Fvl/gTBlI2fwiTQqPf/dAH6cLRgCLfe53jXNm89ry1g6xrrLpwP2Fq1F2Fc/ihA3IKaMYFYfjHDXS/ItK5gJO+SGk20FeT9ucMbDYQOLADSgS3t8uDlwsxJBXiyci5VpAdT8wtGB9fmxTocl1EhzIlh3V0MdvjAGuo5iSYG5r9hwxN7pVvz3+8yczQ7e5yvCSlCe++TmvTLH2Y/QV0vo8lndeAKSz0bsUHXfheJaEQadQ8ZPneotG8uX28f5PqCcf40/ BxEw+Ael HnU2LrePaHoMnXlE0cqib/qp/5YKT3gx2TrJOANlbQli7YLNbRoQ9SzL5f12M4134H1WgH74Fxnjno7XwZIvMnX8tcZFO4KAOnel1Yi3JXRbwF7iJ1bEMUk+DGJ+uCEqeg530+fxR8bG2N+y3UwbVwGGh6G/ZJW1K6FBnKY5U7mB0FcGqdfrc2d5IrSn3xVuROEhZ4JpYgSRZo39XEleO6xqkVtZRHRmhazPFjl+9b9M9inuAjIK7lgfUTyicL0ITgUcPTDO9RuZJuIMnrnMr3R+TQxZzJGEcZ6ue0p7oLSZ5vqmeJXq7d7JeBGkJ1CfqGdSx7eRDIYR2HpFIIdUeXP3z9ie/ffNp7OQINvfLeSdLjbyGy2mjgPyDxHCbpTJ8XT1G5YRHLXQrKalD5ebfd0nTttBehe4XJ1zAe8V0LimRFDs9SnArJ9ulBdXxH+HuAeH2DtLCV7PJ+8oIlKaM0MpOA8LRK78CeHucMJN7GAqBvshg6yeuZBTtnQZ/Ev2vk2sQDvs5WUppW02TtynDSbFRjrjhRqRsWMcaPxvZm+K7SsG+uqyqHSFf6Jri7TQ/qJISWsba+BYXj00Mvmtq5cKaSSoPXzrYAlJcZdt6e3fbNjfJUnONPebSfCKjJScVngdR+Ys6vqCLh5o9gyOJj0mwhdK2BP7M8FpNPKGV+J/8pry8pEpmhfCpn2TCCKDCFWZJaNTUo4+PWSOZ+nxvV5xR9qhisCEpbw1l X-Bogosity: Ham, tests=bogofilter, spamicity=0.000079, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Tue, Sep 03, 2024 at 08:41:54PM -0400, Liam R. Howlett wrote: >nack > Would mind giving some reason? Besides it call an inline function, is this wrong logically? >* Wei Yang [240830 20:11]: >> Before modifying data, we need to walk the tree to locate the >> maple_node. Also we get the range boundary at offset/offset_end. >> >> For the upper boundary at offset, we have defined function >> mas_safe_pivot() to get it. Let's leverage it. >> >> Signed-off-by: Wei Yang >> --- >> lib/maple_tree.c | 16 ++++++---------- >> 1 file changed, 6 insertions(+), 10 deletions(-) >> >> diff --git a/lib/maple_tree.c b/lib/maple_tree.c >> index 85668246f944..17533c246749 100644 >> --- a/lib/maple_tree.c >> +++ b/lib/maple_tree.c >> @@ -2185,7 +2185,7 @@ static inline void mas_wr_node_walk(struct ma_wr_state *wr_mas) >> while (offset < count && mas->index > wr_mas->pivots[offset]) >> offset++; >> >> - wr_mas->r_max = offset < count ? wr_mas->pivots[offset] : mas->max; >> + wr_mas->r_max = mas_safe_pivot(mas, wr_mas->pivots, offset, wr_mas->type); >> wr_mas->r_min = mas_safe_min(mas, wr_mas->pivots, offset); >> wr_mas->offset_end = mas->offset = offset; >> } >> @@ -3987,11 +3987,9 @@ static inline void mas_wr_extend_null(struct ma_wr_state *wr_mas) >> (mas->end != wr_mas->offset_end) && >> !wr_mas->slots[wr_mas->offset_end + 1]) { >> wr_mas->offset_end++; >> - if (wr_mas->offset_end == mas->end) >> - mas->last = mas->max; >> - else >> - mas->last = wr_mas->pivots[wr_mas->offset_end]; >> - wr_mas->end_piv = mas->last; >> + wr_mas->end_piv = mas->last = >> + mas_safe_pivot(mas, wr_mas->pivots, >> + wr_mas->offset_end, wr_mas->type); >> } >> } >> >> @@ -4016,10 +4014,8 @@ static inline void mas_wr_end_piv(struct ma_wr_state *wr_mas) >> (wr_mas->mas->last > wr_mas->pivots[wr_mas->offset_end])) >> wr_mas->offset_end++; >> >> - if (wr_mas->offset_end < wr_mas->mas->end) >> - wr_mas->end_piv = wr_mas->pivots[wr_mas->offset_end]; >> - else >> - wr_mas->end_piv = wr_mas->mas->max; >> + wr_mas->end_piv = mas_safe_pivot(wr_mas->mas, wr_mas->pivots, >> + wr_mas->offset_end, wr_mas->type); >> >> if (!wr_mas->entry) >> mas_wr_extend_null(wr_mas); >> -- >> 2.34.1 >> >> -- Wei Yang Help you, Help me