From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pg1-f176.google.com (mail-pg1-f176.google.com [209.85.215.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1CE61366559 for ; Thu, 5 Mar 2026 08:11:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.176 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772698287; cv=none; b=c6a1WLQJ25D9fBiSF5+765OREOMoFyEXMRucn630Cos5J0I4JNc1IZNNZfBLFF0p5SevC5o/X4UghWvtkjqRXqP3X/tnIwTqeaamkCN6MJGvpiXnWWS0nfYP9iO5ptqoSbxlOpyhtz9ZCfAVQs0IC+EIJRWQu94gWJTaM/MhRoM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772698287; c=relaxed/simple; bh=7lNeI4Q9Uja+/KQLyBu/MSPEZ+msyNAKfW3xJ2P/m4Q=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=ubh2c69SyANwjj8l5nxh8bWhusBK54X4u2i6HynwTLMPKJOwtoLwknWo9Jnuwqp+6HzRSV/BDxXj4/U4Absr7K25L3Lak8M1YLNh0U4qa9KdEskgTapGr3PrIrjzavTjkkI7qCivM/MiCR9kIZD5ZrSeT0rHx4NQEcKeUX0qhT8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=shopee.com; spf=pass smtp.mailfrom=shopee.com; dkim=pass (2048-bit key) header.d=shopee.com header.i=@shopee.com header.b=edi1eKcp; arc=none smtp.client-ip=209.85.215.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=shopee.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=shopee.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=shopee.com header.i=@shopee.com header.b="edi1eKcp" Received: by mail-pg1-f176.google.com with SMTP id 41be03b00d2f7-c648bc907ebso4832603a12.3 for ; Thu, 05 Mar 2026 00:11:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shopee.com; s=shopee.com; t=1772698285; x=1773303085; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=mBOWB+m079XaZQjYmCEPY71XRCZ9lZ345P6YQe50dwY=; b=edi1eKcpJNR7cnVSD/0cZ4K7bJDzXYCaU5Jjkux+fDXU2OgFN4EdmN+JTaCdhN7KMX pF5tsxm313RFrmihUXtK3yDIaRJ/5UfFcVqpatqPyLXf7VN3sU8MKXBsDO1U/kc0egM3 65NagpOq3yyicf+MGcq6ZFMHPzaADn+v0eLzZ83LUlx9d5pehriTmq95TBXk3GmUislG mzpkMVKhx+eh+QlIww/bLFklRjprlbrEqAfW40ODl/7cESonAowbx0KEWSFz9MuMyYX7 XF9TBCa3JAkhWLetWL1Fz/v0mQVFHu3zKKXOCZ9a4H+6Wko8mthkUiwfeVc4zKSJUSbT 6XPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772698285; x=1773303085; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-gg:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=mBOWB+m079XaZQjYmCEPY71XRCZ9lZ345P6YQe50dwY=; b=WlVMbNYrhZBAhPbMnmBf0My6fRHDwIvmppEvMQ3f7HE2KMNe8ifDhhBY4/jQ20Lq9j FCmpZpaJucxo02lL0jxZO4sjV/c8uT4Jnm8sBkKK4apK5GQRoab2qbnb+6AvLh613SGy vT07pQ0L3rjWpvD0nbSYOCMDJA+opsBNPwINtLEgxRA4JrdENB94G24+AnFTFESBtg85 cRC8DM5MX08pPXoWBSXjx7CHtWJtPGfeIkutIO5mUL+e+rH8BLQFVqJgD8Ndfhtqy435 7ttpaZVYDeRN7EqTYYLmVjRgbh2sgb7X2pGVfMHtXux/MFaJjUoxujZWvGU8XVrzjyXa BVKw== X-Forwarded-Encrypted: i=1; AJvYcCWTbqPlZ3uTW0nvrbIghh6YYFlmUZ5pmCUXs0QkL0Y55d2i/SZ9NDfI15CnUgbzKiMOpYYBFb9XCVOPj9k=@vger.kernel.org X-Gm-Message-State: AOJu0YyBkelnXLqJ37dWX65TPR+YH/5lkOENznN8VCSuhDL4S3BL6XjC EhhPvV4xHxDPz3Aa+YOLldwuYTA/xFyvg36/2hj2oru22YAPiRZSaHWmdvwoaJc0BU0= X-Gm-Gg: ATEYQzxOX4myWdcqXIKbrRxOiMFFW4PkEC+xqRayhc4ZT4IUXLB+/3o3D/C20jQPZTZ YjJvjZFiXH5SGBltzB073oSxbRAWxMeyEg6XGZFyzRfDu0RyCvz2JwqblyDBy1zqX1SINDLanUq ENcRKIh1uw57rj1UNOItvMvu67BRSH/HJ+MfyfG/Ggyu/IdI27yZAQICty1r06bemrwJcScBQdI iPkRYPK4EQ/FhUSwtwv3cTENgjs+okwWvuRHVVHtRrcQ8wauscq5HLgYkv/0OCec5ZzMvtIj6I5 bBX/0aDmP4SL++d/KoVsj6g1lMHzD7GMgbKYMDbDSfpt4/6DeVuo4Q9Mc0QZ7f4Z3vyGRxNFi1K DxAaRinXBczTN55QHywGc3bFuvWWoxl/HHjDyjT3sixAcneASckIylGILdlpaP99S9wNR4arJxg 4cQru0mdMfjMsC+yFJW99O1CmU4iCel32xtgY2qIbsPPXp5j0= X-Received: by 2002:a17:902:d4cc:b0:2ae:4ad5:b76a with SMTP id d9443c01a7336-2ae6aa157c6mr46505265ad.21.1772698285431; Thu, 05 Mar 2026 00:11:25 -0800 (PST) Received: from [10.54.26.107] ([143.92.118.3]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ae492e6901sm121199785ad.65.2026.03.05.00.11.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 05 Mar 2026 00:11:25 -0800 (PST) Message-ID: <8355402a-e4f0-42b5-854a-ee42f9505612@shopee.com> Date: Thu, 5 Mar 2026 16:11:19 +0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] ACPI: NUMA: Only parse CFMWS at boot when CXL_ACPI is on To: "Huang, Kai" , "Schofield, Alison" , "gourry@gourry.net" Cc: "nunodasneves@linux.microsoft.com" , "akpm@linux-foundation.org" , "rafael@kernel.org" , "thorsten.blum@linux.dev" , "wangyuquan1236@phytium.com.cn" , "linux-kernel@vger.kernel.org" , "Williams, Dan J" , "lenb@kernel.org" , "xueshuai@linux.alibaba.com" , "linux-cxl@vger.kernel.org" , "linux-acpi@vger.kernel.org" References: <20260304213342.5776-1-kai.huang@intel.com> <4809035f61dcd6ace773532efe46b0f1928be313.camel@intel.com> From: Haifeng Xu In-Reply-To: <4809035f61dcd6ace773532efe46b0f1928be313.camel@intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On 2026/3/5 08:14, Huang, Kai wrote: > On Wed, 2026-03-04 at 18:56 -0500, Gregory Price wrote: >> On Wed, Mar 04, 2026 at 03:20:11PM -0800, Alison Schofield wrote: >>> On Wed, Mar 04, 2026 at 05:33:26PM -0500, Gregory Price wrote: >>>> On Thu, Mar 05, 2026 at 10:33:42AM +1300, Kai Huang wrote: >>>>> Increasing the 'nr_node_ids' has side effects. For instance, it is >>>>> widely used by the kernel for "highest possible NUMA node" based memory >>>>> allocations. It also impacts userspace ABIs, e.g., some NUMA memory >>>>> related system calls such as 'get_mempolicy' which requires 'maxnode' >>>>> not being smaller than the 'nr_node_ids'. >>>>> >>> >>>> >>>> Is this a Linux issue or a Firmware issue? >>> >>> IIUC BIOS creates the CEDT based on the hardware it 'sees' as present. >>> >>> This patch is describing the case (weird as it seems to me) where we >>> then boot a system with ACPI and NUMA enabled but CXL_ACPI disabled. >>> >>> So, I don't think we can blame BIOS. >>> >>>> >>>> Is GNR exporting more CFMWS than it should? >>> Not sure of any limits on flavors of CFMWS's a BIOS can offer. >>> If BIOS can carve out a window, it can create a CFMWS. >>> Not clear how that matters to the issue. >>> >>>> >>>> Is your SRAT missing entries for CFMWS that are otherwise present? >>>> >>>> Are the CFMWS empty? (is that even valid) >>> >>> Why this line of questioning ;) I see the problem as a bit simpler. >>> We have other code that tells us if the CFMWS's are valid, etc, but >>> the point here is, we are not going to use these CFMWS's so stop >>> the parse as early as possible, like right here as Kai has done. >>> >> >> Mostly i'm wondering if this issue should be dealt with in the acpi code >> or if the issue is that we just don't want to figure out how to >> lazy-create these things instead of always creating them at __init. >> >> it does seem rational to build out support for CEDT entries if CXL_ACPI >> is built out, but this also means you can't otherwise load modules that >> would have made use of this information. > > Besides CXL_ACPI, is there any other module(s) that uses this information > for these CXL memory regions? > >> >> This basically says if specifically CXL_ACPI is built out, the NUMA >> structure is forever lost - even though it's accurately described by >> BIOS.   >> > > The normal NUMA info described in SRAT is still there. It only avoids > detecting CFMWS, which doesn't provide any NUMA info actually -- that's why > kernel assigns a 'faked' NUMA node for each of them. Hi Kai, we met some performance issues when creating pods because of too much possible node without cxl memory inserted in our machine (machine Intel(R) Xeon(R) 6746E). This patch can workaround our issue. By the way, If insert real cxl memory but disable CXL_ACPI, how the kernel initilaizes the cxl memory and assigns the numa node? can you provide the related kernel souce code? Thanks! > > So we are not losing anything AFAICT.