From patchwork Wed Jun 6 14:36:46 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Moger, Babu" X-Patchwork-Id: 10450335 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 C7A5560467 for ; Wed, 6 Jun 2018 14:37:15 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B91CA28F4A for ; Wed, 6 Jun 2018 14:37:15 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id ADC1D29574; Wed, 6 Jun 2018 14:37:15 +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=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, MAILING_LIST_MULTI, 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 EED4528F4A for ; Wed, 6 Jun 2018 14:37:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752202AbeFFOhL (ORCPT ); Wed, 6 Jun 2018 10:37:11 -0400 Received: from mail-bl2nam02on0057.outbound.protection.outlook.com ([104.47.38.57]:49407 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752156AbeFFOhG (ORCPT ); Wed, 6 Jun 2018 10:37:06 -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:X-MS-Exchange-SenderADCheck; bh=AQjCkghDrgu5Mk0wPsEaaZ+dV5xwpTOymJ65Y+OqK/E=; b=rC5mYv14IXFB1T7YT+1G1dlJkcU/OPII4R58yoe9ajPy7wuR4DedvpLK7LsbhwCVMl4tGSE1tGphFl4nvf3QpCILcJz88IhaIJqjUqdmIl8ykTPPz32Z4UM3Wq22t83FkS0PRnRE7hTk37QvFbKE57iYqBi6w3VaPV+SjscwfKk= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; Received: from linux-h3ml.amd.com (165.204.77.1) by MW2PR12MB2476.namprd12.prod.outlook.com (2603:10b6:907:9::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.820.15; Wed, 6 Jun 2018 14:37:00 +0000 From: Babu Moger To: mst@redhat.com, marcel.apfelbaum@gmail.com, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com, mtosatti@redhat.com Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, babu.moger@amd.com, kash@tripleback.net, geoff@hostfission.com Subject: [PATCH v12 4/4] i386: Remove generic SMT thread check Date: Wed, 6 Jun 2018 10:36:46 -0400 Message-Id: <1528295806-90593-5-git-send-email-babu.moger@amd.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1528295806-90593-1-git-send-email-babu.moger@amd.com> References: <1528295806-90593-1-git-send-email-babu.moger@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN4PR0501CA0082.namprd05.prod.outlook.com (2603:10b6:803:22::20) To MW2PR12MB2476.namprd12.prod.outlook.com (2603:10b6:907:9::15) 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:MW2PR12MB2476; X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2476; 3:gy1pfpBmZ32BKkWj5LRXzlCsxy5cY8Du8fAMW2sQ2Oif9oFE63Zzck39PK4jCsqQ1QQZhpNt4ads13C9W6EC1MNANJzXnJttpiH42DWWky74oDmpNARdoWQ2AgG3WMlTxVTYRHdgY/GeqUbfh9OhxdeVYqGStaEDkpDB4IY0MMRtAibeiufO+frMAuR41r2JFGkDInEqAmJ952eB7lKBKUilWAk/5lCc591sBXryABtgIeZiHFeavLA0iyHNHpgo; 25:PfX8Ns57yna0NobB1p3TTE2JDapHY4CiIiMuGtAId2pMOGSm1Yq7/KUl9bzLeqann7ww54Vj3aCFfglSqcMaJ4L1NQ373WiOxuTAaMhJ63aRrUp+3dHqiILrOlTMLx7ZIK1k4Fyu3VUaxMby21moL5/j3Rl2UI92kP4FirxvGvP+YG9khSgENs6acgBOpy8FZrfo/fMTpJQDbPDO++piW6MiV8U5Batcfv9L16izRRr9aLGvpwdf/D25rQIhwJ8xuEslsxXMZYFNLzva+JD/RSV/I+qbjcks4k8rDLyAso3eqcv4A0aXUrYkixzOdDAmgNrp6mB/DEBAS2ONQDZ10A==; 31:0CGz2ZA1VIVTmksQjcQ+7TfNTNa1qvnz+YxLZ5Jre9fekvv308R/qkYR4IYDQ75IIwbLrfBw/jP3OGUOgJya7HJbkjqi4N4+BVU/+Jkt4NO2P2+qv2WYjhYVzDGVDoMiwX2Qw2c6hWtVdLwK12MvTFKHm1DWOnwjTHc4MdEDznmaAZKkJ1jGdCeNlIVe2/CrmNYVZoWmdvEh5NXCZ5+OtBLc7kGTG/kCJWrZKAGeizk= X-MS-TrafficTypeDiagnostic: MW2PR12MB2476: X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2476; 20:Ofq1IHMa5nMxVSigmspDd2SdnD8aZvh73ATUX66FAYUVOFf7rjp1BakkFECVCf05ZbWHLIxhQXNqx/BPGGMSTA6O5ARcVT9nyk2u+opRWoc4H/v9jqs9/48drwQEmKfoo7aBlFkPU9Y+YmLDxFAj+Z/Gv1PbQuMHynkZfJ80NJ9JH7xEwczTsLUfo5E94AvPdIYIR2GKjcjlx3IUw0lsHZeiK0nMHj10BsMqy46voYdWkLte9NcxzPaRUyT+hRhVmxWo8g0fZbQOabVh/SYdF3Aylez+YfVM+lxIhiCS385uUntN1HZU7a1zY55oYdNFwk4PkW7j5zuO5/gf8yzNSIPI8VDGBe/LcTPEWs/2MHmmjM1Ue+c5IRQLlNq4TmEkwyqXrFR2p+qklUtKzHWt9j2PgAunxSno7tXwV1pn6OjfLZzaVPDrqQdbjai4/+N10H2uYpS5cEWoJTc/dWC93V+wPpabsw+PesD8UYpqp6S8d+pj7FEoryuYkZTy8Dkf; 4:FMex0HRMBgZtdZgRePKxX9kzwukG3kGMH1K4vMnZLSTUcvqZVWJ5guezHi0uUkudBiS8+HsCgFoLQGIS8H/GKZjerM8e2r3s7Q+ZSmXVXruyMNMVFiXzSJyF3NTmdFsJwEC2oE69RYUvRvv0HW1wH9OcOf1+CvObixrZbSPQOcmdNK9x8FUoS5UXnVGAh9E1c1+/tpbtmKIkftorXBac2QwjplvjooovBK/THxH6ZICw/HOjnQbSxRSCypduUlVD9TrnVW93kUSlzj88UAj8vwlCIrb/IXCV3mtxrCyZqjLKLlpOC06oFwjRDm2swwqE 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)(8121501046)(5005006)(10201501046)(93006095)(93001095)(3002001)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(6072148)(201708071742011)(7699016); SRVR:MW2PR12MB2476; BCL:0; PCL:0; RULEID:; SRVR:MW2PR12MB2476; X-Forefront-PRVS: 06952FC175 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(396003)(39860400002)(39380400002)(366004)(189003)(199004)(4720700003)(97736004)(26005)(50466002)(4326008)(59450400001)(39060400002)(7416002)(25786009)(3846002)(72206003)(6116002)(52116002)(47776003)(7696005)(386003)(478600001)(76176011)(66066001)(51416003)(5660300001)(81166006)(2906002)(446003)(11346002)(305945005)(8936002)(86362001)(6666003)(81156014)(16526019)(8676002)(53416004)(186003)(956004)(7736002)(44832011)(486006)(476003)(316002)(68736007)(36756003)(48376002)(105586002)(50226002)(16586007)(6486002)(106356001)(2616005)(53936002)(41533002); DIR:OUT; SFP:1101; SCL:1; SRVR:MW2PR12MB2476; H:linux-h3ml.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MW2PR12MB2476; 23:KnXqJx2MGF5nmO7CtxcA42PwwLI3KYTy7IdlECAwF?= =?us-ascii?Q?2VM3lcDgx9/3sDHMfLdQ+7e9WkckFLXDCb5RE1zkxwTtzstCW/aarClb+KM5?= =?us-ascii?Q?i2v0VKn7dx1jLhOND++SYqYdZzYPFl6Tv3RkdpCu4KrpNFm6O5ZlYefhcfVK?= =?us-ascii?Q?zzjzXIZmRtUODfYS1bVVDsCcYStVneVNcTGezvGRt5Atkg7kG2vnaoUMk+4Q?= =?us-ascii?Q?3jkXLFGAZDHVThvcT+0Yx0ZDCRoWgvWfOAxYYZd037ylaG746PZpiE3A6ypf?= =?us-ascii?Q?VM4CGN8Lz2nxPFmypG5bJTdromDH1mPJ+6+fwHz1TmWWwNmybB0r+dXBLUYF?= =?us-ascii?Q?DNlrcX0LNS3esV+Us5nTDkFIJHTtMVibHk0/gi1aiFnpPGEAun7f9VwrZO6k?= =?us-ascii?Q?29R0bnH+DSzZLdtPEOQFySXhFvi6wEBmNJZhSBnJrD+yBbM0Kf4mxOuUn4rs?= =?us-ascii?Q?MOQkiygZzBVe3a/LHd2H50Syzc4MeS4hDQKPbI4Qbm7e26uWJgDdtcQ21PTJ?= =?us-ascii?Q?ZXxpt5UyveNMG4zTBh9xQ62xa49P21LYiDuEKN1GIDC0yea3StYmWDXR/8Dt?= =?us-ascii?Q?D22zOKPIZgBgjI/uO88vub4p6S/2GF/vEjPbpwsD0Hrw9jhPVo6xLyc5Yt9l?= =?us-ascii?Q?02SUKpRtBDtdOnS4tJhHHbA66JaKvZzgUn4FpxgRILAMYIqw0/yISZek0mqB?= =?us-ascii?Q?q4EOuFCiSvpaOgkiVvicH4hqdv7hBQejE/mJcey+/1OsANXc9Nlx+iLveVFR?= =?us-ascii?Q?329+76fxMh6+dxOW/3axn7N9xbvtWdpG9HVGpkA0EMiudwHeF1hiZp5zSRFL?= =?us-ascii?Q?COGQCbV2O6ugQhy4Tqdl8QoujAOrj22fo94pwZ8Ol/L8MHJF1Ue2riMNI4XV?= =?us-ascii?Q?4fK9B/ObfAx8s0P7ggammiuOELbGVyOiwQDiua4Jj0SWIZgznv3RxxLXQqMa?= =?us-ascii?Q?MODHQ0FRiv5JAxBFIaaZMU4bOxwBSwMu48SeYFY1SRVHoBSrQA/UpMKQdGZl?= =?us-ascii?Q?a4SGJopvF/w5bI8D/27Zw33dmiPOMLrKNGRTQDklFHOBjow2OKQOcPNmLkqk?= =?us-ascii?Q?7EtJALP9/19bTaqLu6YfqU2+WAKLm+i6WyWN2J4YHDVahoLKQ+weqfO+lejD?= =?us-ascii?Q?INAHuo88EMaGl4rvvvj3xBysKQ1xSl70pBORPnWYsxRrc2a0c6uweyUWCxp1?= =?us-ascii?Q?N0I8V2iNd7ez9lSLlowOqcWAlD2/F8Vv1y12c2DyaKrdbVUEZxXkGs9uUisD?= =?us-ascii?Q?z0utZr6rQUGW7+wjYZd3nuRROdJ2fZnRiqBSZmE/EY/oYANalWS3t+evIx5H?= =?us-ascii?Q?8btFDeLbKeaBb8UDsiRkEYE+2WjRKXEo6iDSUWe8a7L?= X-Microsoft-Antispam-Message-Info: Ee27nogJ5kK9UOBf2fUFdYp3w9aWHIGTC6XCtLBH8A2vFOixxS1KsfVUnBo+J+GGduWzOt+6IgrBSiE7nbpIsYHsBLPzeKTV/kfaBt6P2MD3XT4p33jU52UKrYe962Nt2/6hnGyiqVeQ0pvv/U02vZ2lSZdH3lq1+yPMArf0r6i+WILwyLzxbpSii2N6pGOf X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2476; 6:JXmjfHdnfebPV/Am2gB4qQDqr79ywstci103z/cVJpo/30KrgnpobxARlwFy4xQXzykROx+fHS+5209abR7wBOGLa87XdP71iId2vc0RwO1cH6YxnjArKd8Hp+Ou4T2BZet12L8YXkwOppEnUUesAfEXoG1wxz4aHlmLcDMmSHLQxVOYsLthQAv9yWJWrCqmV6COcGsSCO1ZQbIzUUu9zabBXmM0iBlrkBtuesU3ksVplOeCnwIBLaCiQwYd/V7zImS/fnzX8w5ZHehNqdXkMhqibk7l6iOclhGXMCz5FB7RKErBX6BC0KUpUGNGLzZjLH8Rj6b78KqYFhR0bc7amV3DJs/ZH/hTCYTB5YH794rukB1AJFcL7SJ8h4YpF0AvNNw0N1Sd41P1ZxXUDuRUltmsViXY94yG9ypq9ULFpKC0YEgj4JUVvhmpQBtJJPIz9T19A6Ued6UFhiblPB90RA==; 5:PTVc49QL2UwmVaenmt5giQabM5XDZaXLhuRsmes+5vG71Ys978O4pWVikDyoRZ+LT01P7al6SLywnm+UvDeUIZ+goLZl4YFPLTm1VJgnl2lymat9f0BH3i39sRxvm05FRqJh1bpnc5yf8Ae+P95mZTsw6WNSY+pTULP8Nix5X/I=; 24:OyEeS8UvTstOpxo6SLg+YUz4F/d8FcsSjUKxNe6wXgSshxC2Do02sNAuzcGaDuYwZSkDYzlRMmAfMekNQX5mJwu8ek+gY3UfM31uiELX6ag= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MW2PR12MB2476; 7:NXyTQV+zhD/+nTwh3oaPSF7XqfhceFNj/Bjd4SiPBm2HWRvFifw8zdJMJisKSKCdASkTEkwjU4q7WZlEe16jBbiCtuZgywy/PXplJpwufJ4K4X58DktkTsx+rnxcHvzpmI+x6Cd7RppTzd0Mej9VogVbkTIrvSVA/XnEXxZG8Gvtdo7OJrzWqMhh+r9PuwhphXya+xX4hc3bYutyUaett4vMgZqk0t8CEApYm17c66845c7aVMBPTosjZWOo++oj; 20:3riczl0Cjkpi9f/9uIEqHGSCkJtBdTWRvFn4rxP0LUQ8WKISNoR4MJhK7WVHqdTDzy5xi0Cw4usZiJMqbP3jvZVN74cPnNNhH67kYDZ5DqR0yl6HEcsOK/+YIhrzngphDju8s5+fsHHc4qhN698VW9hH7FUQHWwvUYYT3nv+/JAagnVvy+OEwtOATw5dedN+VZkObOI1ot/fywC2JjY7VedkuvSRTn4GKyxd5VlfNLAksufb1EuWUftt3ZQYhot8 X-MS-Office365-Filtering-Correlation-Id: e685d84b-2823-4619-6204-08d5cbbaf72f X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2018 14:37:00.4695 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e685d84b-2823-4619-6204-08d5cbbaf72f X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW2PR12MB2476 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP 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 40bf5cb..8e22b37 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -4975,17 +4975,22 @@ static void x86_cpu_realizefn(DeviceState *dev, Error **errp) } } - /* 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_0008_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 incorrect. */ - if (!IS_INTEL_CPU(env) && cs->nr_threads > 1 && !ht_warned) { - error_report("AMD CPU doesn't support hyperthreading. Please configure" - " -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 = true; }