From patchwork Tue Mar 27 21:31:10 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Moger, Babu" X-Patchwork-Id: 10311719 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 6C406600F6 for ; Tue, 27 Mar 2018 21:31:48 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5ED1829AC3 for ; Tue, 27 Mar 2018 21:31:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5375C29B4B; Tue, 27 Mar 2018 21:31:48 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CF2F729AC3 for ; Tue, 27 Mar 2018 21:31:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752087AbeC0Vbq (ORCPT ); Tue, 27 Mar 2018 17:31:46 -0400 Received: from mail-sn1nam02on0057.outbound.protection.outlook.com ([104.47.36.57]:10954 "EHLO NAM02-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752055AbeC0Vbk (ORCPT ); Tue, 27 Mar 2018 17:31:40 -0400 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; bh=9znEw5mYslCCjxHBFO5YZFnvVZd0AU6NtXmzF4k5RTM=; b=pSFyhtqmXyWr+zfluRk0doiMQM/xTyvw2ann8nXpnCTFSUIrFPgMa+fCtfipdapCprFQiM8Afm/jDh7H4q755tbomVuSgzeryZeOlfWuNqVCqGdh6NKgj6En6Ifgg5W9apzUMj48BuKZ4fgotMluLakHZN38zqYwfqL+nbMDU70= Received: from linux-pyp0.amd.com (165.204.77.1) by DM5PR12MB1771.namprd12.prod.outlook.com (2603:10b6:3:113::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.609.10; Tue, 27 Mar 2018 21:31:27 +0000 From: Babu Moger To: mst@redhat.com, marcel@redhat.com, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com, mtosatti@redhat.com Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, kash@tripleback.net, babu.moger@amd.com Subject: [PATCH v5 8/9] i386: Enable TOPOEXT feature on AMD EPYC CPU Date: Tue, 27 Mar 2018 17:31:10 -0400 Message-Id: <1522186271-27743-9-git-send-email-babu.moger@amd.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1522186271-27743-1-git-send-email-babu.moger@amd.com> References: <1522186271-27743-1-git-send-email-babu.moger@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: CY4PR04CA0039.namprd04.prod.outlook.com (2603:10b6:903:c6::25) To DM5PR12MB1771.namprd12.prod.outlook.com (2603:10b6:3:113::8) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: a9a73d29-f169-4f7c-24de-08d5942a1954 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:DM5PR12MB1771; X-Microsoft-Exchange-Diagnostics: 1; DM5PR12MB1771; 3:E+ifZfPDPi4Z1uiCmUtHVtfrbhGu48I/MDhAbrqZ4v9dq26R+hJHMuKxNZif9pFfwpPG2w/y9A4ZJ3bOob2R7oqsf1jLr/Pb9Q0Q7RDWc5k8u5dpWpQIfttDrQ+gIGY3Hju39eNh0wrh7wdhDDl+Bu4vvyLCmmun8GHAyKw9bGG+Pw3ZjoTnE+vhkltDcNjSwHFko3uaBPv1uEtg+A1gb5EGDqvAs2gtyZxZFUr4kwwr9ScS0YgSkcfj6juYUVmG; 25:K/slV4kRU9c3EGfc0CLXlo1n3R8CZ0fa9Ov9s92pGTX8pgcWvKnXNJbeube+QvznxiaADnCvy7jXjnYUU6QYpHHXATFWrG0/3LQaaZr5KDCeq1P0dSO4JbVD0IOUSg1WLl/0ZfZYRLyj2pn8ci92K2iR7bEOLAVvJN03PJYF1ej4qp+l8HY0ZLwsYHlqyIPgbN7L5eBNNQykJJZCsbR+s7X+55NwLP38xPLYuvCnNBoCXcZcqh4kGYOG8O1mpIYt5rks5/KX17+xszpfHyNkNyrAxTKMitnRvMRP6jcIGWvVO1CuMR/5ZwQq3Miju2S27uEgiBjHnvWM+anCTqqNRQ==; 31:Jo9UwgMHLIpo0UjS9+xtbBqmEdOwuoQhr+Q+647vkNLQ3tWLxbD7l24ayMpPZT+qyCu3JEfWcP1hgs96olFkbuX19fOFPzCdSk8Sh5kJe9v1fyvY3U2viTezzkxn7OmG97wEKykYtzljcPwoKbKEgt3ZrZRjUUsOLESZpcqRToS8MSqcqa1hwQDmJ0juJ3LLb/pzCEWh+rrplfUzqMZCW/s0RDS4UOyEqoC3AjhyRAM= X-MS-TrafficTypeDiagnostic: DM5PR12MB1771: X-Microsoft-Exchange-Diagnostics: 1; DM5PR12MB1771; 20:PnP/Eu0Gn+se5FYYaR7LFjBoEyA0ih93PGvhCF8Kr4jWe8WAI4cZZAxI7cu2+jCLTq32zyy6rPHC7gvTHknOyHKdMg01vQgNx8D2Z2kc+XJHPn0dCDZv5cnAbXhQsfzCQi0W5Ed6zuRn1FYZZIAHsHP6O4K4gEBpobAQYXm+fIvtXEFyLXu3gNYMkeg9j8jocGEipS9YGjdbQ0Ihs6jMLP17KIbOJTlAqV0+v1kClI19koj6Sq/6NYVKWX3q0hIK696z6xRetHT2D6OD9jTRDZv9s0BqVu+6GxBfIBKlLXI96YPMVrx7wGHHAiz57XJvwqjbPOpZRNO3Vw6snsQd6G30aPK9jzyuuD9SB3KcxiOGlUwusLvtvA0KT3QLVPiNKE6jtGZZRfEj/ccG4FUYGVNuU0/VS+XYpbn+YdbXDP3x35bKVjRm93mFFkWm48z+byejRySd0jK6dljuZBAMxfThudgXYFs/oMmSzAzn4necqLYfRdisNN2anmTQPCJX; 4:KCggGPJArYqZuiYkOLQ/iKMPx1qe5KOxe56rQvjdP1EWIZBwYvwfMTXfC2CWtNaFN/sZxxMywcq+oyBkBXBpwT5fHzW++r057m7/FUxQQrbcgobiETt6rNSBQhTaAE2EEU31evqrmQ6pGClM8Nt5/kKbUWqVPZofQ70fLoxAlEZAlxbpqJ/madHrMjtkTk7KommVCAHueoIRIXfGs5cS2W1QE4Uh579Qgx1a6I9QrooukGfXzE+hloIroL8OWE24SMpqqf+dDY2e+P27U9VSyTLaWPHUjMyhjLbCRgoxl3OK6uq3hnB8e98OvzsWc22v X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231221)(944501327)(52105095)(3002001)(10201501046)(93006095)(93001095)(6055026)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(20161123560045)(6072148)(201708071742011); SRVR:DM5PR12MB1771; BCL:0; PCL:0; RULEID:; SRVR:DM5PR12MB1771; X-Forefront-PRVS: 0624A2429E X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(396003)(366004)(346002)(39380400002)(376002)(39860400002)(199004)(189003)(36756003)(6666003)(105586002)(47776003)(76176011)(25786009)(66066001)(53416004)(97736004)(7696005)(51416003)(386003)(486005)(59450400001)(486005)(2906002)(72206003)(4720700003)(6486002)(52116002)(4326008)(11346002)(5660300001)(7736002)(305945005)(53936002)(81156014)(50466002)(8676002)(6346003)(81166006)(16526019)(106356001)(68736007)(50226002)(8936002)(3846002)(476003)(478600001)(26005)(2616005)(186003)(446003)(316002)(6116002)(956004)(86362001)(16586007)(48376002)(217873001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR12MB1771; H:linux-pyp0.amd.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM5PR12MB1771; 23:HtjwkWUvN7Vox4OjP1FHlAVdfuWAClxWQ7IjMjIwb?= =?us-ascii?Q?kkCVlmYK6h36yR1wSQeNh2UTgBqZWJWT0Yc76JtGmo5rrebU+XPU/DAjjSE/?= =?us-ascii?Q?yUBTbkjRHACZTlAQjH/bl7WGqc9oRrIbWKJxqwDG18c7s9y06Lmjpo4bXbVH?= =?us-ascii?Q?op2CGFl3NFs9VKs8gRbODVENGL2rD01aZD5nXDYrL0v5Y3HwIeQMgZDCJmzT?= =?us-ascii?Q?t8o/9m6zIJhL8RNn0DxuevmcwiXznKpfGIojGBoBJTMcu5ZngxQDY3CwiX31?= =?us-ascii?Q?sQ+HKHs2soiaLvs8EDytMTrpkEhV19nqt5Cbx76i1y6Ffy5TL6XzR1C1ghxW?= =?us-ascii?Q?OEhDb/MsNaPwBUoaUONtxobhPJ7jNkGdXsKO+RclC2v38cUUZr3wlW5pyaaz?= =?us-ascii?Q?Fbfh1TRwtISgPSeo+WmDGJpuT5tcmAiuB2ZOw6qOV460zwgIypL8WwjYMKXF?= =?us-ascii?Q?iZTTad2ZiA0PDO7NHGE/xrfG5lxrIh3fuePMy3TL2r9EB1MG6teWyrcNlj1d?= =?us-ascii?Q?SbSQLgh4fw0U+ta/WWWu+PmrU1jvuI8krqw6CAMH++L1ISMWsrv3n+ChM262?= =?us-ascii?Q?xRRY5gLUBaUJshShIr+NvIqKYdXGuNjSPCEsBMmz89k5rDpV14EWZn5YA46M?= =?us-ascii?Q?APDk6v8zpEN4RsvOLJ20mckxczHARNI4nOQJ7gmrcNO1r62wxxyChmQ1+4lR?= =?us-ascii?Q?gJGf3CB359eNpPgYQ0BbhBbxZirumwzjG4V3jjJBPpmFfvGroxld+BzfydsA?= =?us-ascii?Q?eLwLACFlspoLSjcjZ7pAXZTYTv0aVcihU9trqjr+kq2/MUznAJ/dBR9NZEhC?= =?us-ascii?Q?9w1ODR1UQcwx289YbjB1FzjHZ5y4uk0GihWP6Pcv77DOhyHspc4C1o+jvvrl?= =?us-ascii?Q?RMDMWHTjRuV9u31mlJfUiQo9KXCm13X/jXFSO6xMHPFa4Xg+XeLNhLHhUM3y?= =?us-ascii?Q?FtetPAIwVB/KFX/C2kcnPVBzmKuBp8VHhf3l+xAO8Jerz6ljyWdVujpqfki0?= =?us-ascii?Q?AJfd8RQ6TpSI7HU+tjo/+BfsRWFKZEAW/3/Q/DtIFMoAUKIJAJBp4morwaCw?= =?us-ascii?Q?/N9sRSze2nOq5t/XwN19I3QXczGMdWeh+la1rs6PdOcsrBi6p463vmJImXFT?= =?us-ascii?Q?TGTfqPfkMSVsJk/z23TdfoOZzg1C9BaZKLkCucNzHM4ka5vdAenYX1Byvl+M?= =?us-ascii?Q?mBQw6ewWQHmZU9KEQZW/FC24OMhqvoKWxPIlsVOaBcUO0CN7OGEhGHmNpTcg?= =?us-ascii?Q?0qcV4xDlFlBFH3vjdw/Iee6/Den9Qje/4We2O4pb9yt4s/TmdhQ+jv8dG0OC?= =?us-ascii?B?QT09?= X-Microsoft-Antispam-Message-Info: 7r1E5DLXvz7/Sizt4Tusr3WwcS44ZJrYweSWr+inxrs++cntNMemY86QW/Yz2L+WgqZJJs0oQvqS61ZoCdh6ooH/qovmf7M8Y298N4PPzfD01GgEY6CA6XtaM+dsKPm45shJUt6HGpn/C8hPHSqmV4MeVMPSfz08yP68p0tTrwRiSu8SLK4MZuN84w9O5Vyo X-Microsoft-Exchange-Diagnostics: 1; DM5PR12MB1771; 6:7cOFgGhqByWxQjSfSwI5C0vuuqjf5VeiM8wc0Fjj+rjoLu2dwUbPm9xjnvd6ePe/1NPpxnqWK6gvvOf9YRMTkGxpezw+aQyxLt4M+DPL4F7tU+AdalHuVqidNCsMe+JvCdw0m/ynWfh9ly0vzHQolZgW01wDXgT/dRpH8lfEa5cAas+f3pLgcN1N272Dd0zZ02amLSis2VgT4h9ZRfvzgci8o/uBH+OJEywvkx/HkKonN+pM8K0iJHqvUh3P3uSLZelhZujU0mYpLa5NjzvKMO+zLA7sGwlCB4ZtchMxQ5l81EK0PZZalg4tC6TtbA4tT6c7AOp6jJfpGYb8Q2IYz6i3XAh9NFEuiR/Y0IzUFVgJEGPnjVEotYtt29n/85wQ7IsKmgAnAFS3wPR6hid3G//848Voh+ZCTRRxLo/Vj8iErk3I5BF9zoXwm+SK5fvWthBAH8s0fGKjq9uIZBppnw==; 5:FWPa1oRiSRgKpA1/0bbdsalAo6HMfs17rE+9FAPyiVfGGPoj9MzKBp/hE3rDtAiECqQjCU5lNyz0g6bDXMbHYIOMvF9JkLihu3sANZtumJ9FX/B/77pobYOPez6lbz9sUFcI5ja6vyXs+TwHYxWCq/SrI2olh0aVS43Y7KVhzPw=; 24:S5cijxjIsOSFof77aNwb01KEul0OhOULI8xTFmdsCF53z2kML99o+qaecUoigVg9F4oSuqvhM2H/Z+nwW0PNirjiN0jOZHhqa8TZa2FKpmM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM5PR12MB1771; 7:Qq2kzzUBFAnDtBAV4zjgmZmvRHOP0fFuj1IP6ZsnPag5IHDbPuQURk3fu7PaEAK2rktT3r/cHpUPebYy6w8f4s4aOtcIoS2BQ17OM8FGymeiiy1D2xwwVMzZa4UhQpXUntL+fk6Pa8WAUphi4bSBMz9OGRv/39LfEaWV94Oi6NZCCI3gaPiH5aQ3cwNtWRm9M/yjoHz0kWUWYrjeW6EjQOtQRxRg+dkYcPHS/eFojyt2wneaWs/5/nqSW2hOGVkJ; 20:kRnrJhIPfe0yzYG9dBElaQ0P2nxtpH3K7T40O8m0p4vTIkawRVg0FpxXdL3PyRpGOnOIsPjOwRNUECOIw6ibOf0BFMPXDr95Ex04+3RgAQUIeamnYT5eLl+mq6Yz1pjiIewUb702O9CHH9/K9SR/mAItEbFRiiCJtcwA7TAPM7CKD8Yh7n0B0nbfuG2ZrWD8DrrETJUnQtWyeUpKMsQBAmVJGoyhkefCWZEV2GLUUTI6DC4jg/k4ODSs5Q2gFbnm X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2018 21:31:27.1025 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a9a73d29-f169-4f7c-24de-08d5942a1954 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR12MB1771 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Enable TOPOEXT feature on EPYC CPU. This is required to support hyperthreading on VM guests. Also extend xlevel to 0x8000001E. Signed-off-by: Babu Moger --- target/i386/cpu.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 6f3ad44..f8e7325 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -2330,7 +2330,8 @@ static X86CPUDefinition builtin_x86_defs[] = { .features[FEAT_8000_0001_ECX] = CPUID_EXT3_OSVW | CPUID_EXT3_3DNOWPREFETCH | CPUID_EXT3_MISALIGNSSE | CPUID_EXT3_SSE4A | CPUID_EXT3_ABM | - CPUID_EXT3_CR8LEG | CPUID_EXT3_SVM | CPUID_EXT3_LAHF_LM, + CPUID_EXT3_CR8LEG | CPUID_EXT3_SVM | CPUID_EXT3_LAHF_LM | + CPUID_EXT3_TOPOEXT, .features[FEAT_7_0_EBX] = CPUID_7_0_EBX_FSGSBASE | CPUID_7_0_EBX_BMI1 | CPUID_7_0_EBX_AVX2 | CPUID_7_0_EBX_SMEP | CPUID_7_0_EBX_BMI2 | CPUID_7_0_EBX_RDSEED | @@ -2422,7 +2423,8 @@ static X86CPUDefinition builtin_x86_defs[] = { .features[FEAT_8000_0001_ECX] = CPUID_EXT3_OSVW | CPUID_EXT3_3DNOWPREFETCH | CPUID_EXT3_MISALIGNSSE | CPUID_EXT3_SSE4A | CPUID_EXT3_ABM | - CPUID_EXT3_CR8LEG | CPUID_EXT3_SVM | CPUID_EXT3_LAHF_LM, + CPUID_EXT3_CR8LEG | CPUID_EXT3_SVM | CPUID_EXT3_LAHF_LM | + CPUID_EXT3_TOPOEXT, .features[FEAT_8000_0008_EBX] = CPUID_8000_0008_EBX_IBPB, .features[FEAT_7_0_EBX] = @@ -4575,6 +4577,11 @@ static void x86_cpu_expand_features(X86CPU *cpu, Error **errp) x86_cpu_adjust_level(cpu, &env->cpuid_min_xlevel, 0x8000000A); } + /* 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);