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 B1F48C02192 for ; Mon, 3 Feb 2025 12:45:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4B08B280005; Mon, 3 Feb 2025 07:45:36 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 4394B280001; Mon, 3 Feb 2025 07:45:36 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2B421280005; Mon, 3 Feb 2025 07:45:36 -0500 (EST) 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 0A89F280001 for ; Mon, 3 Feb 2025 07:45:36 -0500 (EST) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 87461B4CFD for ; Mon, 3 Feb 2025 12:44:35 +0000 (UTC) X-FDA: 83078602110.30.7C414FA Received: from invmail4.hynix.com (exvmail4.skhynix.com [166.125.252.92]) by imf28.hostedemail.com (Postfix) with ESMTP id 0553FC000A for ; Mon, 3 Feb 2025 12:44:32 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf28.hostedemail.com: domain of honggyu.kim@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=honggyu.kim@sk.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738586673; a=rsa-sha256; cv=none; b=PWtQjWsPOasKbkGCyREu2F3gkFpXWDO+x7Qex/yjcqyH0puPuDc9rO3slg4cLDAQBniWeo F8uMUeIoJpJta3IFEX8n+0S73bzpSN70i3VApu+RufZlUuIA/0TgDnjkqgZw3zZq6E8k9T x3sAkxovZ0r4jnw5BQYpoI6mWI/rgt8= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf28.hostedemail.com: domain of honggyu.kim@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=honggyu.kim@sk.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738586673; 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; bh=XYyQKmLVpRICRfrDL8+hFOHdf6WogQkNc+nhopAqTgQ=; b=ltJwsj61pWBpGOVRV05jED6BUCUZAJr8vLfeQSYWqnXv2R+P5D2pk+e8eVB0eFtTZQInRq KN/IxutIfi7Uyr9vZgi0Ee7L4iMoukQoAAcXRMzNkIJ5DXczJZ7lSD+UYKZnkC/T6Czj6b pG7hO0mXu2Tn+k0R4K9aL77qCl6xD7k= X-AuditID: a67dfc5b-3c9ff7000001d7ae-5c-67a0ba2e234c Message-ID: Date: Mon, 3 Feb 2025 21:44:29 +0900 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Cc: kernel_team@skhynix.com, Gregory Price , ying.huang@linux.alibaba.com, rafael@kernel.org, lenb@kernel.org, gregkh@linuxfoundation.org, akpm@linux-foundation.org, rakie.kim@sk.com, dan.j.williams@intel.com, Jonathan.Cameron@huawei.com, dave.jiang@intel.com, horen.chuang@linux.dev, hannes@cmpxchg.org, linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org, linux-mm@kvack.org, kernel-team@meta.com, 42.hyeyoo@gmail.com, Honggyu Kim Subject: Re: [PATCH v4] Weighted Interleave Auto-tuning To: Joshua Hahn References: <20250202141247.2219681-1-joshua.hahnjy@gmail.com> Content-Language: ko From: Honggyu Kim In-Reply-To: <20250202141247.2219681-1-joshua.hahnjy@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrFIsWRmVeSWpSXmKPExsXC9ZZnka7ergXpBmtWKVpM7DGwmLN+DZvF 9KkXGC1O3Gxks/h59zi7RfPi9WwWqzf5WszZeYfZ4nb/OVaLVQuvsVkc3zqP3WLfRaCGnQ/f slks39fPaHF51xw2i3tr/rNazP0yldli9ZoMByGPw2/eM3vsnHWX3aO77TK7R8uRt6wei/e8 ZPLYtKqTzWPTp0nsHidm/Gbx2PnQ0mNhw1Rmj/1z17B7nLtY4fF5k1wAbxSXTUpqTmZZapG+ XQJXxue9uxgL/olUzL01gbGB8bZAFyMnh4SAiUTv4ndMMPabuTvYQGxeAUuJSysfsoPYLAIq Er/ndLFDxAUlTs58wgJiiwrIS9y/NQMozsXBLPCaWeLV1HVADgeHsIC5xNflKiA1IgKaEida JzGD2EICdhKHLjWD2cwCIhKzO9vAbDYBNYkrLyeB3cApYC/R3X+fHaLGTKJraxcjhC0vsf3t HGaQXRIC59gl2tfsZYU4WlLi4IobLBMYBWchuW8Wkh2zkMyahWTWAkaWVYxCmXlluYmZOSZ6 GZV5mRV6yfm5mxiBMbys9k/0DsZPF4IPMQpwMCrx8J7YtiBdiDWxrLgy9xCjBAezkgjv6e1A Id6UxMqq1KL8+KLSnNTiQ4zSHCxK4rxG38pThATSE0tSs1NTC1KLYLJMHJxSDYxh62/ofC3x OhKu4eGjWhntvqL0Z+La+fsCPQ6++C8UsFrJMHdWhJfVqi83DNiLg6IrP1RpKa5Ys/KuNIuv XvEzDWFuOW8fZ29LzveHNt5ynN1zSq5v6YL9mscljvKdvXLTb713zmyTaJ2NaxzyvNzKHp8+ 9OLwn3hhyYqzsat2sL4MnyRn2qfEUpyRaKjFXFScCAAp8lm43QIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrFIsWRmVeSWpSXmKPExsXCNUNLT1dv14J0g/YVQhYTewws5qxfw2Yx feoFRosTNxvZLH7ePc5u0bx4PZvF6k2+FnN23mG2uN1/jtVi1cJrbBbHt85jt9h3Eajh8NyT rBY7H75ls1i+r5/R4vKuOWwW99b8Z7WY+2Uqs8Wha89ZLVavyXAQ8Tj85j2zx85Zd9k9utsu s3u0HHnL6rF4z0smj02rOtk8Nn2axO5xYsZvFo+dDy09FjZMZfbYP3cNu8e5ixUe3257eCx+ 8YHJ4/MmuQD+KC6blNSczLLUIn27BK6Mz3t3MRb8E6mYe2sCYwPjbYEuRk4OCQETiTdzd7CB 2LwClhKXVj5kB7FZBFQkfs/pYoeIC0qcnPmEBcQWFZCXuH9rBlCci4NZ4DWzxKup64AcDg5h AXOJr8tVQGpEBDQlTrROYgaxhQTsJA5dagazmQVEJGZ3toHZbAJqEldeTmICsTkF7CW6+++z Q9SYSXRt7WKEsOUltr+dwzyBkW8WkjNmIRk1C0nLLCQtCxhZVjGKZOaV5SZm5pjqFWdnVOZl Vugl5+duYgTG6LLaPxN3MH657H6IUYCDUYmH98S2BelCrIllxZW5hxglOJiVRHhPbwcK8aYk VlalFuXHF5XmpBYfYpTmYFES5/UKT00QEkhPLEnNTk0tSC2CyTJxcEo1MK59pb/yn+q0J7H/ r2Rc6/uXkuC4a/nsnpxJRVyH/26SVo4sFeP8qrVotmCH7q8oz+uad+6o3154bKFSdmnNQjcL zbLOgq/Bdz/xmKy3mj2Bj2OZYVznvVkLHkzy3Xz8V+aJ57nqR5bfrrjc5rq9LrdISPC/UZjT b47pjC9PmvsZlh75rb/sxiQlluKMREMt5qLiRACl6TpzzQIAAA== X-CFilter-Loop: Reflected X-Rspam-User: X-Rspamd-Queue-Id: 0553FC000A X-Rspamd-Server: rspam10 X-Stat-Signature: f4m7nn3ch3i3gojx1uho7astzm75h7x1 X-HE-Tag: 1738586672-208479 X-HE-Meta: U2FsdGVkX1/Ggyt0QSIZjBqERjwu3UtWX92CovqI1/YkK+oLznx8PV5pU2FuyNh0YaP7btmkD2Ci0jGmWDTzyee3d8hHuPD1WCFpZ8/6h1RmYS+3ZRdhG+QRrLum+/QutakYUWN9T6TS2kmD20BvaDaOoS1rz8yIlUXefIpphY0Xiv7qXm7YHjW3kqDv/6IY+uulSMj8RolCPsu95/x96JmRXW7oyxZshP1CnzVP7jatDr4E1dubVDf3pBprmC3+KvV/nqN6HwIqlpbBxWVN/J64bFr+tYNH2WtOwBDRScVJHmfXUouz7UbyUOugvtFyDTL7xsMfehB8t+doOLLFtYk3rivfBaAXbLTk+psxU0/IaBOqpP9goPeyucazp70lggzyMK5tenPINnwe/gmV2OD6ojEqzPX5/SpQkUnRdEYeJ8d9yEJ1niZJsBMI958OnZOgKvTxrVmgvjCY+H7Q1W1gPzRuaRg8Zdepb1jHjnZDvDnowX/EINFSc8itXYcnwcXUpyzDUmfUlhVYJC1w9O236eEuCzKR5hIGNvvRN15VvnpmSEcqFJtXKeiKQcoj3szQGugWzKxnX6w94MXPleptdI/E4hTANy4or4lVXzjJyo9JLFYmpRX+2HGGCoD9Gh8YEqxcuvxI/yBwYuTLBXeAfLUFOX0CUgQeSN9ylxp+cZzwN5f9ng/vxvbAcPBuj+IncBHLwV8KeuOS0zL5V1NTIZPN36Jzr+ZVh8Sa3lfiRtfT0AXklk3LAx2AqILuVR92VerOnLYkAsCCyIoGm4yN3s6YljojwsZCPAvv74V0yyOnRa6BDcuCR/LmgBWHx5udEC7TGE/UbQSww36Hb7MNpOIZL985vdVLCA1vsfrMEKV+smB7AsqEqWvvX22OYGwUXFxiNn7RlWe/yE4fXafu+IklEyrInSjiMjRcggR7rbku42mNXmbFSzZJyctvamCpHhFzB+crHMjBmPK 6EQouosn gNDuUoMwBnDGJdPvgJQoYHBuNCpszQIXuD0MXDoDzyEkvExxlr4zSGxfYLYaGYaafqKq1EnBWWreDPLy6ZEb691LLBziiJHVrRb86iopt/QKbt2p+sGKdtqpCXA== 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: List-Subscribe: List-Unsubscribe: Hi Joshua, On 2/2/2025 11:12 PM, Joshua Hahn wrote: > Hi Honggyu, > > On Sun, 2 Feb 2025 22:51:34 +0900 Honggyu Kim wrote: > >> On 2/2/25 01:53, Gregory Price wrote: >>> On Sat, Feb 01, 2025 at 11:49:31AM -0500, Gregory Price wrote: >>>>> 1. the auto mode set the weights as 10:5:1 for node{0-2}. >>>>> 2. node2 is offlined, then recalculation makes it as 2:1 for node{0,1}. >>> >>> Point of clarification here: a hot-unplug event won't cause >>> recalculation. >>> >>> What actually causes re-weight is hot-plug reporting new capacity. >> >> So do you mean re-weight is done only when a new node is onlined while >> offline doesn't trigger re-weight? >> >> I see node_set_perf_attrs() does recalculation by calling >> mempolicy_set_node_perf(), then reduce_interleave_weights(). >> >> But I'm not sure if the re-weight is done via node_set_perf_attrs() only >> when a new node is onlined. >> >> Could you please explain where I can find it? > > Just chiming in to add some clarification: > Your analysis above is correct; reduce_interleave_weights() is only > called in 2 spots: once when the mode is switched from manual --> auto, > and the other when new bandwidth data is available, which calls > node_set_perf_attrs() and so on. In all other scenarios, iw_table is > preserved, and all values inside remain the same without manual changes. Yeah, this part is clear. > A node offlining (or even onlining with no new bandwidth information) > will just mean that the node inherits whatever value is stored in > iw_table at that moment, whether that contains the default values > created on init or the last values that it had taken. It looks the call sequence is as follows. cxl_region_perf_attrs_callback() -> cxl_region_update_coordinates() -> node_set_perf_attrs() -> mempolicy_set_node_perf() -> reduce_interleave_weights() I haven't searched all the paths of cxl_region_perf_attrs_callback() via cxlr->memory_notifier.notifier_call callback pointer, but maybe this function is not called when a node is offlined, then I get node offlining doesn't trigger re-weight calculation. By the way, do you test it using CXL hardware or using qemu? > >>> So in this scenario, the weight will remain the same for node2. >> >> If it's true, my scenario is wrong. >> >> Thanks, >> Honggyu >> >>> >>>>> 3. the auto sysfs interface is set to 0 to make it manual mode. > > Please let me know if this makes sense. Thank you for your review > as always, and have a great day! > Joshua Thanks for your response. Have a great day you too! Regards, Honggyu