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 46748C19776 for ; Thu, 27 Feb 2025 02:32:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9DDB96B0088; Wed, 26 Feb 2025 21:32:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 98D1B6B0089; Wed, 26 Feb 2025 21:32:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 854D96B008A; Wed, 26 Feb 2025 21:32:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 68CA86B0088 for ; Wed, 26 Feb 2025 21:32:35 -0500 (EST) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id D37E8141533 for ; Thu, 27 Feb 2025 02:32:34 +0000 (UTC) X-FDA: 83164151028.18.7D0FBDF Received: from invmail4.hynix.com (exvmail4.hynix.com [166.125.252.92]) by imf27.hostedemail.com (Postfix) with ESMTP id 7237A40006 for ; Thu, 27 Feb 2025 02:32:32 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf27.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=1740623553; a=rsa-sha256; cv=none; b=cmPulnEUBoHY5ns3tgYsoD/3tA1a9N2zC8+MZGIUjP58tVKmldOVtJtmreSJ0pKpCBANdy xAj1rq6M5UNLBJ/h+wK/9MfZI4BcjGUHaGOxidP8Zy1+PfftYyVI8CjGDf3z5swLXmH4zm VIwvoz+6QcnbNgwfDArm/G/6CsAWM24= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740623553; 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=GsTCmK5Ffwg8DEX0VzadJA6rMV7VUTrOaU2ZcxoXKfc=; b=AF8W+RtAAV956GTwM/xeOeQgaA8UWIiUt9Ji7H+9Um1T/B557XJsQlh88zBjR96i8EWIo0 f25rbAlageRFu8HyhieENoZbxJyK6wTqYK9l/S8LUiMra4eWLbbjwWo4kA7XTotCGlvNvq 652ohm5Zwd/D+BRD+gkkePyrLXH8zis= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf27.hostedemail.com: domain of honggyu.kim@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=honggyu.kim@sk.com X-AuditID: a67dfc5b-3e1ff7000001d7ae-21-67bfcebd10c6 Message-ID: Date: Thu, 27 Feb 2025 11:32:26 +0900 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Cc: kernel_team@skhynix.com, gregkh@linuxfoundation.org, rakie.kim@sk.com, akpm@linux-foundation.org, rafael@kernel.org, lenb@kernel.org, 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, yunjeong.mun@sk.com Subject: Re: [PATCH 2/2 v6] mm/mempolicy: Don't create weight sysfs for memoryless nodes Content-Language: ko To: Joshua Hahn , gourry@gourry.net, harry.yoo@oracle.com, ying.huang@linux.alibaba.com References: <20250226213518.767670-1-joshua.hahnjy@gmail.com> <20250226213518.767670-2-joshua.hahnjy@gmail.com> From: Honggyu Kim In-Reply-To: <20250226213518.767670-2-joshua.hahnjy@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrNIsWRmVeSWpSXmKPExsXC9ZZnoe7ec/vTDZZcMbeYs34Nm8X0qRcY LU7cbGSz+Hn3OLtF8+L1bBarN/la3F/2jMXidv85VotVC6+xWRzfOo/dYt9FoIadD9+yWSzf 189ocXnXHDaLe2v+s1rM/TKV2WL1mgwHQY/Db94ze+ycdZfdo7vtMrtHy5G3rB6L97xk8ti0 qpPNY9OnSeweJ2b8ZvHY+dDSY2HDVGaP/XPXsHucu1jh8fHpLRaPz5vkAviiuGxSUnMyy1KL 9O0SuDLmX9vMWtArUrFvk2wD4yy+LkZODgkBE4l/H1oZYey3u7ewg9i8ApYS2zd9YQKxWQRU Ja437GGBiAtKnJz5BMwWFZCXuH9rBlA9FwezQAuzxKRTq5hBEsICURI7X/0Fa2YWEJGY3dkG FhcRKJI4PuMz2DIhgUKJq3v7wWw2ATWJKy8ngdVzCthJfP/XwALRaybRtbWLEcKWl9j+dg4z yDIJgUvsEgc6trNAXC0pcXDFDZYJjIKzkBw4C8nuWUhmzUIyawEjyypGocy8stzEzBwTvYzK vMwKveT83E2MwCheVvsnegfjpwvBhxgFOBiVeHgjxPenC7EmlhVX5h5ilOBgVhLh5czcky7E m5JYWZValB9fVJqTWnyIUZqDRUmc1+hbeYqQQHpiSWp2ampBahFMlomDU6qBccnziKnchY8+ tHfVqh6SqeN0jzQoyNpnMuO+9lwj1t6b9zzSdQx/T/i48V6n7oI1z2+d59q69//2KXd/N7G2 /L9+sOjl4ZMvDrjKqCr90/WZI/JO/9SCR5f1xSz1k6Jsd+XPPVe0bOq6z3a2kR9+SPhKspy4 /OT39u3+Ll8mCKot1Xq+bOvM5SFKLMUZiYZazEXFiQC7PhKr3gIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrAIsWRmVeSWpSXmKPExsXCNUNLT3fvuf3pBjc6dCzmrF/DZjF96gVG ixM3G9ksft49zm7RvHg9m8XqTb4W95c9Y7G43X+O1WLVwmtsFse3zmO32HcRqOHw3JOsFjsf vmWzWL6vn9Hi8q45bBb31vxntZj7ZSqzxaFrz1ktVq/JsPi9bQWbg4jH4TfvmT12zrrL7tHd dpndo+XIW1aPxXteMnlsWtXJ5rHp0yR2jxMzfrN47Hxo6bGwYSqzx/65a9g9zl2s8Pj49BaL x7fbHh6LX3xg8vi8SS5AIIrLJiU1J7MstUjfLoErY/61zawFvSIV+zbJNjDO4uti5OSQEDCR eLt7CzuIzStgKbF90xcmEJtFQFXiesMeFoi4oMTJmU/AbFEBeYn7t2YA1XNxMAu0MEtMOrWK GSQhLBAlsfPVX7BmZgERidmdbWBxEYEiieMzPjOC2EIChRJX9/aD2WwCahJXXk4Cq+cUsJP4 /q+BBaLXTKJraxcjhC0vsf3tHOYJjHyzkNwxC8mKWUhaZiFpWcDIsopRJDOvLDcxM8dUrzg7 ozIvs0IvOT93EyMwXpfV/pm4g/HLZfdDjAIcjEo8vBHi+9OFWBPLiitzDzFKcDArifByZu5J F+JNSaysSi3Kjy8qzUktPsQozcGiJM7rFZ6aICSQnliSmp2aWpBaBJNl4uCUamDMFIib5Gk3 k5v/NMe01Yfnavur5qyY2/HmNfv3R00Khz+rP+XhKHrPlqjX1Ll9VbjBkd8bA/PtCiV5Vz3S 4Wb4W9R1oGyRnd4P1oPnNv+POnuQdR0L69YdRT9ufd3+d+WVOcdM9/pKPVEQUvjVxbSp5mCu 6hRpH/n/NxdWm7h+W+tdcHrNxZnWSizFGYmGWsxFxYkAqqI149MCAAA= X-CFilter-Loop: Reflected X-Rspamd-Queue-Id: 7237A40006 X-Rspamd-Server: rspam08 X-Rspam-User: X-Stat-Signature: qgc4ik36jo9mfd1g3o8cqzqf9nfbxh73 X-HE-Tag: 1740623552-399303 X-HE-Meta: U2FsdGVkX1/7aAOqn00SB1Uh349gf8FtEYPZb2YUzixjN9BZp1u9CluQz7lXiB5vkrEWT+0dJXAFyH7c8rwHPsqMSHtMGFdReIOkLImuBPreFxnwvYujfh5d7jaSh7T9zLD/Y5lTdT43hbiaapAZ3izxnlSWnb7lkRRvPOmFvIoPt4ESbQvM/SZdSdOXCN1X8MSKpxlNinYa9cqqxDEzsplU0bf9CR/kVAWzgvAX+yOt/O3a5OezqFx/XYbiYFHXLYDKK87BLblJFfobpNbSOTClop79RmFbLvwsxMX1Ho4fL/2GxGH094D8V6pho8r3O4c6pBnGVvm5Rvnc8GiSTGKcy0dYBldZ00WhnSR+/0XJaJrBtIsMIRAkMFKcIJa1vDRDCWi6+cxtmajvvA0TQCdbyIO9tqRs7hH5Vu7PJl52aF1t2w/3hMbAer575xPjiS5z2371d9HVRf7Yq4nkRIWAQGHwAZyUdkl9bBkh8nwnVZ2dI+UwcX4i8vXzLOLEEES2HJsXqqnFDCYQCvvf6ktkKmd28nizcI2S+8njsluEyXNV0qmLf/HN9AenNg7+6Y/iuSC10kc9zgEv+NOOjegEK3iXBQ2JdQOPilTRswHhfVFAXHWgWxPC779/WElh/s8FIwnZqoqshUkoEexfrYAELsN8XKyhK0Pe88MGET2+1Rl1MrKdhkDz+V9letZ8weW2yUQK8d4gMC7fSNq8+7rS30ikcndFYC+slsyRN5WpsnizlIRM362EdoL8X3AZiL0lKB/ttTfbwDce2EJbqix6bBerWv0ZsPjpFuTOfcrQVieZIeT7m3Qet4aatoun/kofNkJd9zC3kbfB+57i9y0mRjWpR/6IbmH/FENQPN4Nuu6Rk93bxxPBTD9KVz/fEv8oz75KwYjtJZVJjxwi95QIY09AGbRaxHqQXHnP9cyorvdh0/fQdE/EgCHeuIs02lg8747pPMQeVvfx/Cj KwStXHsv eLpHH1Hwk4ro+ZAmbX7mNk9tf/mk3rdflCe5kcDL/pgu0ltgmd0dFG2pip34hzBooOZe/TH0XoPF0L7GRSQkg6PoUWkWA3J1od7Eo0Gu+iBRPSDi7rOeEmHMCvA== 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/27/2025 6:35 AM, Joshua Hahn wrote: > We should never try to allocate memory from a memoryless node. Creating a > sysfs knob to control its weighted interleave weight does not make sense, > and can be unsafe. > > Only create weighted interleave weight knobs for nodes with memory. > > Signed-off-by: Joshua Hahn > --- > mm/mempolicy.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/mempolicy.c b/mm/mempolicy.c > index 4cc04ff8f12c..50cbb7c047fa 100644 > --- a/mm/mempolicy.c > +++ b/mm/mempolicy.c > @@ -3721,7 +3721,7 @@ static int add_weighted_interleave_group(struct kobject *root_kobj) > return err; > } > > - for_each_node_state(nid, N_POSSIBLE) { Actually, we're aware of this issue and currently trying to fix this. In our system, we've attached 4ch of CXL memory for each socket as follows. node0 node1 +-------+ UPI +-------+ | CPU 0 |-+-----+-| CPU 1 | +-------+ +-------+ | DRAM0 | | DRAM1 | +---+---+ +---+---+ | | +---+---+ +---+---+ | CXL 0 | | CXL 4 | +---+---+ +---+---+ | CXL 1 | | CXL 5 | +---+---+ +---+---+ | CXL 2 | | CXL 6 | +---+---+ +---+---+ | CXL 3 | | CXL 7 | +---+---+ +---+---+ node2 node3 The 4ch of CXL memory are detected as a single NUMA node in each socket, but it shows as follows with the current N_POSSIBLE loop. $ ls /sys/kernel/mm/mempolicy/weighted_interleave/ node0 node1 node2 node3 node4 node5 node6 node7 node8 node9 node10 node11 > + for_each_node_state(nid, N_MEMORY) { But using N_MEMORY doesn't fix this problem and it hides the entire CXL memory nodes in our system because the CXL memory isn't detected at this point of creating node*. Maybe there is some difference when multiple CXL memory is detected as a single node. We have to create more nodes when CXL memory is detected later. In addition, this part can be changed to "for_each_online_node(nid)" although N_MEMORY is also fine here. We've internally fixed it using a memory hotpluging callback so we can upload another working version later. Do you mind if we continue fixing this work? Thanks, Honggyu > err = add_weight_node(nid, wi_kobj); > if (err) { > pr_err("failed to add sysfs [node%d]\n", nid);