From nobody Tue Apr 30 05:17:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1528498883192956.9538541716722; Fri, 8 Jun 2018 16:01:23 -0700 (PDT) Received: from localhost ([::1]:38416 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQNm-0008Pu-Go for importer@patchew.org; Fri, 08 Jun 2018 19:01:22 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42884) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQJK-0005Az-KJ for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fRQJG-0002pD-2X for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:46 -0400 Received: from mail-bl2nam02on0082.outbound.protection.outlook.com ([104.47.38.82]:53152 helo=NAM02-BL2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fRQJF-0002oc-QU for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:42 -0400 Received: from linux-h3ml.amd.com (165.204.77.1) by MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.14; Fri, 8 Jun 2018 22:56:37 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7DRAiQkTbxUQ9S7Z8lVbl092MtmrJlwApwbSVC+pnYA=; b=aovYtRZzVTFw14prY0pRWoKsMuvXFCY6cTeHmkPt/+OQ077upyvHZeJTGlKedkhS7pwsNfd1TBfq4Z4DtuVUzbo290+aBGSEIOeFETSRGXQx+fFizZ2yIdRUmIbK2RTXQSxxex9SjD6rIhL/uaFR+bxZEXUeDZQsDE8gNoxtp4o= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; From: Babu Moger To: mst@redhat.com, marcel.apfelbaum@gmail.com, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com, mtosatti@redhat.com Date: Fri, 8 Jun 2018 18:56:17 -0400 Message-Id: <1528498581-131037-2-git-send-email-babu.moger@amd.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1528498581-131037-1-git-send-email-babu.moger@amd.com> References: <1528498581-131037-1-git-send-email-babu.moger@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN4PR0401CA0034.namprd04.prod.outlook.com (2603:10b6:803:2a::20) To MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:MW2PR12MB2473; X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 3:z7rGaIgpP5a2373yggHPBdYU+ZscUS7l8/6j178zeLO40lWyCNwVLS7vLb8bcR6OlmUD8fR/GV6suNpXLw7x2Fg0W7/PmkmdoYBRXG5c8ZwAxUFnQT9a165gOZpYtxfOdoA9IvuJlqZcxrxfY1CbMkqlzQqFBKEitFPbKy9irhyamCznKhDfr3hl0duMYCnerlLz6oXtB82PCAjR3lKPr5kRxqo2kp28pszJrmMMD7BiZ3rjdB6D1AMY+QqRP+pJ; 25:niLS3hlgMV3t1657afBkueEKefyCEQLKz7oJhAI1DOezEztYxryodyMpEMSPa5tWom/eEtC+fcxLXcDx5oimhU991e4+K/YHSrEYjVKRSZDXN8dyya0rdm8zC0RGUd4RPPQJsy+57V8wSA2qaOsdkp2OUaYXqDcuGdbEO4klJNghXpvcp7UWNkYgdUuGozAOmm1n2Joyvx+NuMIevncUHM2sk9imtXUIytt0gpL9Mxr1xRmbUHRsgUHgaq10GdXARPWebeT2pVQDaXPrFZLxlkZxG0spq1z7ujB43Kmk975uIe7PKnCqHNKrk2jFQ7gyDb1R9YENfba6wjTVY5gIxA==; 31:Cu8jG3lMegHzQusXQyMI88QIDTAbeV736zzDTCFkWYTsIjln8kTXlEqv5TK8Fn5C4lDjKlZ380fCXpMDcrEyYoUBx2+h7QH0Z1h6RC219RR9LXNXD0oQ8oZlr2kg5hfes33kZTipN1Q9SvUlVFX9bCX8TmU+yyuffMQ+Rgtt4d6Q4dhu8KvNNY6M2T7nZcn2MYc21m75HedsJINS2isA+ik01trl9o8yKcQOeVDKk8s= X-MS-TrafficTypeDiagnostic: MW2PR12MB2473: X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 20:ovIsvhqOdFPrja3Pb9CEs3StgqLmeBedCe/93jZtrVvSlDfghybRg5Y1imj41Z7hcAojJ5bGFHPRoEuyLmK8/77NR5cu0a0Iv5vZZ5sMZjkS60dpadNgxSLJuXUorVHxXJ7MQlOklAHXv6tt8zxRlyJS5uRVvwma61pkgnMtMV7UzPnUArV1q3Zj/nW4n3R3rs1U7X/iT+++CaGnA3EmBfsFVrehrfE6TXiRxxaE5jo7MWGW++z334mSAULFtlDpvXr6hdqe9ayqW9OOysUFJNXtDWWbsDtvaHxARkuJbguCa8YIvbc7tKZB+sgK8jk1ogq72yEG3jU+bviP8Z2+Oa7pfzTb76V5FgCgOGMHwNo9xZnLtYuQmj7sOTrzSF2okpBmUlPUShA2uBKgrOq4Ko1u6JOQK1493R7xMQHtJFaZvAJCezYkWI7SRlwF4yOLMZ9CEYHT9rcLEpK07VPTkmqo6yOQOOkfpi0nmz1XDseAIb2fEtTC/iv1xy+N1UyN; 4:KpY/lD9zdrjlkNpVuz1yBknQQnY783UqUndbD+fK92y1xjCtfna6R//Fj1sAkWxcR+B9UC2BL8hpzhxp9UgKRoNTCgXPCpsG2aleysetW2o8orgM7UL9B6N67yTFMsheZPTMZwi4zkmh8s9NLyxLt7HCru/+q2T8KeYP7Jcr3jrMXbJOVmehoK9tMWelJ/1mo2e1THLoROvcluqtJq2BzFgc3KgJ79WuI1E8glu0cOI0Q9fAAo1zBb2q0pqtL+fGcRsJlr59mZgMMxXr1gwyqutc8zay3XQ5JQYhUO5O4nRDVKKa8V6IqSTA2aic2g1z X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:MW2PR12MB2473; BCL:0; PCL:0; RULEID:; SRVR:MW2PR12MB2473; X-Forefront-PRVS: 06973FFAD3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39380400002)(396003)(39850400004)(366004)(189003)(199004)(956004)(7416002)(305945005)(6666003)(4720700003)(7736002)(53416004)(53936002)(48376002)(26005)(16526019)(105586002)(16586007)(106356001)(386003)(316002)(186003)(7696005)(52116002)(39060400002)(50226002)(51416003)(66066001)(47776003)(50466002)(446003)(8676002)(11346002)(8936002)(81166006)(81156014)(76176011)(4326008)(44832011)(486006)(2616005)(36756003)(476003)(25786009)(5660300001)(97736004)(6486002)(3846002)(6116002)(2906002)(86362001)(478600001)(68736007)(72206003); DIR:OUT; SFP:1101; SCL:1; SRVR:MW2PR12MB2473; H:linux-h3ml.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MW2PR12MB2473; 23:KEy5A2tW5Lz/xicSk9cI0TkLEXH3bD5qRhq8+dWAY?= =?us-ascii?Q?gCB9SYKyzSANx+6vEOUt3NNCbIwwQHdlMEwtirkiCu5HWtVNkEAQ+u2LrAPi?= =?us-ascii?Q?AW6qriGwoE+d83z4cAmGdll1LziSsQmg2ELH1AsrQDtICIUpWlZNLVUeUnOc?= =?us-ascii?Q?Kq1PtdZ2FqMs4kfbOhWzvURa2BcR8QIsDo38t5LwiUPSJ72DYeTjUMRSKMgz?= =?us-ascii?Q?ath60q5jnsFYPO9x9+4ccmO+XtPgcy+FhgpyRk3NU9roXqBhd3EhA82j4KFu?= =?us-ascii?Q?lqDo319DQPkn9wvq0P3tQJzVXr0n17Ty1hb9ojqhnW+sPNCOdBzcw0LGTfwY?= =?us-ascii?Q?VkV2FGVVqdT0qu7MPmaHaTR4sY2R5u42h52/19mtziCr+IsR4ECPgND9dsGY?= =?us-ascii?Q?2I2uCVwwSKrsIGkHX5gj/ctKMGztxOTcPLpyfQqze08ODMfZt8PdH+i/eu/G?= =?us-ascii?Q?ohcIOZNEZPzSuYlBVkq6/6WDALTfnU4Hbl59fxHJsbdgCyTi0KdfUu5LXWUX?= =?us-ascii?Q?S2SSa/ZBB/zxjmkZCMdkOwfh0MUUXFqOpeyEnbNpLGKm8pmVJpXi+BPUmJ55?= =?us-ascii?Q?6mLSezVAHNBliPzI5GO1q/orIGfu50bzTvqKB0rVFQ9A7ZRfATxDtV3fb9kU?= =?us-ascii?Q?jCTraWSfQHVpd/uK+ycsbC8xZdZpkaBC6sbeXs43mwWfd44lPnXdHEPsAPSz?= =?us-ascii?Q?eYkiaDmhVvQ3ia5OJJHDmWQBi9m4JS5WIIzA8DmkKWLxFO7d5JDpoLsdTH/p?= =?us-ascii?Q?VrJ4i1DIAvAWoiUqsEa5DSroEie7K8cOVHYozxM+3RMrUymgz/0Iaes/JUCN?= =?us-ascii?Q?AkgWvZyTFKZoNZ3dT9J2UowZ74Pxu+niZayTFBtIyfBlLNcm8I/5+AtMeZKE?= =?us-ascii?Q?397KNuUo9FXgXVK+UJ/SMhuOuSBwJRV3Ofw/uozcqDDMQhc1lUbGKHIMka7w?= =?us-ascii?Q?U9yD+AEQJGNmUCVJIIfEM2Blhu5ytLe9MLCYw183YIT+9TlRkIxjvfimslsF?= =?us-ascii?Q?xMGsoZ3evt5wZsSaerytWFsu1fqziepfn+sUlcU9XRjyipwMm2AENjCfgB6q?= =?us-ascii?Q?sIuhjH0kko1lrZppKByJ9f5xTdN5LAW8wV2GqVrLtvHxAr0+LniA65XIWUkR?= =?us-ascii?Q?KCwY/FnziC46hd8kRJRXxUvW6xoyNgtUZRJrO2u0hvQg1tM7nvi2Q/n2jpat?= =?us-ascii?Q?Gv+K5Tk8NmA0oD++yQxEUXzD6dmW4sEDV3EWNY5M6/EjwSGK2+CfNZnqCeWk?= =?us-ascii?Q?X/bjmCEVMOEreysU7UJi4Eigd8abJgBzZPTR1+d?= X-Microsoft-Antispam-Message-Info: IOSDXO5O7tnSuUiTM7YtRyPXFcwQSg8iiaANMgqrnBu5ElBBHrJvWoaIK47GG14xQgnuRYQM76Dozljt3cQLAobAu+Z7s/Fi8g7gZQDX7gADIiMe3Q7luF8XzYfd1VKvaHpB/cQ3ZdHeFfkkoQV/pKA+rvHTDBWBFsz66Omfb1TmRgW12Pgb9pb3sWzvmY5A X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 6:P8s5b9DNiPuEQLOMsv92s6pJHkb/4rbqMtpqD1ngvW+zBJgr/ITXvYj9o2bsmVAXICs7ntSd6EalBPt67yaEwUbnUH8RIATq8ThYmM5jR6Ty0GMg0zzyGmiDwV/mLfVfKRCJvKH8MmeLbPow3iK6TDyWW+1l2b+zlaTl1745g6wjHM30UC+tGIJjF9t1a0Czzs1crcMryIPccncxYvFmU15lJhIqKBQBV3wXxmoNSY6hslqln/y7ZuNHaUoEgssMVyaDQoEEMUXLLN7CDrP/w+ABRp74rS7dVugaA3TX9pGQ+72IZP9guDwk4Az27OSs7QOFPjuuWaHZWLwq0po+t0nZOYpq+MM0TWkDcEEwu5MD6a9rS0ERH4c3GgtgX09T4Giq/K2sm/1DnRO+M4+WQ9pmCPu3tv57Q55TIZ0DYccPa0y8MUYAWv6AoF3ZpeFOu2OilamGNJzrTVh8oS1gLA==; 5:Uyqnaidh7PeI/qMtxG3HdH1LknvoL0LYoknIji0wa3UMKvuveBICeEF01Vw7DRiFddL2AmUw3e8VWD/wtidTK7zDLI3BKhwE3VMmDXvsszMrQ7Zpg5kPquDjlfwOPfhfNzZPCWjLZ2fUpxEykMvaM0MlL5lsvo8W9XGWiGLq4OE=; 24:xeLR0r7SR9WldV4alvW3IBlNskjH6u84UmSDvx7T7P2TQWAVLWBpkJn3huB0u3+Z0U3TKulkBpjJR9GY3d8S9ATGsZF6AxbDra5zmNKTlgw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 7:UwfpqlJzNgECn2TTiWQmzANj6dGOny0SB7N/znHbIqPG1cn3soDB2pOgi9FxkARG4Kf8OV1kUnGNGLk3U0zvkxiigWTRYGVVyVobHuHKcTMx8iPBJprRDKabtQ+mYJtVZslkAp9VMS4I54aId7P3YjJgRZDA0Gq9WM2XNeGYMEu53W3POwIgr/uwc4hMLEUPMY5xzGrFYdYbPmZN/wJ/vlR7tpJ9pxCBEqQJhf9Ps9BHQGSqrRzjLGsfDhwCKBQN; 20:HkvoYxGVl822BJ185czPjFJ0Bo7LhcGRIOse+UtFXVR47ZEKWhNMiG08WrghKMg8GeZHu0GCQuxxBNYA8qZUWWtI6BR34u+REgvqazwKmE1NmrRIvjI40q2bG5GFNS3k03HzSDCBktXtYb59+4zRwzAA08LhPT3/l8z/IHrEKQekiCLcZVrbXMlmKHJwDBZIJFS+sxQL7/9hz0P9C/1RqzjtygKUkUP5+oeFxmAlk+WH3tPSak+wJQzGHh6EvLkd X-MS-Office365-Filtering-Correlation-Id: ab95a4c7-7f88-451b-05a0-08d5cd9317e1 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2018 22:56:37.7806 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ab95a4c7-7f88-451b-05a0-08d5cd9317e1 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW2PR12MB2473 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.38.82 Subject: [Qemu-devel] [PATCH v13 1/5] i386: Add support for CPUID_8000_001E for AMD X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: geoff@hostfission.com, babu.moger@amd.com, kash@tripleback.net, qemu-devel@nongnu.org, kvm@vger.kernel.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add support for cpuid leaf CPUID_8000_001E. Build the config that closely match the underlying hardware. Please refer to the Processor Programming Reference (PPR) for AMD Family 17h Model for more details. Signed-off-by: Babu Moger --- target/i386/cpu.c | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 86 insertions(+) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 1e69e68..86fb1a4 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -427,6 +427,87 @@ static void encode_cache_cpuid8000001d(CPUCacheInfo *c= ache, CPUState *cs, (cache->complex_indexing ? CACHE_COMPLEX_IDX : 0); } =20 +/* Data structure to hold the configuration info for a given core index */ +struct core_topology { + /* core complex id of the current core index */ + int ccx_id; + /* + * Adjusted core index for this core in the topology + * This can be 0,1,2,3 with max 4 cores in a core complex + */ + int core_id; + /* Node id for this core index */ + int node_id; + /* Number of nodes in this config */ + int num_nodes; +}; + +/* + * Build the configuration closely match the EPYC hardware. Using the EPYC + * hardware configuration values (MAX_CCX, MAX_CORES_IN_CCX, MAX_CORES_IN_= NODE) + * right now. This could change in future. + * nr_cores : Total number of cores in the config + * core_id : Core index of the current CPU + * topo : Data structure to hold all the config info for this core ind= ex + */ +static void build_core_topology(int nr_cores, int core_id, + struct core_topology *topo) +{ + int nodes, cores_in_ccx; + + /* First get the number of nodes required */ + nodes =3D nodes_in_socket(nr_cores); + + cores_in_ccx =3D cores_in_core_complex(nr_cores); + + topo->node_id =3D core_id / (cores_in_ccx * MAX_CCX); + topo->ccx_id =3D (core_id % (cores_in_ccx * MAX_CCX)) / cores_in_ccx; + topo->core_id =3D core_id % cores_in_ccx; + topo->num_nodes =3D nodes; +} + +/* Encode cache info for CPUID[8000001E] */ +static void encode_topo_cpuid8000001e(CPUState *cs, X86CPU *cpu, + uint32_t *eax, uint32_t *ebx, + uint32_t *ecx, uint32_t *edx) +{ + struct core_topology topo =3D {0}; + + build_core_topology(cs->nr_cores, cpu->core_id, &topo); + *eax =3D cpu->apic_id; + /* + * CPUID_Fn8000001E_EBX + * 31:16 Reserved + * 15:8 Threads per core (The number of threads per core is + * Threads per core + 1) + * 7:0 Core id (see bit decoding below) + * SMT: + * 4:3 node id + * 2 Core complex id + * 1:0 Core id + * Non SMT: + * 5:4 node id + * 3 Core complex id + * 1:0 Core id + */ + if (cs->nr_threads - 1) { + *ebx =3D ((cs->nr_threads - 1) << 8) | (topo.node_id << 3) | + (topo.ccx_id << 2) | topo.core_id; + } else { + *ebx =3D (topo.node_id << 4) | (topo.ccx_id << 3) | topo.core_id; + } + /* + * CPUID_Fn8000001E_ECX + * 31:11 Reserved + * 10:8 Nodes per processor (Nodes per processor is number of nodes += 1) + * 7:0 Node id (see bit decoding below) + * 2 Socket id + * 1:0 Node id + */ + *ecx =3D ((topo.num_nodes - 1) << 8) | (cpu->socket_id << 2) | topo.no= de_id; + *edx =3D 0; +} + /* * Definitions of the hardcoded cache entries we expose: * These are legacy cache values. If there is a need to change any @@ -4120,6 +4201,11 @@ void cpu_x86_cpuid(CPUX86State *env, uint32_t index,= uint32_t count, break; } break; + case 0x8000001E: + assert(cpu->core_id <=3D 255); + encode_topo_cpuid8000001e(cs, cpu, + eax, ebx, ecx, edx); + break; case 0xC0000000: *eax =3D env->cpuid_xlevel2; *ebx =3D 0; --=20 1.8.3.1 From nobody Tue Apr 30 05:17:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1528498733050302.17023493742545; Fri, 8 Jun 2018 15:58:53 -0700 (PDT) Received: from localhost ([::1]:38399 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQLH-0006IA-Hx for importer@patchew.org; Fri, 08 Jun 2018 18:58:47 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42885) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQJK-0005B0-Kc for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fRQJG-0002pT-HX for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:46 -0400 Received: from mail-bl2nam02on0082.outbound.protection.outlook.com ([104.47.38.82]:53152 helo=NAM02-BL2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fRQJG-0002oc-8v for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:42 -0400 Received: from linux-h3ml.amd.com (165.204.77.1) by MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.14; Fri, 8 Jun 2018 22:56:39 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2wcq9oU64GJ1wYscscWE7pRVTOBZL9MkP7xFtD3MVJY=; b=ThnLgIrTCNxTgI49lgvzImNshbE1p2881KvWcJqRav7RZgyah341jTC8hPyLkHdQGwdM/+n96fkpS8EvoBiTR4ULi9rGzky62k9nzl4uG2XI+4oa9K5qmDuRFHFad3ExwYKCSX6bEL1qbluNAKX13KZifLHOlkyd5EicqkVZpEo= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; From: Babu Moger To: mst@redhat.com, marcel.apfelbaum@gmail.com, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com, mtosatti@redhat.com Date: Fri, 8 Jun 2018 18:56:18 -0400 Message-Id: <1528498581-131037-3-git-send-email-babu.moger@amd.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1528498581-131037-1-git-send-email-babu.moger@amd.com> References: <1528498581-131037-1-git-send-email-babu.moger@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN4PR0401CA0034.namprd04.prod.outlook.com (2603:10b6:803:2a::20) To MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:MW2PR12MB2473; X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 3:Eo4C9Oub5KFvey0LwjLH8kTx5ZVMv7Dp1PxxgwxWM12quq6Blsf9oq7r3pt7N6xszycfv2X0r7EXgwHdEWPp8o0bsDyXXYZOYNgIpuhcZoklxi0oHofyIpjwgvnrPquO2JCfluh62lrJji/dBuJb/J0a/Dtwai7/Ghc7nJkA0BiLbA3i46QWOnE72tEjaapWhbb0jDInX8NsabhH+45OOcePMmRVR2obn1P+o6CaoL4PzXwge6N4ZD8yL1GzuPlA; 25:pyzmvbBPuPhOcuE9RDRiTP3UKL2F7upb0IvmLo+mFuIKyULWxAUez7HkHTPnGsqHIi7naDugQ4AclJRCgLTHoRjqLbvpznF2Y3ZS/gKqoCS/s0q1MxVuod1SDsh+I6kHyM1aLRXzsHAFYBHYjToQJ5b4VftBeX3AlVqXJL+sY4wSPK2jpVz+0llIpNhPbYeanDx/gPpubiO5VoMQX+TRFGc3TRBqT2LpvsYSqJtA3FRKPq8jvhvFfXEuCxCGMFzTR80FRGjPhJyN0qHbl5ZVVHrYPrEmSfV9FszXquT4S9aI7F3SDRm8QHXyy1/TLsFSJ6fZQxazGWJd5KXd7j96Ag==; 31:HPTK+50W7mO7UAlkKua1OuUcPXBAyyGkULYBiUVIOiQfSWlHISR1imINcEY0Vqp3ucFRDf/jYUzbMcM39s5AJU2wDMVY5B8TlEtnCp4rrYhKau6cUhN4JB+MMKdnTGyTTuTRp+YJMHZVOPcYgZmGrl98uqhvofFR8s5ampPjlXNr250BUAKlD9EnHSWWneCJ/vBsdwQwAEEzUnudooW4lrwpXHtxyu//abUOdxOAFnQ= X-MS-TrafficTypeDiagnostic: MW2PR12MB2473: X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 20:wCt2kuvvgbCvq0RWlsgjc9Bnd+BhrFJ3tj/pvXQ+pMat7sePHKlBdzRmf907OKPvvTkIE6BUzoBWTiPpHcp8dW6Ntw/Fxc7XAmu5w7H5LmIyOZJyPrOEj/1cJYGq5dDKduGiOXPcGHBw8KR9oPHU10gAprVhk85va3t6Poaw9ThxlBheujWZ7Ky4me5DzIyDc6WwaHa/bs3pQPoiA21PBMAdvpkkJvoiCt1RTct4GZHDvPIvCoSC8wkY9wuexL2/WM3vIQtcjwDfjfI0xpyBTr2lBSVAeEce2H06unuQAHOSmn7j78muGL6U6Ps4BbtPBkODXe3HsTD44nuyPbvn5vtKArJTFjFG4cEy9F3ZWjjM0DvTPUOvGkhwAfGNqF08i6viZs57i1gV3p14XjYghhWRteLIuwySpDLObONYdeXOoXSO71WZVlQGoxcWrQDaR22elhZ+LkUFSoTnxdwVoYvADW6ahafoR3z7TKgAMWvQ2baD9TN4CbTpQc02cAvm; 4:hF2+hiCOZnM45k/vKG8JzGxfM4UE7+7EcB4pQSB0tTdVng+INB5Cn2O6UjQKudn0pNkwlpNOMdDY640hswZi3r54ItXlaumwYKoH7Hgs9y0fRMHkcF2x2kphJzojgTnhw10I8y8rhy8cApvjInY4HwknBtgXJeqdBLESPS0Ygd39NRi5EEn9ezJKdB1x5cl7exloh6XD/lZMvP+AQo/7vWtexnzHehLvP1f0T2PyUu/Pe+rDuUV5DxLloqCa59CSv1kFPJ3w+n9+uTM6J3nIG1YNSl5KunFRtQgeNGnjRqZnQ1Ps/pHJVRlApOxg3+3BTTDxIezRD25ieHgNOcsupw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(28532068793085)(767451399110); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:MW2PR12MB2473; BCL:0; PCL:0; RULEID:; SRVR:MW2PR12MB2473; X-Forefront-PRVS: 06973FFAD3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39380400002)(396003)(39850400004)(366004)(189003)(199004)(956004)(7416002)(305945005)(6666003)(4720700003)(7736002)(53416004)(53936002)(48376002)(26005)(16526019)(105586002)(16586007)(106356001)(386003)(316002)(186003)(7696005)(52116002)(39060400002)(50226002)(51416003)(66066001)(47776003)(50466002)(59450400001)(6306002)(446003)(8676002)(11346002)(8936002)(81166006)(81156014)(76176011)(4326008)(44832011)(486006)(2616005)(36756003)(476003)(25786009)(5660300001)(97736004)(6486002)(3846002)(6116002)(2906002)(86362001)(966005)(478600001)(45080400002)(68736007)(72206003); DIR:OUT; SFP:1101; SCL:1; SRVR:MW2PR12MB2473; H:linux-h3ml.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MW2PR12MB2473; 23:eosNrgOp8Rc23cUzlMo4jkBdPAhIaE9rWE9oGKU2V?= =?us-ascii?Q?V9bYqewAoZhYLtLUCH7yi9TNJIP4Xu4EgQ3tEvfTY3+3uhPyxmuhnvmDmZG7?= =?us-ascii?Q?XNY2yL4gGqvBFmd+49W4pTsHmkDa+STnTFGyVG0gMmnP5sp94mLpGNIJ/t7Q?= =?us-ascii?Q?QpjiBlBjAJ/3KR3giyE8pK/+32Nd61SLobugCnGnlnnzwKdj3uP0ACnAmb/o?= =?us-ascii?Q?lv7QJWkCo8CxsCPZvJXaxJ0Z1j/1yqivgaewciMnbYLawfqN+ssk+M4rqyIU?= =?us-ascii?Q?YFZWwuGGMAT11LMlqPru+0WhG+9F/IzCf7bYecajCWF01PDMjBRris2iKq/W?= =?us-ascii?Q?bWsUzVa3r+QJwox+3WMy/4ZGFYmJusIVUx9PHip4vsNJATl4pnv+osN4+jXV?= =?us-ascii?Q?Q7x/WxUsmpe7Z0KK7wq5Ch9/fOxc8+MQInsFZmNq/jOp9QFiqoIRJdVUONS9?= =?us-ascii?Q?3KPRJIOhM61Z/4v/FNSm4v2QPmFujNvMElAcKJrbULmaCns2TJZj/WHSh46V?= =?us-ascii?Q?ZvAI1FI3Evmi3RlhVQVjbQAokNGEEPZx+TanifVUUg5PDqFMuLhtdSzuIGCd?= =?us-ascii?Q?ClVyXmSZMy1FGNWdz/9FYMWLt0Vk2eOI+fjMyBfDDevMh4FKqTIzDQE4t7GZ?= =?us-ascii?Q?arLbPFT9m87P2c1tszZyq29tClMWPKOyILvSui7MPPWyk4bC5b5pZ9kI/8MO?= =?us-ascii?Q?NuYE1k44A3LgWb+T/2dmjUh8wGlVPwvDlqKkcbLoGMGi4oA/cuznEhLBO2gY?= =?us-ascii?Q?70mgH9p0D3GD0+qRFOKSQpEugaKZ48DtobZv+4KmjZJwUxagzWr7bOpGY9r8?= =?us-ascii?Q?mB1dgYfp8gjJc8DrwHBGZeYHoH4ZCUCcYnLM+jj8n0GJHwM/rweW1mfKfJ3w?= =?us-ascii?Q?9eJlZuhZW3yzh1GvKsdLrz24RMJzYJefXUYD1kHhjVhvKi2BkeE8b3owRKdS?= =?us-ascii?Q?ITTXk48kDgxUEETGarMxgquaJYfqlBgw4vJ8nJwAGg1dvjvIkv4+i4DP5/ox?= =?us-ascii?Q?p3IAddrkXErqaFFCZ285VOnt8QsR/eT7KG0om5UGHSkFAeuP4hztw6T/e0Eo?= =?us-ascii?Q?oEzqaDuc9MpNNcQV/K1+dEwc6Lblw3wdMzlaBKp4rpV+LfKYp91DOVi8WlaK?= =?us-ascii?Q?/iW3+2EexgV0pmZ2fVLNoeqSnb+KZjxwBDL5VI6FLz0g9sRb1RnJKoZ9sCmt?= =?us-ascii?Q?xhqIb/7XFAkjy5LSRa0athn9TifUSlyOQHLRHothyTFmtsLVX4evFWEt5sSE?= =?us-ascii?Q?pqIWMYIRPgCDIQ29PvXDYVKNOXP3tIgmQ9RONIewLWUu3udlcT5rpm/gcOM/?= =?us-ascii?Q?XlF9TqCdNpfdxfuVRjajfU951X3ItKIqsEUlgSBCEveKpAkBdE3GpJqsVC53?= =?us-ascii?Q?inbIQ=3D=3D?= X-Microsoft-Antispam-Message-Info: Yt7PRjb5z/iEFd3H0wVkwVjbwQsRz7AzRmaM1TwCleAyT6rzGEK3nYizo/Re+lGAm5aMwG4cFh/EessYal8uqa1Y7it4OWR457b4F6cBNu8jyIgU0SlzeCfLxa1r/6qgv1v5sdMHCLNJSMdwh7lx5ZJPicbFUQIBZNhreotzz4H47QsU+47I+yemlWcs17Yv X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 6:0+fiV6nMJGcW1pu51fjxX9ubJx+X1lZkwq7FTHo+/YKj+NPBwD7bSK+CXoKVJKZKayP0Re1dRHi/8YK71hFlhr3KX4YTrh4J2WphyTs48ITOSlXDI4S/DumJ7eHRvAa+hHG2X4KMEiBF39zVGJfQYMaoOTl9cDsfwXTlWt8elG3DAn1MnqwAILJuDnwfZlPukhSCcfmRx40/l02lQezqu1DPwuI/fqUpy14OUDZ8joHoPmbkKv7Xq97UYNTBTLnsExyd2R/+ydFwB5y+Ecf2CTI5wxWVoL2nmsMTlb3/eL2NEN4e94iqHjgzumNnpWG7YEJOX8+XF6GApBDg7F4dI6+I1V3KdyuXucBNaFa1hL9Ymlg7RosyUdcbQ25Z3oZeZt8RgrQ9ydmzhw4u335JDyMWqr5m0o5qSLIpoxCj2lnXRaw446Tafcm8t+xJ4FIorTAn615ai/d/YvykcP94OQ==; 5:0/Mhl421x0oJyuQcLQh/DG71slqBqOogIjoTUbRhoBtGiRZswSR3BJbm5F1UdjmDMXdR0l4lgp3hs6iCXAv//I0Kuz2JK7ojS+/wcDDU3c0iR9DzIs6Erp7QKXVChCs4cOz5UVD/PpefF7N+Y7XAATY6o1E5dKYjctKeQkZMgOw=; 24:1v4bu7lWGBWFtPnz91zSQZQxTgx4COvQBIqTHen4TKJbUczlo2XZ0q3qekziY1fGS+SnysP/Qav3NhcEgEA3xc92Mu6ZZ0xih/rGJu0I11A= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 7:mtWQpNibWksMX4xRqaZHJEvpstsD63f8r6WDO7TCISiyOGHMl2cRyvN8N7mI0ARkrs3wjkfrWximzmSXx4sUwc85LUkjG/WPw7kiZrhjUDh+QSQz8utSxU/nGrxSBIIrSpB581qKW53vh+g6Xa2CQj9YbdqpsScmScNhzveKsOOut7oGKyfBdXLbyxgRjb5c5/Uzj5IaVgm44pF/bM3rtaoI7ThvLkj6sIzuRC6+w9kCBdDb+IVQsHyVH1aYqrpX; 20:0OLFDKwvilUH6DpPfKwCZPbmcvUYaaVm+lku2gLd5AlbRxlY9w+H3Q0NSSyAWp0QSPHFbS56I3zwxlU/Ar9jRnWqm9KKOleDLHCmbTqGtw/hEWlpaGQrx8lKNi3jmu0TiLU8PFgQjxTjo6fqTqwauuzN5JBNnr+1NaArFZfv+bJ8XsMACJfLlHAGPusZpBSf+rIltF+MLgTclPrlhWebySlyzseYnI0TKWl3pF8lp2bNtSBBb4GACb/trywMAJTE X-MS-Office365-Filtering-Correlation-Id: e248b887-4e48-467b-90bd-08d5cd9318ac X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2018 22:56:39.1135 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e248b887-4e48-467b-90bd-08d5cd9318ac X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW2PR12MB2473 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.38.82 Subject: [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: geoff@hostfission.com, babu.moger@amd.com, kash@tripleback.net, qemu-devel@nongnu.org, kvm@vger.kernel.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Introduce the auto_topoext bit to to control topoext feature. Also add new field auto_topoext(in X86CPUDefinition). This will be used to enable topoext on newer CPU models where topoext can be supported. Signed-off-by: Babu Moger --- include/hw/i386/pc.h | 4 ++++ target/i386/cpu.c | 12 ++++++++++++ target/i386/cpu.h | 5 +++++ 3 files changed, 21 insertions(+) diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 04d1f8c..cc30ec3 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -303,6 +303,10 @@ bool e820_get_entry(int, uint32_t, uint64_t *, uint64_= t *); .driver =3D TYPE_X86_CPU,\ .property =3D "legacy-cache",\ .value =3D "on",\ + },{\ + .driver =3D TYPE_X86_CPU,\ + .property =3D "auto-topoext",\ + .value =3D "off",\ }, =20 #define PC_COMPAT_2_11 \ diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 86fb1a4..d3411ed 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -1283,6 +1283,8 @@ struct X86CPUDefinition { FeatureWordArray features; const char *model_id; CPUCaches *cache_info; + /* Set it if topoext can be enabled in CPU models */ + int auto_topoext; }; =20 static CPUCaches epyc_cache_info =3D { @@ -3517,6 +3519,9 @@ static void x86_cpu_load_def(X86CPU *cpu, X86CPUDefin= ition *def, Error **errp) /* legacy-cache defaults to 'off' if CPU model provides cache info */ cpu->legacy_cache =3D !def->cache_info; =20 + /* Set auto_topoext if both machine property and CPU model supports it= */ + cpu->auto_topoext =3D cpu->auto_topoext & def->auto_topoext; + /* Special cases not set in the X86CPUDefinition structs: */ /* TODO: in-kernel irqchip for hvf */ if (kvm_enabled()) { @@ -5382,6 +5387,13 @@ static Property x86_cpu_properties[] =3D { DEFINE_PROP_BOOL("legacy-cache", X86CPU, legacy_cache, true), =20 /* + * auto-topoext property will be used to enable topoext feature. + * This will be disabled on all the older CPU models. Will be + * enabled on newer CPU modeles which can support topology extention. + */ + DEFINE_PROP_BOOL("auto-topoext", X86CPU, auto_topoext, false), + + /* * From "Requirements for Implementing the Microsoft * Hypervisor Interface": * https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/= reference/tlfs diff --git a/target/i386/cpu.h b/target/i386/cpu.h index 89c82be..8783d36 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h @@ -1409,6 +1409,11 @@ struct X86CPU { */ bool legacy_cache; =20 + /* Compatibility bits to enable topoext feature on all newer machines + * Disabled on older machines. Enabled on newer CPU models + */ + bool auto_topoext; + /* Compatibility bits for old machine types: */ bool enable_cpuid_0xb; =20 --=20 1.8.3.1 From nobody Tue Apr 30 05:17:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 152849873559965.07545335894838; Fri, 8 Jun 2018 15:58:55 -0700 (PDT) Received: from localhost ([::1]:38401 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQLJ-0006Kk-Pm for importer@patchew.org; Fri, 08 Jun 2018 18:58:49 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42904) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQJM-0005BE-E0 for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fRQJI-0002qF-9x for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:48 -0400 Received: from mail-bl2nam02on0088.outbound.protection.outlook.com ([104.47.38.88]:28256 helo=NAM02-BL2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fRQJI-0002pv-2b for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:44 -0400 Received: from linux-h3ml.amd.com (165.204.77.1) by MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.14; Fri, 8 Jun 2018 22:56:40 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=joF1mS6fZLNhN/CoPsLVv0okD4MpfoWpG3An75Vq62Q=; b=AQa00OeAnfrvASrjbwQKi7/vRYiNjkJGRDsKEgddEeWYkzp6pPNAHfr4VPSdxvFa/fhhunWMLN3LPwkVDYIAlRIH2vsaR1+wY8+7gr1hR1smdyhb6wrd6IvD3w6ucuejpSujNBksUXF+Mymy8cgePqXKF8fIZp7XlRYTh8DcXrY= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; From: Babu Moger To: mst@redhat.com, marcel.apfelbaum@gmail.com, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com, mtosatti@redhat.com Date: Fri, 8 Jun 2018 18:56:19 -0400 Message-Id: <1528498581-131037-4-git-send-email-babu.moger@amd.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1528498581-131037-1-git-send-email-babu.moger@amd.com> References: <1528498581-131037-1-git-send-email-babu.moger@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN4PR0401CA0034.namprd04.prod.outlook.com (2603:10b6:803:2a::20) To MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:MW2PR12MB2473; X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 3:/6dtepQ5jJI8CiSNcqJZHQB5u5EnPBlLyne1wzyyfTOLNQYAulg14R9/ceejWck5WbxLLv58bDMRhwJh9xgxYgSQUWHImD2np8/2jFKZ/UnEBCyOwf6tMSLkhEvwyOBkRXcTjWr7cEf9cqUli2snIKSXs5G1mJhnc37NULRu7aI1XeRUoOt7hP4JIxvGCctnEVKLfc0W42e5bcmqfYmafm38WYV/3kKekF/iAJU48S2n7F1zLPQBZWvmiLsMmoRo; 25:fgssffcQRxwj+e8Wa1ZDwDkrz9HSOJ+CTSpwZmAnJj920s1zM0V1+XMdv8AXtUcNZL6AUI/tY4MG7/xWolra6jhucBjq/fXQtxKj6wwyhtwQEuK7X1hW9J6mQp/FURIxK1LEjKLEYQmheWY5XxnWjjIJCoS+0jZDgHG1alMarqlq5vm51nLHlEk7RPkvp2oEShbnQr+P7ChXay9wSYFXT9Fi65c9+RVAnVzCCRUia1qrp3VgJu+dInP+ae5/rtJG5RhVk2xMTWd9+lcUGwaC0dlQJvBmZwKiPBni3WnTYDich3SZBZ0xwenPsG8WpIrpo/iD2ooa07ert5ZYzWNTMQ==; 31:8/oVBJYOris4O74+9vfUGKVkEAiDSZyHIpzuUPcWH/7QM1Fg1OrYYwF3PgfLsFyYAnO5mmLGab/6pRFzCaI3HJwmcqT4CWJddenQsCn8Dpb53SBpseRcv0FJ5ch5pXrALlmuLOSZ74PwpDzSe6orAN0nVHoxWmQ/Fk1w4k8ZXX/eCXwav/L418IWEvKucNUstLxcWZ+HKa1X7605qlFnqocyDdvhTv4D6EyaUy26zwk= X-MS-TrafficTypeDiagnostic: MW2PR12MB2473: X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 20:F02YvaPcDWzxOVKYqhP70S68zqvnp/Kl0oK2ANDiIRhtD3uz015K85ihKFCfZ6h/Mbc+/ic39YQdvnZOX5VHGpZ9WECVIHeGGepz4VlJYsshpp85qerrUB3UtzfzXH8DrIVUl9qs3VPbTyds0dtn83oqbDPdNIDx82Pde0OZAOjf4IByCv3VkAG4UW1bZRIetLpRH4liKuHiWYQog6gDbcELd4knKNzQDuT6UxfbWuRI/hLg5xeUEl2CM3QQDGHy37qvVPLq1nbxbW1yj23lNJ8ENWxOqeK3hBnRgEuWloqJvxTGehUU0krerae0vpnaS7MuTXxdw2wRm9ZHZTxLBGMP05oswyxHhaVujM+RNXmbMqxKcBOtFeWYRq3a9j1BVzl3/BEEsaH1vn/gtRBt5wnf3zsMPkCs64BGiA0mRSaj+59Kn8DzKOb1rx3MqEKyTyIOKIoUcBQHlVRtqQhmkPTvacFftL4WvwAr/vgG4a+hiYmJw66Znt4fmDDymVRR; 4:s4rHV486mjFR9C4Dz6qBe4duPTIEPfuYJMwfD5q4RYli3V7Olr0IZiw4Hr+1PBQwDCRRDisTTm8UEwey/Uo2OlqhT2yumuHtVkCyjGNj8UeicRd1tG/JPiFWExxaz6SDlBiHovSU1/YZUPaHWqctaxUx3uYzrmtm8BPqvYK5G48vssaK7iGOEPHfGXR3y1f5ri7O4qXHN/z5WR6vBNRa9PtsFkWjf8+Y+5IX2LX07UWfNxamswQE9O5VDCsPwmj75bJSUGCM83zwUoxiPsvfi+6ti56i737DIDE8pSVJsXCVL2zyJyH8C44vy/7tGtcF X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:MW2PR12MB2473; BCL:0; PCL:0; RULEID:; SRVR:MW2PR12MB2473; X-Forefront-PRVS: 06973FFAD3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39380400002)(396003)(39850400004)(366004)(189003)(199004)(956004)(7416002)(305945005)(6666003)(4720700003)(7736002)(53416004)(53936002)(48376002)(26005)(16526019)(105586002)(16586007)(106356001)(386003)(316002)(186003)(7696005)(52116002)(39060400002)(50226002)(51416003)(66066001)(47776003)(50466002)(59450400001)(446003)(8676002)(11346002)(8936002)(81166006)(81156014)(76176011)(4326008)(44832011)(486006)(2616005)(36756003)(476003)(25786009)(5660300001)(97736004)(6486002)(3846002)(6116002)(2906002)(86362001)(478600001)(68736007)(72206003)(217873001); DIR:OUT; SFP:1101; SCL:1; SRVR:MW2PR12MB2473; H:linux-h3ml.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MW2PR12MB2473; 23:/iZkN30DAw33C1nCslW7uatYhLGmrIGtwq1wZGgXx?= =?us-ascii?Q?QT1s2gvoBnPD7RHPFuo+84ZJGoXxFrZOxfh05zByhhXlU03etI6eSvu3CsOw?= =?us-ascii?Q?97XdHzemOs3Cu0e2x70+WWUH4/GM2w7uAFBAkFSUIUB8sHvm0jbm0xJTgLiH?= =?us-ascii?Q?udDzTiC8k1srE5EE5q10/lmV1VFS1kqBKoyiov7HeK1+FJ8qhYhT+7hTyB6y?= =?us-ascii?Q?+RhW4ILTV409zecKWpjxC094u4v0iw7xwaFWD9wgZ1p5exCKvHeAGaQZhAhU?= =?us-ascii?Q?EXYALSim4TOa68hS4W5YWdDNYaQx7sxHij68ukVL1cKgfzi78r9bg9aQA0EI?= =?us-ascii?Q?+bKyJikdowONg7lw79g6ny2Zq+aJL3/aTtxyPRULfB897Zi0W/AU/DPucYBl?= =?us-ascii?Q?R0TaKLC057AJvastSRAt8epakR28IGLmg85BHBDAUs3QPXO+5QToccs/XN8W?= =?us-ascii?Q?9QDzTyzbV1Ap+PO88woCT1xeNEd5aDjOpeC6JW4R2PEbRCCMvdU8bv7Fd6Pe?= =?us-ascii?Q?zLQYhufAqTHaCMDnEkBzoi/9qHp6ok54Q46FkF1Tp0fSEhO4K8kQHzdyTI3Q?= =?us-ascii?Q?U8EErkWp9950dGRaPu4dnoCMGKiUUsuT3c810oKwc80Tw72rRX0GH608QPOj?= =?us-ascii?Q?pKZ+0H7p09nM78AoAcxfHd1nos50pR7kU2hj5KdUYkIj8bhT0M6oMxRfZCfi?= =?us-ascii?Q?Bbrtklg4KOZDLoRcyeK6vMQ3yDuRV4BvndJqYEhd88C5wpYU9REMwUcns5j+?= =?us-ascii?Q?7VmrVkqTTSnOvFiVZ9RNItphLET5Se5UFysNdhFB6UhTfkdiwjcQG4cSNv6m?= =?us-ascii?Q?ZXYU4ZyS8Mv18jHMEcxouAaIfzbx6hybRZHNtAhBbQT0DVncfB0sB2w9IcJz?= =?us-ascii?Q?PcxmLgAMQ2g2m7W5jZ1lrr1oye+3iUdnoBr4z8jFiJtqIwGrHYsR0m87k6p6?= =?us-ascii?Q?RsayvEWbRyGDws3cmU1IfHi3ryJo716Ss8bltPTpCc+3B6fTs5sVUAmep08o?= =?us-ascii?Q?C63hDy5qmUYJ7ERCiZWHLW/+Aq9P+MEwby3ZLBuSLQsItmn5+1qpiME+oM8z?= =?us-ascii?Q?kBhzEiT6UTqVYVNLXPl4pQPvYydOVOl9RTBhHpQShTeJ2N2q0bXpO8mCeZH3?= =?us-ascii?Q?/GKIcKp5G0e+datq983TuKqtaDl5vMpFKoJTdjskxQcw6jm+dGHYHwrR9w5g?= =?us-ascii?Q?seztr9sSbjav9UkQb8nWS8EZXzUyQZ3OudIHGQ2RMsoiR6PzHyJnIwVlkPan?= =?us-ascii?Q?6pUvg1HtK2tjtUYNd65K3TLpZ9kFMawmlrM0PW4HrAWh/hDXkNdwlcmOHoxJ?= =?us-ascii?Q?E1t6Xsfi0qB/JXjeZwSAOSPhzxzMAoPAfrAsEsIsxd9?= X-Microsoft-Antispam-Message-Info: HlS3FG4vRwoFXnsL2X7OWJtGGklN7i2C3CFJb6joFAJzDPsfVkgpcuVn27u/PB1cTRQgehg4cvbvf7DUILzZLmtKl4CTEtdXHFsPwfRxBH4ZKLs6W2EmFEMiTZ4In0hiIztV93je/EiO/DY09ZSUahe9PCVKcNE3pjOrXf/OMDyiAoaokZwjNZOKhAbwllRf X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 6:BpNWtnnmsnESkRUaV8eBv1vTqH/tDeq6TTLteoD/4u/1fbpkOZv5ofY/0U/iLPyIzi+7kNkeEbUVfsjpLq2aceRAhxdjKzH9JtIhlczTdAEXfSL7kKQGkHz8qJwalhgMzNdl7B48ByZL4iG78ZAhybHO4f72bj+sHbG2vU7YMUqfs7hP25czrRTTjddf9+WSUrLqxmonJfNF7Ds0nbh8n8p8Z9fSrHINtNNbKDubCI5yt1kwUhk8VmQhvE6NClOiATbT5j2NyIVDZVIPL6Y8RlyateEnt1++Nt6TF+5+vvvRN/3m6yM3+35zmVJFQN4GNv0Fwc9Tke/9Bompvar0XeFJzfTb5qxVr0Sj6+HizBn1xD4whWgBUXj/z/hyoKe5dEvk0S+bMyo13l0awkJycYrg4iXlaTDpKrXjd0sux6EwuxOtanldb+/MGHMf20KUtroEr5HrNjzgz7kG3Z8K0A==; 5:S8N+CSZ+mx3OriA7lTtPUV8VvS3BIzETnvee7I6ebww6PxYw+uBHH9WCKjnH+obyg3Wo9dGPFxon1XKJdF6OLuY/L0YF7uDyBv+RNCXe8JU60XVy74eojyS1hIVSksyWeVjziMCvCppToJDbBXRQX3N/P5+REbSGACucbtPEAvc=; 24:redSOyXtJ2Okv4ramGqjkkW0CzMEPs1fqRHyWhf0EOqwwX6tMjyl1nrfaCW/bDtWr53KOjMPLnWsRm3/xUTh87WK/rqEr6Ji5hJSNiGl82M= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 7:MrgzikkS+Hwi7gk+4romdCSjiKeyK7p5sEDKIWi7JEBf07N1Dm/JzXDdcwlIQtejPiV6itA/WQVWDfR33rQBbDRHTQ3Mp6gqI/EaA29wa8roLtzYV7MsqRwGdN5UXLzr8JtjRfJ8moGnMAvkvsxyMYGyGTHQQUFQ95M8BHCd97qIb0mHKbr382EyPO38nLuxl1c5BNcLHBF7l+m/46qFNm81BKulQFKYaIjHN/ffONaHWJ/rpKbhnbbC6Ga7dvY2; 20:6YuQZKVoe53458Sfp9iOFXS4C+84zMzwH2rh7VcyFVaUaobvG2Lv9rrp2h5tLbtEu7OyAwK7LPyWhnY86EmTgUJebhUGSncOrE4N2GyzHOc0L6iUYc8a7OVdJoHWIXvxITobUtPCVzDZOqdzAWe+U6tutblUT2oeCMxgfduDuecpCaE7WD7zmJGaBjHqV+SVO9ixSvRoMLmXeZ7zum6rpVVv4gW+XbN8OoRyZqK9rIEWet1EYY6tygTeOdeMDRbh X-MS-Office365-Filtering-Correlation-Id: 84a31d1c-b34c-4b83-0a3a-08d5cd931977 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2018 22:56:40.4384 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 84a31d1c-b34c-4b83-0a3a-08d5cd931977 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW2PR12MB2473 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.38.88 Subject: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: geoff@hostfission.com, babu.moger@amd.com, kash@tripleback.net, qemu-devel@nongnu.org, kvm@vger.kernel.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Enable TOPOEXT feature on EPYC CPU. This is required to support hyperthreading on VM guests. Also extend xlevel to 0x8000001E. TOPOEXT feature is disabled for legacy machines. Signed-off-by: Babu Moger --- target/i386/cpu.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index d3411ed..4dd9a82 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -2574,6 +2574,7 @@ static X86CPUDefinition builtin_x86_defs[] =3D { .xlevel =3D 0x8000000A, .model_id =3D "AMD EPYC Processor", .cache_info =3D &epyc_cache_info, + .auto_topoext =3D 1, }, { .name =3D "EPYC-IBPB", @@ -2621,6 +2622,7 @@ static X86CPUDefinition builtin_x86_defs[] =3D { .xlevel =3D 0x8000000A, .model_id =3D "AMD EPYC Processor (with IBPB)", .cache_info =3D &epyc_cache_info, + .auto_topoext =3D 1, }, }; =20 @@ -4672,6 +4674,11 @@ static void x86_cpu_expand_features(X86CPU *cpu, Err= or **errp) x86_cpu_adjust_level(cpu, &env->cpuid_min_xlevel, 0x8000000A); } =20 + /* TOPOEXT feature requires 0x8000001E */ + if (env->features[FEAT_8000_0001_ECX] & CPUID_EXT3_TOPOEXT) { + x86_cpu_adjust_level(cpu, &env->cpuid_min_xlevel, 0x8000001E); + } + /* SEV requires CPUID[0x8000001F] */ if (sev_enabled()) { x86_cpu_adjust_level(cpu, &env->cpuid_min_xlevel, 0x8000001F); --=20 1.8.3.1 From nobody Tue Apr 30 05:17:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1528498885448726.0416578963284; Fri, 8 Jun 2018 16:01:25 -0700 (PDT) Received: from localhost ([::1]:38417 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQNo-0008R8-O4 for importer@patchew.org; Fri, 08 Jun 2018 19:01:24 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42910) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQJN-0005BH-7E for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fRQJJ-0002qh-2r for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:49 -0400 Received: from mail-bl2nam02on0076.outbound.protection.outlook.com ([104.47.38.76]:45120 helo=NAM02-BL2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fRQJI-0002qK-S2 for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:45 -0400 Received: from linux-h3ml.amd.com (165.204.77.1) by MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.14; Fri, 8 Jun 2018 22:56:41 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=seqlIV0Dc2ch7wkwEmh4Ogs5GXyjyRMpz4UZlKL6rQ0=; b=gXZeP/ds0QQDOFOS52tv6XPfqqiGSqp6BaG5L1ZfXXhH9ckLacv6tQabCi0GkCHT4ZmvPoDHuJhpbCM+nvPjCrMB6dyd2+/OxU88hvnVb1YRZP2yNfv5cuuAOqxgC4+sFYRwCZbTu6jx8nym9kkVamIONVlxZzW2aocAHOrU5IU= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; From: Babu Moger To: mst@redhat.com, marcel.apfelbaum@gmail.com, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com, mtosatti@redhat.com Date: Fri, 8 Jun 2018 18:56:20 -0400 Message-Id: <1528498581-131037-5-git-send-email-babu.moger@amd.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1528498581-131037-1-git-send-email-babu.moger@amd.com> References: <1528498581-131037-1-git-send-email-babu.moger@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN4PR0401CA0034.namprd04.prod.outlook.com (2603:10b6:803:2a::20) To MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:MW2PR12MB2473; X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 3:AYc8opow2RE+j/MSivG2hRCbwPGQ1Wm+9BtuE+tmAV0OD1xkvLeCnCGWOX2XSxitVIf6xTh4msORokM0LlkcNt8QnsHlSDJqqzPzDX4kSm9huBMHBTuxfw5ocyRKUB0ZJN0P8wWEIQpkCxf2wzhkF4hrfqTIPgEEo2TISETyXccEmzqi93vCwui68YVMZDbO8MGSTkp4dzuhIn9psCxxB8LCnjw7Zbxn3dWtjFCSi0i2G02Fj0b8XLR+SRaE2lxy; 25:OFsqMY/3N9mzfwNHGW/RCrJpOCJhJPfiUlY5NEy+gEkML6FgLpcraD2+zqt+xg/3IRL/to0/EjyRa3SZWbIX7QWvRdDdDcZm8tgnGxjHmklJiGu8QEG1xfGORmHIj6k6dX71Wim6t73fCkVxEzARq/8pvARevoUH8m2V7FUKNRdkkPF7Al6aBAaejHViiPBnEcO1c2W/ZzIiOnAU8GB/SLHAJ9i3stWTpazsCtJuKcWYM9/tnHKltzNv6jG+jq97WJwNenRfDdCmIRRSruZ81txo29+xOiy1PWD8/ROo5VxMHvv+r9SoDgryw3dRkro4SRNHxGY8SO5/sTF8X+gPAA==; 31:Sp3ERgZeK1OyQBZnMMEGKw/Af57/8cyw92o4MXEUTHoHoFVi0/BvFAsc0ge23bI3nG2r6H0m+WDj2boq/nN96frM6fDMdu7uXQTJbW5lhcASZeFt8G7vIKWtIONWYcjyOBa0OvjZ7H2MuGg2NKiLqtRd6voo3wCNtndKd9klkBYBX7ODeSJ42i74ztvDzqoeVeJUSESYL/StV61VJF1cCYEGHs9EMx2o27nG3DGGU4A= X-MS-TrafficTypeDiagnostic: MW2PR12MB2473: X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 20:88N1ogGIh6YeS9743x90P1aRfj8GS8i1KaWJATWIcztqbs2EhuNS6cnblcAj3hmptlLdr5yHFjL+ozv8DcarjmxT3gTK+RIVRD4ya+S4yEAuw8TAdmYfR7jbL7Hcsysra3OJlZakc64k5k/PkczTcDyciFdl2bU6IvP2c9AzipCN+gdO9ZdPR3DXibud2DphgtsyoqIp1ekudt8US9ZkxGJs9uoc7GpJ2DXeW0f5oEPb+UqFkbU2jwR0sukRSeoUu8bLR229cZGaae3li8LYy4S51mdU4n04Tivjq4rI/55JXCPZuKTCM3+EfXCNZpFC0FReMEAIo/dlnP+r0zvw7GtxxpKp3eRKeaeTxGslQgm4jqlqBlV+LPwiyjswqWwgVQczuG+wU80ZsYvBrJe2Tzv1FsUwMebgfOruJwuO3be2ASF/Xd0xvDhAPreuwQ2EW0IyMMoVWetGtoeoG9LXnOeYgZhgCNCqFwEyV7WMBEc64ave+yvOvqKi5KxAOP+6; 4:MrwLEtUOd3O0z69sYJSeaF/m60Zkqvz6pWVRO7FxmGXX/zoneh51r9xjSMOB/OX4zRHSbf4dyPjcBTY1oUq1iDNl7rz0WHl3nX3POYIo0VGD1BnR7ATBBt7Ns0TEb0hc9gk5Pa2rmdkbyj5wS1f+ibPr6cpAcZkCQlKwLUae+tOgewHYgEabFFDcfrrbysCaubaqm0RJ0E8idlzkmKZ5KXPGfSYWbqiqpnZ++Ikf3AjcMd4nnbxMqLntEWaWXS3AZ5S43VuH0XhUYlNGiZaUNYps6HlriVyHsRsUCcWMMsTo03Bc8I/XYXd8wGPhM5vM X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:MW2PR12MB2473; BCL:0; PCL:0; RULEID:; SRVR:MW2PR12MB2473; X-Forefront-PRVS: 06973FFAD3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39380400002)(396003)(39850400004)(366004)(189003)(199004)(956004)(7416002)(305945005)(6666003)(4720700003)(7736002)(53416004)(53936002)(48376002)(26005)(16526019)(105586002)(16586007)(106356001)(386003)(316002)(186003)(7696005)(52116002)(39060400002)(50226002)(51416003)(66066001)(47776003)(50466002)(446003)(8676002)(11346002)(8936002)(81166006)(81156014)(76176011)(4326008)(44832011)(486006)(2616005)(36756003)(476003)(25786009)(5660300001)(97736004)(6486002)(3846002)(6116002)(2906002)(86362001)(478600001)(68736007)(72206003); DIR:OUT; SFP:1101; SCL:1; SRVR:MW2PR12MB2473; H:linux-h3ml.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MW2PR12MB2473; 23:EWu//VL5XtYis34+hTUdEbldDSbAjLUhU9cjMnekV?= =?us-ascii?Q?z4rCiwqDUq9eDXrPpJwBD8ls2w+3zCRlCgQ1dHpNK5AvMKZCQ7SC72MGWoW9?= =?us-ascii?Q?0hZqwauR7miaK0alzHx5MKXMDra+t0PznKkHO6edfXOFjoh+g5Amg//MqjMU?= =?us-ascii?Q?TM9vOkGO6t8fUfz9QW3GwZcDUCJgEvjE3e/jtMRNlR0fJNegtsAwz2eEXQ3T?= =?us-ascii?Q?R77lb2+ty1iaWVA61CfHLpAiGYjmX4v6uBE8X53svkn0dhezeGsbXezoPk+t?= =?us-ascii?Q?i+JIS2EtvJkeRlFvdQzjMPtQntCN7vC6Xsf0gQd1N84MBf5xSwyOzq5dswTc?= =?us-ascii?Q?zCQKmCZUZM2BugPn/LlTiNEF+NYK/JXI0R4jla3KksKzlWV26S/wj10lGSwt?= =?us-ascii?Q?aT8VKtzuPWBNaNsbpFsfrt28Z57shL9fzWhWSlj4E7uDUK6rCWipPbGq2IC5?= =?us-ascii?Q?G3hMBpSkWOA2m2vGj7t35eLMiXh/Sq2rnjwDgqFpq1XkDwoTB7Lizn3sZohd?= =?us-ascii?Q?5sSKPmwbebH6V3gSVG4wwtglnJyF33qIrbsC2bJJjIYwdWW58CCubkT+HFhZ?= =?us-ascii?Q?FCuScOLC0eQGJ6Cz9tIsDCyxCvH8FI/GPsxjYiU4Bquxz7sWKw9DdexI64zB?= =?us-ascii?Q?gJxutSRRQKIAXVxQDZtuHthPcDjhksYy9F67tUys6GclNqqO/CiTPhP/hMhI?= =?us-ascii?Q?cpRQiA24H9BEZi1VojTFdRfDzlTf23xY73ZzU7hQ5VhbGG8s8Nz4YXS2+R4T?= =?us-ascii?Q?LLzSNxx7FZZcUPVYE/eY9N+BceW26DxIZ+fKwtTOJrm28ndNRghXuhrMVotu?= =?us-ascii?Q?2KN5Wc2o88+vx8jVt9w6/+R4lAb7TkFJkL6stvpMpEpXk2n24BM/A40W0BJ1?= =?us-ascii?Q?cc1y/C92BZJHSDYFwmQLb6chO5fn7MVCl9QLTxOsh+eZ2FQXXUZnqgjwtD26?= =?us-ascii?Q?Bv3JhWDmQWeUlycLVY85mxZzEHRmGi+Oa6QO18pPjQX1lTC04+/Je5/UBHWy?= =?us-ascii?Q?SqVd7qyosFe72ZiQtzoDa/txWOLk6JY3+Mu6dsNsoA/Xzxj1hR48qNT3Lr7c?= =?us-ascii?Q?ZQ3ZPdm26nK9veBy1ktq1m4E5jY4x8Li10BW/121bcZOpNVn4zcPlVrlIpK+?= =?us-ascii?Q?EWNOE7vmuMaeV5CCArsq7Z3Sj51YF0uKf5I3BGYStenqD7L9wMG9hrIz52Rx?= =?us-ascii?Q?nEN36cFEqaCvyLw8lLzyCnHVGM+tVYJ8hGBzOQOn9nAFkfncCecrpZ0B0+60?= =?us-ascii?Q?qZNEJ12VsEB1ebNxETCpyd2T4+zKEATpXJT5t20?= X-Microsoft-Antispam-Message-Info: f5gpBlaXLGj5Nsx/fiODY5HUGyUSUBGkWLnBNId2K6iI9K3a56i0ToXNQBtGw0i4dniQETes4TtiM8LSdvt6UevGBGBGwY0F7X4dTcZ5zmXnVnqfMoUsQkzv+eRjWzHgt50ujhDbHcIjVHRYUcNLet6y3kbWyy2HLr1GwqMrxcEVjUNx1k+Nn22LWKNfUmyf X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 6:EFK+nFEwqHUl32UrOdUFdANdQ9kmkPqVkSR9zjjkEhuZrz5zVaadQ/Lsv4peHeAuFSasrIakD+3a5mJnb2SI1h7I3Pffe6fySLIrl27N6HI1k7sun43iT7PWGy/6x9P9CqeSoATINM0lhv5vjFwynVdm2Yj6R7UoHutjKLl8OCee5Nz3/gIe64e4aDWpZUbF8AdlRdAOhXq6jDrF13bRkLANbqp7BbHDZMm82vsw+6ZtUwkdODRT/YS74lKuScJF4ZnGfIp+1JCdvA2nRs9MRgH0Hue2gzXdaM2VPmSUlGqnL42PY++P7xs5605qrTPkT+lsjMetFiF2rqEFTUImb4hrPZ1NzDM23bahCfIBZXHxiBKnfHfQktcBhda2Lu+YmbnQSEOPixm/5SXuz7cMcWP2CdKkVSaAA53QextLAv6IQJu2AAp1T/9ylIOdI6GgwPODoApHi783vWvbaQ66Ag==; 5:mq6+28NjUsV4cOpC7z54zbbAyRqH3Hesa5eIZ+Mg7T74mYzslHYTLp1G5h0j42aL/cyADLhCD5HDkeRlk57pquw+okS6Wlq9/zjZW3jLrGkaDuBbzBxsRlMQvX/cFfgBq/ZX7mnSLKHHmmarizliIJsKjmDQe2Ee3qvvSMAcjaI=; 24:ipn85GF6QJBpIad110+kwnF1xON+5R851ICxog/D0c7LGBluwjkP3815tixLQNxzfQMBMcTIGswR/2vpdH5J4ek4yTdFFtH5OXG9f1n4u4Y= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 7:8AynhE98VWQBz9w0vuzsNjMyYsiuRM588HKySpqeh76srYAh4XBoW1x1h8gmJV1jT3GB6tEc4zhes56jigc1q6FByhDoSAxqXpwKYgGeAoEN0cSUxq5xni2Vq09Bej89ZdHZdkoO4j0jAT7ZcCgMq/hVZX027IwLe/Uu8VbOteu65UPlPmo8Vo6J+uEBVv+ZC6Hc2KIA58uKDH+JhIaUzvJ4ZNDp1BEsYBsoSon8br+m9iBl7mqsYabDgZAB5KA8; 20:rnCNVn5pMM0GWwZ3ypHgOl/T6pOF5qSoPT9ds4mMaO7A3633oVieoe60bdiqnmzOejMwnWqJeCOrFrqUQUu3wmbauYsTLIQPS/sSCmlLBnfPhZavR4tdz2G4CP3cHqSUrSwZuqeEr76L+3n52bcdjPXG0nNCRdZGWd+h/W3b/EZnEMXRXGA49j0IKNOMF1ZJu9Q+4jskbxTtglD0h+d2uPwjCfHnGuNqr0ybyD7CZw7p7FkcjxTxqmPQavrIFGQc X-MS-Office365-Filtering-Correlation-Id: 476dda97-bb69-4002-7290-08d5cd931a40 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2018 22:56:41.7584 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 476dda97-bb69-4002-7290-08d5cd931a40 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW2PR12MB2473 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.38.76 Subject: [Qemu-devel] [PATCH v13 4/5] i386: Verify and enable topoext feature if supported X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: geoff@hostfission.com, babu.moger@amd.com, kash@tripleback.net, qemu-devel@nongnu.org, kvm@vger.kernel.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" If the CPU model supports topoext feature, enabled the feature automatically if it can be supported. Signed-off-by: Babu Moger --- target/i386/cpu.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 4dd9a82..88bc73d 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -4763,6 +4763,33 @@ static int x86_cpu_filter_features(X86CPU *cpu) #define IS_AMD_CPU(env) ((env)->cpuid_vendor1 =3D=3D CPUID_VENDOR_AMD_1 &&= \ (env)->cpuid_vendor2 =3D=3D CPUID_VENDOR_AMD_2 &&= \ (env)->cpuid_vendor3 =3D=3D CPUID_VENDOR_AMD_3) +/* + * Check if we can support this topology + * Fail if number of cores are beyond the supported config + * or nr_threads is more than 2 + */ +static int topology_supports_topoext(int nr_cores, int nr_threads, + Error **errp) +{ + if (nr_cores > (MAX_CORES_IN_NODE * MAX_NODES_PER_SOCKET)) { + error_setg(errp, "TOPOEXT unsupported with %d cores per socket", + nr_cores); + error_append_hint(errp, "TOPOEXT supports only up to %d cores per" + " socket\n", + (MAX_CORES_IN_NODE * MAX_NODES_PER_SOCKET)); + return false; + } + + if (nr_threads > 2) { + error_setg(errp, "TOPOEXT unsupported with %d threads per core", + nr_threads); + error_append_hint(errp, "TOPOEXT supports only up to 2 threads" + " per core\n"); + return false; + } + return true; +} + static void x86_cpu_realizefn(DeviceState *dev, Error **errp) { CPUState *cs =3D CPU(dev); @@ -4953,6 +4980,19 @@ static void x86_cpu_realizefn(DeviceState *dev, Erro= r **errp) =20 qemu_init_vcpu(cs); =20 + if (cpu->auto_topoext && + !(env->user_features[FEAT_8000_0001_ECX] & CPUID_EXT3_TOPOEXT)) { + if (cs->nr_cores <=3D (MAX_CORES_IN_NODE * MAX_NODES_PER_SOCKET) && + (cs->nr_threads <=3D 2)) { + env->features[FEAT_8000_0001_ECX] |=3D CPUID_EXT3_TOPOEXT; + } + } + + if ((env->features[FEAT_8000_0001_ECX] & CPUID_EXT3_TOPOEXT) && + !topology_supports_topoext(cs->nr_cores, cs->nr_threads, errp)) { + return; + } + /* Only Intel CPUs support hyperthreading. Even though QEMU fixes this * issue by adjusting CPUID_0000_0001_EBX and CPUID_8000_0008_ECX * based on inputs (sockets,cores,threads), it is still better to gives --=20 1.8.3.1 From nobody Tue Apr 30 05:17:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1528498733732177.9912335631508; Fri, 8 Jun 2018 15:58:53 -0700 (PDT) Received: from localhost ([::1]:38402 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQLM-0006NM-U9 for importer@patchew.org; Fri, 08 Jun 2018 18:58:53 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42922) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fRQJO-0005CN-BN for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fRQJK-0002rG-D8 for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:50 -0400 Received: from mail-bl2nam02on0065.outbound.protection.outlook.com ([104.47.38.65]:43104 helo=NAM02-BL2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fRQJK-0002qr-6I for qemu-devel@nongnu.org; Fri, 08 Jun 2018 18:56:46 -0400 Received: from linux-h3ml.amd.com (165.204.77.1) by MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.14; Fri, 8 Jun 2018 22:56:43 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FWiBeBsfhf6HECtbM2qSC8HTfXeDgHwkt7ZstxlyeCY=; b=X5Wy9fF5gKziriI+ECF80zIYX4lTpA78HadAR8JspIJZfb1vISyIVEiLBuMfe0SosUqt9ujvLnwxvcPlduWgvm63bRcLI7cLXDuZvzKOrkqMa9v99Q5ANzPFeM0z1VoyVXPToon50z6eS1ezwocuzGgphDkOC0no+gHxtYkJJHU= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; From: Babu Moger To: mst@redhat.com, marcel.apfelbaum@gmail.com, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com, mtosatti@redhat.com Date: Fri, 8 Jun 2018 18:56:21 -0400 Message-Id: <1528498581-131037-6-git-send-email-babu.moger@amd.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1528498581-131037-1-git-send-email-babu.moger@amd.com> References: <1528498581-131037-1-git-send-email-babu.moger@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN4PR0401CA0034.namprd04.prod.outlook.com (2603:10b6:803:2a::20) To MW2PR12MB2473.namprd12.prod.outlook.com (2603:10b6:907:9::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:MW2PR12MB2473; X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 3:sgUVy98S2nORNwr3rus4scpV55psB4It6DDgT3Q8sa4oSfBN0Z4kinf7hwelLSDpqTqHlq8zhRARK2+pNaEyl6hdSnQRTuwDFfxas/Y9pfoYHRGKUjWVlnOoJTm9Gbyo2TGstRcYcVx6tPjFFqqcqVyUl5lUvkU8lTC+2sjROuErSqCvJ3iVDiG3YDubYm5VdLwtYALyJfrx2tTs792K5NQJS6n6qEpjhWHDW371G3NZ/i9HulDDxAA0kOsXqG35; 25:YttUoiwrRSEjbgQDiGmsQLKC4sc2ceE2xJ6Beigudx2CO5GZvP2LCXsvfY0ZlzNfebgRmS2p6Aib254p+5xSDTgtYzrlAa7slUk3YIwNr0y5XDgHe/k1jMUKSvE/W/je1ZZcANlnyWDmdsYgbYiu7OGS0SqSKExjRBCK8TaYMLr4CqLOaXrB3mNSNlq91P9qfxmMC/k4LzflJNxFWe6ra4rfuATiC4WsPlZOQ4QBM8L+bns7ST6ijU5OuU2Ld3AN03wYeIkHVAodcF+y/zsQrphtuRCin+robwngx/ON3iiCjlTz0mn/2nUJ4djSLXR1MKxyzS78+3Hcph0M7B8oAQ==; 31:Dsgh3tTPZWjADxfBv36/FQsfp+NtSlrobU5f84CyUx2//h4diEBWCM9nReGmsYe4LmdHJtA2HU/HM+6TW3wvD003PBwcJyrZKWR2+QbZQ9x6XbE5JWi2WGEyyfx+xrrxfcLi1alQ/KlcXOdwnopa+H8eM1c17eegWkl52al9stgDwFRySErP+17X5Rbe6k+Jf9oPv9gxDIeJkTdDw5nqpgZilsR9Rkx9E7qshMxEits= X-MS-TrafficTypeDiagnostic: MW2PR12MB2473: X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 20:1PnFCBA1/tjVENnhNblDhXy2V/ZNrpRP5OZWyNolCSiL8ffS5i8coT/5lHZP+zUi8b1PMLTCJz4+RqJlotrO+McRUG7zpaWuvuZTaKTItZKUzUxINE/V23F8kfsmgQRo5sDqRuJ6nRUzelwJ/uI1atxK6SPQB2MLlhC7YTNB3rQDWnL/NuTaWzLb2VovCbMGSRCnp2y/t3krWiJ/u3cvAhEIn68dUfaCJO9SesHxwT99r+ZkR+y+BOwreRHKEVvVyVyoPyp99C0s/wo2FtAumC3A8cFTjFHzdKVell4ykz1fYFfIVirt4/oNu+AosZxIu0/9WAVBxFd3NygL2wadXb0px+uY8WvcrBv1mCcY1s52FiFrhjLcW8lSGqXuJ46XAhwW/sdbKHXt3Xskkp9gXkyXNG7zepxAyJolpFa6YU7W7aq2Xf6ksDY0q7X84aSamgXTi4p9DmpL/R1RyYtcm1YhKaD417JkH78fu85z2ZWjZm/T7EvlDoBv+eIkXUzL; 4:cgHH5oLkE++CjuqGvM+SI0mXTqF9idikvw7LaRCCCiRH4YxIy7c18m0ZLrMrSRK6vEMIAW7bq/F/GHGukZsULZa13WuH0I3IrYKQTRqLsnvPk4WhdMpkkcwf7uZSKMk3Z9knNmIcXdGKV+fr54sPV1CL7X2S6yXqmNXukdoABZg3XDgAPNwAudp/UrGe5WygGdRyebv99tEElwXLLoekIMeGT3L+fSKGjD4PX8Gs/jhcy9gwMaqJ5hGPw6/JAIY9No8q0hii+9mcxc+kSHVG3e+SYx/Okp0llkgeftf+rPCfGrBh0K0u+KRP3V2gjG8C X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:MW2PR12MB2473; BCL:0; PCL:0; RULEID:; SRVR:MW2PR12MB2473; X-Forefront-PRVS: 06973FFAD3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39380400002)(396003)(39850400004)(366004)(189003)(199004)(956004)(7416002)(305945005)(6666003)(4720700003)(7736002)(53416004)(53936002)(48376002)(26005)(16526019)(105586002)(16586007)(106356001)(386003)(316002)(186003)(7696005)(52116002)(39060400002)(50226002)(51416003)(66066001)(47776003)(50466002)(59450400001)(446003)(8676002)(11346002)(8936002)(81166006)(81156014)(76176011)(4326008)(44832011)(486006)(2616005)(36756003)(476003)(25786009)(5660300001)(97736004)(6486002)(3846002)(6116002)(2906002)(86362001)(478600001)(68736007)(72206003)(41533002); DIR:OUT; SFP:1101; SCL:1; SRVR:MW2PR12MB2473; H:linux-h3ml.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MW2PR12MB2473; 23:/zHrIQBQ/PMK9IcPLNWnDwwMk3c99t2i5qiKROx6U?= =?us-ascii?Q?B253DdQmsbqGTSkxG5UDCh4Zlb5v+zDVLrAF6z9bv+hCClggCVPvqic3XnNP?= =?us-ascii?Q?E8z3S7oq8BSpL4LMMUxhORw0kCONjcllgJG+8pOT8xtJuY7HDimE9AdWWSxS?= =?us-ascii?Q?c9uBqEGuqG0ZS2+Bvcom+0AWQCHm59dctwm6QEWK2v8d7+pfXqPNjtOck6p4?= =?us-ascii?Q?KQ9yeEp1Dg6qG7uPUaR1I0TJyVHbWG00MguqokG156xhGc8psbe3xlQFKhJE?= =?us-ascii?Q?mnRnQJbiVWJJHF1atySTTTNW8Lqdnrno8i1/Wm/TGyGexB/YU4jbeN9E7zKt?= =?us-ascii?Q?frNUmx/t1Tn02SSfXd+vSI6tlt3vj8zrQn6SRM9fP4NXaG+tUU+bG4jAErYO?= =?us-ascii?Q?ucmaS3qkF83cgcVHpkP+AXNroDoB896aG1jaTJuMR8FOHk3o3vLq0e/L344c?= =?us-ascii?Q?65+glzTDPYHLPMFvNwfirGucjpmEXOrA26edEePbLnnusCxk8FzyBjzX8xfa?= =?us-ascii?Q?s3/LMZKyMPdnjMHH3p8f2S/tswGV1OMiGXeUtLzNBWRtUTNLezECikseyAzT?= =?us-ascii?Q?kIs0udtZtXKeNCPyOklgsxdhhGNA+p3y4HRl+shUJHTPbKTYZLBK8SCkJXJj?= =?us-ascii?Q?ptbZ9VEN9eZZhmrV65/QJnDA5ixrfDEFg3DCiSQeY/HOG7B7rRjrWgZbOw7U?= =?us-ascii?Q?iLnNFHATMplhNn6kUNvrJJNzWdSwqSpYwEow4s6/Q71loyAkyd30V2UzRepU?= =?us-ascii?Q?7VAZ+C8ui9O2SKmzoVSFEVihOQ4/GCv28a0A0e+/2jXg6r3otvKSqFW5RSX/?= =?us-ascii?Q?8k2pGefP8xTA4Vqq9tZzFmdWxzAsXIRkQVwTPuc7m8rAlxbCgeGboehgR6Gw?= =?us-ascii?Q?x6N4FCjXgjMgkg8dG3NhRLVkbamXMULVTupj4YwjTXe8C6V9L3JMcWR1ztoE?= =?us-ascii?Q?7WS0ESEn20zuAL6fjncn/9zhdICv1HmDh+qhFVB43EpGwCVOE9NbywXYuixW?= =?us-ascii?Q?5fodm1ZbMh2pdAFq/4k9fsV0okLwh5gqrqlRmeyMZ+hHlKnCLQCwSKiBNLqi?= =?us-ascii?Q?6mbfeJMllcZRLG/rCrCExDVbZYsLIOhl2d86Zh7IFLIhaiJRFUUei04gV3lg?= =?us-ascii?Q?8xTG2BbFODO09h5AMWHc3WAGSThnE3K9JjLvcu5mYE6S+94zdM2zdBSdEthl?= =?us-ascii?Q?lt7U6AeGswJ2D1v+HUCiHbaH3a2zb+wn8NKXHjm63knKAmL+gpS7d9+g5Lky?= =?us-ascii?Q?g2/LcE56MitRBf/sQfR0WNpdR2CkdAOCIWQ0I4zLlXb2VMq9FtJfsGGtIwKt?= =?us-ascii?Q?BdVncLcmceYOrkXKZ5gcP6mpCqQKLG87ojnUZ8oR3jj?= X-Microsoft-Antispam-Message-Info: ZBEWBuX4psU+w1eQJ8OSpm04oETvphtxKLatnl174Hhp4LFiBeKsB0MqIe37q78TUU1dnQOYunbabd9BoSm2TzSu4X4N+Nj6b7DePR5KEWOrhBBOxOtTCtCt3m0l5jOdJ7EPXMELX8AuNZNO/rQp1YQWrTIqQlGvQoBH2uHd+nvQZsovt72tLgrjlzCd43W0 X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 6:sM91IyOqrkXcIplnhLVtxxwuWmEfLHGG0LI9nbiETC8hIPOttNdM8MvhTTAq/It38dMDuKNZHX68kxH945A2wjv0Nzn8bG8SsTwAEP8ypCAP60K+8zMjIrxr9tRgbmVktJEz0u9dk4AVwKJ3EUXW3JI60i1pOJhl+3JIo0YPMDSse62OPifX/5MZCwJpRKIn45xcE9Lj6NIpz3qxx9gvXpOWrHSx/7YDlgjcOZx+EMrmUrpkDoOO3GRFe3toAjMAQ4nehRSPhRshOj5D3v/LJLmnPT+Bcecf1D3RUL62ibIihZKvY0g1HYF56FuFHbDN3cCPd1EaSig+XxzRTESz0lOz0Ry/3P/4tjEuOAJCYUu4YL0jhoPlzVPoSa4Pz5L6MH4y4IWB9RWbiZkzXLqKdSdg2KhYYWSlClgXsH7m5Z/TyuIdRrnLQ0+pIxmrTgonfGJwfRwZ932xVB/dTM+dng==; 5:/66coXI+ZDZwO1psTDTlVxsGW1u6jIDxIgVbHyRYW0hcMhXDoVW1nVP/qBvxVfxqjtu+cPmgx96XyK4BpcoupqRdJw9ifoGZmVwxQaRQ/FjpUvtowm4aOzp8JDJjvb83NOnmNIwZtQ9qRYausoQXuaCTWfdA3YZhG01Sa2FggSY=; 24:oqsy6xeIFPlm8eec7xOGVAV8lyab2cE5huTzeFJwa8JSoDe/nO9zhUS2K7iR4EkHgk9FZiQv7EKTd6vLbVD6rM8gMeDf6YsfwqJmHx2iYAc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2473; 7:7NMg1o4ELFVNCwTM/40gFbk/WOnPE+sLhgnAVVEoNNboIEYw2CV8nc+UMypSSd08DuuIr/oeX11BTH9NwNe1HU8VSYshSBXB+ivyP7ESQSxPpMMuDdFzxDlE6RFalJbSm+Dk5MioiGvCsc5Eb1i1Hc2bxityNyQ1icjkLMcsTrXz8b4zZ5OPBmL63NsaRktFQ8r2M91oR7YCsuJxdRul/UmiudJYZ+yThyb8BrShRAAfFBR2NBOE9pjYdtJSNVlw; 20:XVUsFMgtjyBOP19jyOR71tyI51mFPhu85Ua2qSY01AkribOHWx1YzYhaSHuzyS19YUeZfB2vbs+x7mu+BuA3BlMoxXyAQ0GRTRE0DVVQt/5vpxvj6AmBv6uYPo88xof+XU4z/R0wfTRmXJzKImCOgS/sr2MAaw2szcOxfvPBNzmFrasRGtACzChAdytQDw6Q5NZZYFByGb5PrmDYHQwmJN72r8rfUfrDo5xVs2lONSzzEpHGnyL+kK0QXT7VTRkZ X-MS-Office365-Filtering-Correlation-Id: 4f31c159-d07a-4c56-d61a-08d5cd931b0b X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2018 22:56:43.0933 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4f31c159-d07a-4c56-d61a-08d5cd931b0b X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW2PR12MB2473 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.38.65 Subject: [Qemu-devel] [PATCH v13 5/5] i386: Remove generic SMT thread check X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: geoff@hostfission.com, babu.moger@amd.com, kash@tripleback.net, qemu-devel@nongnu.org, kvm@vger.kernel.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Remove generic non-intel check while validating hyperthreading support. Certain AMD CPUs can support hyperthreading now. CPU family with TOPOEXT feature can support hyperthreading now. Signed-off-by: Babu Moger Tested-by: Geoffrey McRae Reviewed-by: Eduardo Habkost --- target/i386/cpu.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 88bc73d..a55e501 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -4993,17 +4993,22 @@ static void x86_cpu_realizefn(DeviceState *dev, Err= or **errp) return; } =20 - /* Only Intel CPUs support hyperthreading. Even though QEMU fixes this - * issue by adjusting CPUID_0000_0001_EBX and CPUID_8000_0008_ECX - * based on inputs (sockets,cores,threads), it is still better to gives + /* + * Most Intel and certain AMD CPUs support hyperthreading. Even though= QEMU + * fixes this issue by adjusting CPUID_0000_0001_EBX and CPUID_8000_00= 08_ECX + * based on inputs (sockets,cores,threads), it is still better to give * users a warning. * * NOTE: the following code has to follow qemu_init_vcpu(). Otherwise * cs->nr_threads hasn't be populated yet and the checking is incorrec= t. */ - if (!IS_INTEL_CPU(env) && cs->nr_threads > 1 && !ht_warned) { - error_report("AMD CPU doesn't support hyperthreading. Please confi= gure" - " -smp options properly."); + if (IS_AMD_CPU(env) && + !(env->features[FEAT_8000_0001_ECX] & CPUID_EXT3_TOPOEXT) && + cs->nr_threads > 1 && !ht_warned) { + error_report("This family of AMD CPU doesn't support " + "hyperthreading(%d). Please configure -smp " + "options properly or try enabling topoext feature= .", + cs->nr_threads); ht_warned =3D true; } =20 --=20 1.8.3.1