From patchwork Wed Jun 15 22:23:45 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Suthikulpanit, Suravee" X-Patchwork-Id: 70133 Delivered-To: patch@linaro.org Received: by 10.140.106.246 with SMTP id e109csp83473qgf; Wed, 15 Jun 2016 15:24:19 -0700 (PDT) X-Received: by 10.36.158.133 with SMTP id p127mr2819542itd.97.1466029458957; Wed, 15 Jun 2016 15:24:18 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q14si33023799par.57.2016.06.15.15.24.18; Wed, 15 Jun 2016 15:24:18 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932939AbcFOWYR (ORCPT + 30 others); Wed, 15 Jun 2016 18:24:17 -0400 Received: from mail-bn1on0099.outbound.protection.outlook.com ([157.56.110.99]:12704 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753136AbcFOWYN (ORCPT ); Wed, 15 Jun 2016 18:24:13 -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=A27hqupg0z95Rv9RbWfz1MJrNBwm73eYXhvApuKb9Gk=; b=LKnQ9R86nl9GtL6FzArKX+pIMIDdjxMF4BvVe6+ZW5YNqpS8HzoCHKUYrIk371YMQYa7dEVsmobqCpRn51ZtuYUx6ml8oAwvMxvEiecZedfW6qcpLxnno9SlonVUm51khsn9ae50WOchOsw4c2lqXn/+tYS2rTt+E1vUxZXwXp0= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Suravee.Suthikulpanit@amd.com; Received: from ssuthiku-cz-dev.amd.com (165.204.77.1) by BLUPR12MB0436.namprd12.prod.outlook.com (10.162.92.141) with Microsoft SMTP Server (TLS) id 15.1.517.8; Wed, 15 Jun 2016 22:24:03 +0000 From: Suravee Suthikulpanit To: , , CC: , , , Suravee Suthikulpanit , Suravee Suthikulpanit Subject: [PATCH v2] KVM: SVM: Fix implicit declaration for __default_cpu_present_to_apicid() Date: Wed, 15 Jun 2016 17:23:45 -0500 Message-ID: <1466029425-1736-1-git-send-email-Suravee.Suthikulpanit@amd.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: BY2PR05CA052.namprd05.prod.outlook.com (10.141.250.42) To BLUPR12MB0436.namprd12.prod.outlook.com (10.162.92.141) X-MS-Office365-Filtering-Correlation-Id: 533be466-6a47-469e-a025-08d3956bc54b X-Microsoft-Exchange-Diagnostics: 1; BLUPR12MB0436; 2:Z/RNoouDVhsDbz8gqqLWuIGR6RCTMNwbUqZ3kSWjfVGbHpKrE0PHBaIR/+1UUf3PVt6k2Q5UGYX5tE62i3HnVVbN4NIxrEZKaRb4x7FOFMn+VMI24SLiF+zHk17R/ekPy1X23PrJOWjhUxgvqtzH5GgvbyZUIO2msQo60xb7y5j2/tIFWc+MRz9feeq6Ff6y; 3:r/qsGXUOpptpUNr1O5j8/5CFM/OC/IIC8FjKX9L2jfrzG+jIzfEjIsGMjm2iLNygJ6TfwEY38v0MRHUmkTqLZR6jobwmNiuhpTsfjCGma19Sq4jk/oWzersooVq/sMF0; 25:RaGMAmDw2Hk0RpsqyUtic0OPp884QC9jpm9NTv6lxZcN4d97r+PY5Zz9iJaMMZu5iDVWENNcElAik8YdKNEwsWbecyQh+EaBA6PTQ14Lb7e5eewfOSG6wbR8tU7sFTxZ5dQ89dBl9bjQdDdFAKdnh5nEXnFMRifuXuNmSXJuRnzMbc6KM/pVoYVHsb9jAEreDpnhBSBwnZAKh6tRts2aQXA8QfOXE7ZRlasHkltjVx3LLRUFwDdPtgh7UnE7Fz3OFyHJo0zJWHTFipkg0QFQyIfPu3/20ByxZZSrPoRLPL7gicRJx/JzUd08Gp1oBTFBXXaoMuFyH8o3UUpAbgrOYKwr9Fij6aG0OGgNuRLsS79skOskkHsKZS0W4oh899oQGMhKD0x70UcAkJLeGvPHvdvDG48DXt0VuaisS7jhNeA= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR12MB0436; X-Microsoft-Exchange-Diagnostics: 1; BLUPR12MB0436; 20:xcKelN7cUmxxusZmpHRRaajpSuBy2z53GOjETWD0Kp3WsyuHAQhDsmo6IaOtN4OrL115OTfqJkwD8emK+TmMSI9/tQBy6/9iweXVny7aUKUBfeRgXPlpQ2Y9mbyI4/mQm0rwotRR5QfigyfKkQNyrkJPjl/1PCz7kZY2vAttsmGrUVxVf54yCRRYKAlOwVoARwRHR3D3qz+yntdk9gSAJfY5hHjkIYsNdN9Tizm/bjR8jidvIq1J1cVYD4iKABFxHS8NRJcH9LmG0MlnbMhGTvZHjfEZTntNTfS10GoYNhh2U70rimBBhXgXkgBerpg3b/3Wb3ADzEm+wMYaJ3wDJ7ibenFY3Tpo4zVngnwdW+seEM+IZGoAnJ/9kY7eIehVwuu/LlbfS0OTuEbOytR7iiinZb8DefzqbLGGuoiiavyDc2RxTQmjs5m6u+z5VyXJtmv5s3p+g0XKC/VuTTJsPZH6krXsdZuct4IXEm/uXcJYH97khfIPVVbmnCaG8FGc X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026); SRVR:BLUPR12MB0436; BCL:0; PCL:0; RULEID:; SRVR:BLUPR12MB0436; X-Microsoft-Exchange-Diagnostics: 1; BLUPR12MB0436; 4:Jw/jYvlEJHbZrG1MpRrhSBAXZgdGMQ4dxStsfQmx0FQHaqbKoJZWRL8BeUECCEAYI4GJCwYFKc+fxUHSirKVK/jMJXc8oaKMxwqIstyuq0Ge4g+cmQxlxX8SPW0yqtFlgfHBXiLtZwx4296vgaGtr9QFGiiIRy/BFlD27Nsuaj4UqT0wclr4p2xUAFEp6jANS2jfpeD0juDGvGTTLBs9/3H1nFP2XgaIrvNn3M3T62V/7ke3MRDRcoEstW2FUXP9gHlw7I4HGZMES80y+1k3aYArnx+vj8ksaQqA/ymHfkk5joU+HRXg/5Q/MImbbXvcJMvL7WuwMtgQsanIvzEYdwT2uzvyAvM++f4e4BPRz70LMtpm6TH25iBr4laxLXeuHPhlTeJDPZrSEUqM5WZgaNT5/vbVoU+11zQqnWiuaqFC1coyKFNmMC2k2bltFB2LD9aAhDV3Hx7u2C+SGsWv8A== X-Forefront-PRVS: 09749A275C X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(7916002)(199003)(189002)(81156014)(106356001)(50986999)(8676002)(81166006)(48376002)(2906002)(4326007)(19580405001)(47776003)(229853001)(50466002)(19580395003)(66066001)(5001770100001)(97736004)(189998001)(53416004)(101416001)(92566002)(5003940100001)(50226002)(5004730100002)(86362001)(42186005)(5008740100001)(68736007)(2201001)(3846002)(105586002)(36756003)(586003)(77096005)(6116002); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR12MB0436; H:ssuthiku-cz-dev.amd.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; CAT:NONE; LANG:en; CAT:NONE; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR12MB0436; 23:hkzliukcajmUvnwmCPDBeSSAW2DMJqXr2FIV7NzzJ?= =?us-ascii?Q?GpzW3D+IdBbFfPErKDQe1B6cKzlaAx+ONwIoywpBvJwtFmoh4kdO/IkkOj3f?= =?us-ascii?Q?b5Jz4581Q9nXtbfMHExLEeU2ka6qknOqHitbjnfXYoPIavSZ3YLPE7jt4AdC?= =?us-ascii?Q?ERx+l+NePuWgb2HxZN2oPo6Mrxh6Do9XHRd9aMcDVxdiVKKLEOZ/mXyOwj2c?= =?us-ascii?Q?qdMj9SirKseRmHWok1vtX0RlpdI8XxWIrVMkZE3mY10x6BlgGKJ9fF6eaQME?= =?us-ascii?Q?IFB3bjJbIybMuZwCcTy4ZWWJHxaewsOy5ZKBzv+MHhp1EGBAT5hp//WgWfbe?= =?us-ascii?Q?Z9agbhoxP06Rbd69387ul4uPkUwDcRXq7WSrJr5iltwtbZprzj1oAukRtkB6?= =?us-ascii?Q?Hu7j9xtFQX2/rQOCsKiD6qw2SMpHqGBJkOvY4tHqarE8VknGQcvv2BQp7b84?= =?us-ascii?Q?0mbCYAGZWeJY2VfWXbuDsHXNhoHNzkaD6Gqeg6GWKPWi7k7KxVrmzWpi+Gzb?= =?us-ascii?Q?SkB11pfwqd4zzIFJFzeIohU50GhnghHMvaOV7zowkysTRDVMd4p5NRh83IRM?= =?us-ascii?Q?HjWhUZZctAo1sjv6RifuNtgaVp/Er98uyjlOr5bQNgZXkU3qCp5NcUv84K5H?= =?us-ascii?Q?HPpuGmDavEbQbzrlyFN4TFam9oWPbxDqaxPng0JFBczUAmWq5XevDsK/wp/A?= =?us-ascii?Q?M+WhfinhReABpLN/NBFopdJX8MXJrZqtA18jPVAILsZWTnYUaIPgoep/IEW8?= =?us-ascii?Q?P1v9oKC7j4sYpjLSuMgwKVYgfdc2824xD7iFUHU8zRdPINIOk9z6/8A7Xuhy?= =?us-ascii?Q?3L4es8CiqE3nm+O2q3j5NFci/5x6Csc/CUT2Xgo9byewBGMzIm9NU4ri7cAd?= =?us-ascii?Q?gw75VqRHDLmICUpYrBph8JVI7KTBXgqljJgGlBngNrpUUgpaSAiNauudMCVM?= =?us-ascii?Q?Zk7XwWqSvd0AviPgj2IYUE3BcY329Hs2p6P/Qb1iOIVdoM9zlUHAolCs/dJb?= =?us-ascii?Q?O4amvGch9HYZNwl84O+wNq6Xc0DAzvFwF5ayR3bi6SRsA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR12MB0436; 6:Uf0VP00rYefG+fgn/sZ5FJ0g4u4PH6YNzz9RtHCW4Om4Ab2lwl+3y3BXxyZVBS6POaUf9RYyKUlw5SArEH1JOLuVUt/+PKEylEAmBjc/EC09CX3GVB7Vx5HZZW0foDPcwGjXpXi3jNdZB+SYtS+IqDWJElHTfEt4Ny1RyOOYJhxgAiCJiXPpwf0kN4DV2skpHRt11FpgvNJ194fgUY4xTJ+VCyCdoTuI1P9Ri9W3J6SBSOgQFmver0E5VTy+LvecgPLvsr81FWhrEpcicFWfxwLYlDha1JYjqvJiZ+gzzvHThuVnpgeKcgjp9DSR49IL; 5:LPkl+4DvWt22Wao1NKyycRlB6kfrz+gJ1XF7oNPE6SOeBWRKXCQPR3q2Ue5GI6fd3+ym6KRniuVwT0JwxLyJVMCZwIfbYzsBkkNXF4R3ukI6UmokxBRseRW2NK/9dj+a69DmuNT8CEi26mKPU3Q7Ag==; 24:Sx4pIgmH7ljRcpxuwJ8mueybJQ9N4zMGFbBbTqSjp9U+cER+QETArYNWKiMy22HJKZUwpKwWHgUjuaG3ct0YSLOyhjtHnhYqKdxEd1RrpaI=; 7:osgt9rlYXHyHdCwpAk/eSQLAjI8GUt8flFWvo3/iW7wzfnUUo8MlbAHQ9vSb40Fk27sUzJTXC6sRXI4jZHy8yQeKfY7xr2hcN14kmfyghw4XuMga3QUZThZKM/p6BiUBdyAK8qoTHeNfpqRpxShRFkL27tks99LHfyemu8qKIm3fPy6gra5YG2iYlpkFiCDTyr94wnwrllZ2bpOcv0P4AQ== SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR12MB0436; 20:lzPQ00Sy4eoIOUPE9rSYFiNUlyquOzLDvDIsSXN1zNBEz0S3alV4eSfxYQHnFCPjN9rOT5sPYXwzN8qBRPGwvMKO8gwXxvMyL3zNkdWtNSEnYT0shi4/kzny13QkVsQ+zY+uHihN2KH2pRA8TEHaKZXVdehnnTN2FNqukqDZCiT7bhg6W93S2Fcrjvcuwsr1hOsm9EcxL6iUGOJ6W6scp+qXM3Ql2D6AlNaLotAEd0qhFV5EUfzXYk7Aa3ANooAC X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2016 22:24:03.0976 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR12MB0436 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The commit 8221c1370056 ("svm: Manage vcpu load/unload when enable AVIC") introduces a build error due to implicit function declaration when #ifdef CONFIG_X86_32 and #ifndef CONFIG_X86_LOCAL_APIC (as reported by Kbuild test robot i386-randconfig-x0-06121009). So, this patch introduces kvm_cpu_get_apicid() wrapper around __default_cpu_present_to_apicid() with additional handling if CONFIG_X86_LOCAL_APIC is not defined. Reported-by: kbuild test robot Fixes: commit 8221c1370056 ("svm: Manage vcpu load/unload when enable AVIC") Signed-off-by: Suravee Suthikulpanit --- arch/x86/include/asm/kvm_host.h | 11 +++++++++++ arch/x86/kvm/svm.c | 6 +++--- 2 files changed, 14 insertions(+), 3 deletions(-) -- 1.9.1 diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index a714cc2..fe1c5c3 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -27,6 +27,7 @@ #include #include +#include #include #include #include @@ -1370,4 +1371,14 @@ static inline void kvm_arch_vcpu_unblocking(struct kvm_vcpu *vcpu) static inline void kvm_arch_vcpu_block_finish(struct kvm_vcpu *vcpu) {} +static inline int kvm_cpu_get_apicid(int mps_cpu) +{ +#ifdef CONFIG_X86_LOCAL_APIC + return __default_cpu_present_to_apicid(mps_cpu); +#else + WARN_ON_ONCE(1); + return BAD_APICID; +#endif +} + #endif /* _ASM_X86_KVM_HOST_H */ diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 5b12438..0d2aa13 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -1402,7 +1402,7 @@ avic_update_iommu(struct kvm_vcpu *vcpu, int cpu, phys_addr_t pa, bool r) static void avic_set_running(struct kvm_vcpu *vcpu, bool is_run) { u64 entry; - int h_physical_id = __default_cpu_present_to_apicid(vcpu->cpu); + int h_physical_id = kvm_cpu_get_apicid(vcpu->cpu); struct vcpu_svm *svm = to_svm(vcpu); if (!kvm_vcpu_apicv_active(vcpu)) @@ -1434,7 +1434,7 @@ static void avic_vcpu_load(struct kvm_vcpu *vcpu, int cpu) { u64 entry; /* ID = 0xff (broadcast), ID > 0xff (reserved) */ - int h_physical_id = __default_cpu_present_to_apicid(cpu); + int h_physical_id = kvm_cpu_get_apicid(cpu); struct vcpu_svm *svm = to_svm(vcpu); if (!kvm_vcpu_apicv_active(vcpu)) @@ -4328,7 +4328,7 @@ static void svm_deliver_avic_intr(struct kvm_vcpu *vcpu, int vec) if (avic_vcpu_is_running(vcpu)) wrmsrl(SVM_AVIC_DOORBELL, - __default_cpu_present_to_apicid(vcpu->cpu)); + kvm_cpu_get_apicid(vcpu->cpu)); else kvm_vcpu_wake_up(vcpu); }