From nobody Tue Feb 10 14:33:22 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass header.i=@intel.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1713973024; cv=none; d=zohomail.com; s=zohoarc; b=S7/ux0t7MILVIEaxsKem+X3trxPmE0Kn0iaYs51ELguoW1vP72sne6Fq+GrivAHz96aB2utyosXzHANS8eiqQyUDneH5GxBhbOm3fFpTaKB6hpF7WnQvn9I4wH8r5whvgClomFuckZz2+E/pJXz6CElTSZC6mvnRE628Z4B50WE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1713973024; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=GTF9IikhuXR6L/LJj3dsYw7PzBTKsFdf83E5OnPYRNA=; b=jjc0YTtkx5lumA7Yw1rS7rJHs2mFpmTJ2SkarEveYfsRec8I7G9lxs1YHs9XxvwBaxvAgbj/pEqpa5UkeLJIP7EVruUMNPW+iaQdivJEQOchJ3JknNIg9+UZORFETSfnev+zJX8FEq7QCT65mgH51OUt2MeKb/oLH9WwWOrGKx0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=@intel.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1713973024434970.7202232519786; Wed, 24 Apr 2024 08:37:04 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rzeff-0004Qi-O4; Wed, 24 Apr 2024 11:36:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rzefT-0004PN-Lq for qemu-devel@nongnu.org; Wed, 24 Apr 2024 11:36:19 -0400 Received: from mgamail.intel.com ([192.198.163.13]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rzefS-0005bU-0q for qemu-devel@nongnu.org; Wed, 24 Apr 2024 11:36:19 -0400 Received: from orviesa008.jf.intel.com ([10.64.159.148]) by fmvoesa107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Apr 2024 08:36:17 -0700 Received: from liuzhao-optiplex-7080.sh.intel.com ([10.239.160.36]) by orviesa008.jf.intel.com with ESMTP; 24 Apr 2024 08:36:13 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1713972978; x=1745508978; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=OcaGvBTqko2FWPtpMgMPh5cbkqFxJE/4lZyHG11ypss=; b=PobnSKTyGGsAu5Vn2IOVCuu18ImyyuRAWyb+yFlOPDl/C1HIKfrAt0WZ hw6sT8hMTxuZtCT/xojrULUW2wMHS4jGktyJ51tTCrhEzpmzp5nNerc9m mf4q6Soilww3E6pZkmoR3prSbhhRkZUM59kkWeIQfXsVqFXepLxHsXf8P XOFSr8YgDqXTqhgRgUFUoQlR1BSRekH48+owg1gsoilAuSzbRy+N4NxJx FCN6GSd50eMrw1txh9RwYgNx2OVxuk86sW+hAk+z+4kMUckQabNtY7Xau XXid2kRI3VRnCRv/57ySYyo5b/NXbD/Vg4GOph0QDXOMWcSHNgwgz4ADR w==; X-CSE-ConnectionGUID: cR2CV4rsTySU590lO4e9nA== X-CSE-MsgGUID: GnOuKhOASwmri/wVqCu/XQ== X-IronPort-AV: E=McAfee;i="6600,9927,11054"; a="12545618" X-IronPort-AV: E=Sophos;i="6.07,226,1708416000"; d="scan'208";a="12545618" X-CSE-ConnectionGUID: yf8H39wFS2uFzsQlHY0Wwg== X-CSE-MsgGUID: UHlSoaLoR2uloqFelLnsGw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,226,1708416000"; d="scan'208";a="25363061" From: Zhao Liu To: Eduardo Habkost , Marcel Apfelbaum , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Yanan Wang , "Michael S . Tsirkin" , Richard Henderson , Paolo Bonzini , Eric Blake , Markus Armbruster , Marcelo Tosatti , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, Zhenyu Wang , Zhuocheng Ding , Babu Moger , Xiaoyao Li , Dapeng Mi , Yongwei Ma , Zhao Liu Subject: [PATCH v11 04/21] hw/core: Support module-id in numa configuration Date: Wed, 24 Apr 2024 23:49:12 +0800 Message-Id: <20240424154929.1487382-5-zhao1.liu@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240424154929.1487382-1-zhao1.liu@intel.com> References: <20240424154929.1487382-1-zhao1.liu@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=192.198.163.13; envelope-from=zhao1.liu@intel.com; helo=mgamail.intel.com X-Spam_score_int: -50 X-Spam_score: -5.1 X-Spam_bar: ----- X-Spam_report: (-5.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.668, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @intel.com) X-ZM-MESSAGEID: 1713973025624100001 Content-Type: text/plain; charset="utf-8" Module is a level above the core, thereby supporting numa configuration on the module level can bring user more numa flexibility. This is the natural further support for module level. Add module level support in numa configuration. Tested-by: Yongwei Ma Signed-off-by: Zhao Liu Tested-by: Babu Moger --- Changes since v7: * New commit to support module level. --- hw/core/machine.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/hw/core/machine.c b/hw/core/machine.c index 494b712a7638..0dec48e8021a 100644 --- a/hw/core/machine.c +++ b/hw/core/machine.c @@ -800,6 +800,11 @@ void machine_set_cpu_numa_node(MachineState *machine, return; } =20 + if (props->has_module_id && !slot->props.has_module_id) { + error_setg(errp, "module-id is not supported"); + return; + } + if (props->has_cluster_id && !slot->props.has_cluster_id) { error_setg(errp, "cluster-id is not supported"); return; @@ -824,6 +829,11 @@ void machine_set_cpu_numa_node(MachineState *machine, continue; } =20 + if (props->has_module_id && + props->module_id !=3D slot->props.module_id) { + continue; + } + if (props->has_cluster_id && props->cluster_id !=3D slot->props.cluster_id) { continue; @@ -1226,6 +1236,12 @@ static char *cpu_slot_to_string(const CPUArchId *cpu) } g_string_append_printf(s, "cluster-id: %"PRId64, cpu->props.cluste= r_id); } + if (cpu->props.has_module_id) { + if (s->len) { + g_string_append_printf(s, ", "); + } + g_string_append_printf(s, "module-id: %"PRId64, cpu->props.module_= id); + } if (cpu->props.has_core_id) { if (s->len) { g_string_append_printf(s, ", "); --=20 2.34.1