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 AA782CD37A7 for ; Wed, 4 Sep 2024 00:15:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 29D638D01FC; Tue, 3 Sep 2024 20:15:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 24C568D01E4; Tue, 3 Sep 2024 20:15:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 114128D01FC; Tue, 3 Sep 2024 20:15:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id E76528D01E4 for ; Tue, 3 Sep 2024 20:15:30 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 8A3DE1209DF for ; Wed, 4 Sep 2024 00:15:30 +0000 (UTC) X-FDA: 82525136820.09.EA36564 Received: from mail-ed1-f43.google.com (mail-ed1-f43.google.com [209.85.208.43]) by imf11.hostedemail.com (Postfix) with ESMTP id A37F640016 for ; Wed, 4 Sep 2024 00:15:28 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Sk0LRCsO; spf=pass (imf11.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.208.43 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=1725408881; 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=vWflxVQdfNbd8wj/MUuniwtLMrTO6WXm22WYz0ahgkU=; b=gXlVmYD1nAKYJVclGVZ6pR1e7vWfsfqD7YCt8jC5/eHZsTvLx+TqLavwifguo9iLgBl+tM R2d4OP/AXuHDXpgW5a9wKFbEa86/7p2EUmyLDodiVwFCnOLf3BvRiVLA2U0CJR7g6izmQ4 gEDmjjHrFB/3zsTrN8oRIg+OUutRfEw= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Sk0LRCsO; spf=pass (imf11.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.208.43 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725408881; a=rsa-sha256; cv=none; b=Gco9eFO97faG1ePsiJRKGkZ9Rlyo3lS0lX4G9tp0Xzsm8vdx8+ktZgRDWn5pgyZtNv7ajK cOY4vUNIrJpc5smo3GNBFYAR07z+NGceaOCS5HfAhFw2563qDvbraAUV3dJoNRAISYVYc5 I24ncz5AD3f0jOJCoVR5EZLdDX2Fyi8= Received: by mail-ed1-f43.google.com with SMTP id 4fb4d7f45d1cf-5c09fd20eddso5607754a12.3 for ; Tue, 03 Sep 2024 17:15:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725408927; x=1726013727; 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=vWflxVQdfNbd8wj/MUuniwtLMrTO6WXm22WYz0ahgkU=; b=Sk0LRCsOe8SSOtEyX0oAik9WnmS9hwwy6pzelk7/quDO5fyv44HqILPrdNz5dOQIfU 9HadvjCW2+TdtkxLI1CYfDcI1g5eqQNoMrqHGk1K04xBUH5I8WEfuovF21QTUKldqPV4 VVWNA+GNFeNjQCQXyC9gNhb5GgLuwp2twDpHpqsCitWBFC0ZOitZru4biwb3gn/Fa1wX jTvsTJracuX2UtswzUrospTEPf9uJGISEQwmgSVnjdWQA+949CCouFgVXhP1GiBditCV yQMH/JZ0znXZpN/8ViBEzx70eInQk1NkAgIAZM2diwIJs6zebGymQFmP0zw0U440YnSi CnEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725408927; x=1726013727; 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=vWflxVQdfNbd8wj/MUuniwtLMrTO6WXm22WYz0ahgkU=; b=KFdUFeAGx56MvJafLOx8JkMHpADQCCjkSENmYwLdZcwSiBlYljeIgJ1ARy/wmU9DS+ GhCAf9Pfknl5tUWKp5GW5CKNSBClK0Al/nNWl8ACRbTt9LjocadlDsh5AOI4ii9lHKcs Vr9P8vd94MvT5ZtoGSwmuTKO2P0TV4SnDDH0FDmdSMEGws6zNy2GNpf3mgZCUnt4Wq69 poT8y+7fJLTB8CzFWosGTzgRractU46zcX9p1NdnOTBFBb+eev/tx70ho/c9+DuzJzO1 Qbt6QZlkADW2n8EE3BS2GgKNZA/d3YQS2DAsdwMD8nkCUBGS94ahxk9aC/mlC88gEYlk GuuQ== X-Forwarded-Encrypted: i=1; AJvYcCWY3yYkylc00wsP/QdDTVUq7lOsNtf9RT6Obxq3PkwkPtICBGINATdM3b3KfiGQx1swUvIxlESm/g==@kvack.org X-Gm-Message-State: AOJu0Yz/YXGOgywvETr0SyoyYL+6OKDHrUbRF4QK7YRHBnxuZxKWH/0Y jv8Hcs4BZAsWlPA1qBzpYWjd4/l6qkyPY6j/GP+YPmXhe7mI1+H4 X-Google-Smtp-Source: AGHT+IHVGV0/80m+MDoiQZ2wwcmoSM7ta7WD0rKsHxhLRP7QZxG2gmuqUc8dud1yIe1YpyOVP+GOdg== X-Received: by 2002:a17:907:7251:b0:a86:7c5d:1856 with SMTP id a640c23a62f3a-a897fa744a8mr1676082866b.46.1725408926754; Tue, 03 Sep 2024 17:15:26 -0700 (PDT) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a89891968desm741956866b.130.2024.09.03.17.15.25 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 03 Sep 2024 17:15:25 -0700 (PDT) Date: Wed, 4 Sep 2024 00:15:25 +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 1/3] maple_tree: use ma_data_end() in mas_data_end() Message-ID: <20240904001525.5zshbivv7op4ana7@master> Reply-To: Wei Yang References: <20240831001053.4751-1-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-Rspamd-Server: rspam03 X-Rspam-User: X-Rspamd-Queue-Id: A37F640016 X-Stat-Signature: 7a9q7qbh6b5y7xckpz61bpk75sjnyhsi X-HE-Tag: 1725408928-595486 X-HE-Meta: U2FsdGVkX18XUUZ8O5iB734n5IkbQ0pXE3rbcA+VRkJfochuJfN5QpptjWZybfhqQ1fzYu1Fe3otlQwbfkvBOKIb0RhV/Ob3YPuclOmuWK585N+8udVExliadJUOz4odv82LNzbyZGAu68OmagAL5x0iMTw/WGXNHjwixM9wiBNkGPmllfRLHgmx49LIiOu76QFdi5QOO6Cs/3fon3+yzpnI1DYbdna5dD8avVdXC37svUvMDBejdUnWuYmnoQjrcnjZw2Qp5rWTvSBZVzjleak8QGStUNzFA8B+mfJJCyTcEDChw/6eDO9acI5wC7Ng6mhG01BkrrMsySU7F1R2A1nzga5plmHmmjnDsO5xGo5Kd3mXqRI/HdRI7y3ijtX8Y+vVSIs82QqJsvBbsPje4u8osd1zIghIdS6cDZwh9kBAGIU4gecYh82bC5PaFR4KrX2LL9z9+q74giNGpcqeqOvLghoX+L408G29mfmaqt+tT2sZBKK+rZO5+4j83dsmc9CmoljUZdEXZsOqOaCTDETrpRLGHeBLfAlbved9OOzSmZOM+gK5Rb7Ftm2RBWaU8kKCUx0+/ZE9pckivE9FwuXyfmiuQm5Vu41c7jQyt9RsoEmwcyL459ZVnBJdwAfawlFB8MyIRYFO55kPcG7zctoCQ+3jneag2ml/8DMZK9ISaU+IJt30sBUSzB3NQVxdmSrUyK8kURHXT3gdfOTLj5uTS08G3aKs7eTVYU3ZmvNEdQexXp5qf111CoKmLBe4ThRzYdrYm1n10PUNMY/z5633aYZBIY76cmMehLZ48jRHOU+0OEUcQCSqaONu1iwbmAIoFKuzaCVw6+7YEZg1CboesMHlk6aKooIzP6hntzbfvKim6wwtUx1FXLEpfLERQrdoIEq5l10kGmTPf5zFQRV7d3KWPKQAKLX6Oc1GC2Q5pSX67FMCvAyT/MFsQwTaCBLPi4NatbchfQUSxTz mpImY4EV 3HzI/cGU/n2E0iKCu2fMPMMLZ6wNm3myo6m/BeHn+BS27g8aFUFc5heJRMbdG9dx82LVXH2wi8mKCLE9YJ0/FoFxWmCPUwmv5IeT6v8zlwB1AWG9S3KUxyTkxJOtsn3Oj8BBe9lKzir4Nt1rRX/aV4yozt8okkUVH4W4AZ4TGN/3ow5CRuA2Lr20vBszqviLS7D1odjl3qje4Qv3rGIx+GVBSlIEqFE0UQDDKpeD9hxQYjUKTjWDYZvZqjhOuV2H8DFpJDYrBf35CNO/cGylqYnYnJT3ORihoTsFLYizNqxQ9yTKb5vWp+wNV7/KVvkirv6s+RU1ZitSc4N24aLCK4xW2kGRWCm83bdhJGiiKiEwPlMZJmDNE9Heaj8smkj6Ewod2rwLCJrvFDUw2d6A3C71fcjdhssgfTrQO5/PIHK6+hufvgeyQQaahWQ5L6ijn6q+wb79rgMEXRz5K9MemYsRttU1CLy6Ed2eUcQqTTxvC4HFV5qySnsiwU3AA4gZwdXU5/RO5mzHusUUpJvRyWL3lHJZP47wNTKVGRfM8eVux/p6lK74glos0N/2kvgn+JhuKuyH3mOujqqf59iMaVs+uCFJhr2dkN1ficLx34Ry4RzI2P24xPnXxJlcL9/A8E3WGUWxjfet3/1B+JDIDqgyYSS+UhtblYhBfMErrJTpMlVgGeI3f2JWaQkl+nA9LhWcr X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, 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 12:12:39PM -0400, Liam R. Howlett wrote: >* Wei Yang [240830 20:11]: >> These two function share almost the same code and do the same thing. > >Please stop trying to optimise code like this. I don't have time to >verify you are not making things worse and you haven't done any of the >testing required. > >I went through with perf to optimise dereferences and static inline >functions, so unless you are prepared to look at the generated code and >actually benchmark, please stop sending patches that I need to verify >like this myself. > Would you mind letting me know how could I verify the generated code and benchmark? What you expect to do? For example this one, these two functions share the same code. What's your concern for this? The inline function expansion? >> >> Let's just call ma_data_end() in mas_data_end() to reduce duplicate >> code. >> >> Signed-off-by: Wei Yang >> --- >> lib/maple_tree.c | 22 ++++------------------ >> 1 file changed, 4 insertions(+), 18 deletions(-) >> >> diff --git a/lib/maple_tree.c b/lib/maple_tree.c >> index b7d747a7938e..85668246f944 100644 >> --- a/lib/maple_tree.c >> +++ b/lib/maple_tree.c >> @@ -1435,28 +1435,14 @@ static __always_inline unsigned char ma_data_end(struct maple_node *node, >> */ >> static inline unsigned char mas_data_end(struct ma_state *mas) >> { >> - enum maple_type type; >> - struct maple_node *node; >> - unsigned char offset; >> - unsigned long *pivots; >> - >> - type = mte_node_type(mas->node); >> - node = mas_mn(mas); >> - if (type == maple_arange_64) >> - return ma_meta_end(node, type); >> + enum maple_type type = mte_node_type(mas->node); >> + struct maple_node *node = mas_mn(mas); >> + unsigned long *pivots = ma_pivots(node, type); >> >> - pivots = ma_pivots(node, type); >> if (unlikely(ma_dead_node(node))) >> return 0; >> >> - offset = mt_pivots[type] - 1; >> - if (likely(!pivots[offset])) >> - return ma_meta_end(node, type); >> - >> - if (likely(pivots[offset] == mas->max)) >> - return offset; >> - >> - return mt_pivots[type]; >> + return ma_data_end(node, type, pivots, mas->max); >> } >> >> /* >> -- >> 2.34.1 >> >> -- Wei Yang Help you, Help me