Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp5265641imm; Sun, 22 Jul 2018 17:51:24 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdpvowXqtr6W1o73t5DWe3tL0uQAgPTqfMbJHlop9Mrl5tu8I4GH6LftlZZDF7Qgaa0lBaL X-Received: by 2002:a62:9d14:: with SMTP id i20-v6mr11074130pfd.3.1532307084591; Sun, 22 Jul 2018 17:51:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532307084; cv=none; d=google.com; s=arc-20160816; b=JLPd+ULy7vA7XtCTV4ZvVd5R5IZjkNq5kT/+M405nRIhR2Xz/7ZkfjZEVE04r9VAHd L10FYjdHaJrDBoi+5poe8DERXeOGnlRoxgxEsObL3Vvcv9pIPX7kAUUGhXSNr40CxlC1 CkaoaWJQ9gOfkheUjvwNzhBwPhi35y09H1OdHvdWaUjh+C0hS9kbqxxv4+t3YiLAJi9Z /HWjhXe6tBb/VL+ugsWf7+tTo/v7bgVtCacOLW1dd+UOh2oYfIcTj36Eb6o5N3IWwmxe JGiARaV9cYDTZWongwEtapIcIlBZlzI8b4cjD3GpSu30afr13YSv7MEn9pq+93rmBUVh NfXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=DDljZacJxZG2OWdhiAliNYhkc3j//3d2iZVEuKfWFo4=; b=Cr5+XerxIIvek8PeodEUz1D/45Ld5JKfyktNMfxki7S2SCBmMhERm7NieQzMxJ09LV sWfrN/RlVr8qvbkkD1ZwvS1iKPFy2epj+mBY9EecTS1dWgvau6KStFa0jWbsN7UZZyG7 4C4dgi6c6EsVHrCW/UkFII1wwTuccZYOw3k5+/jEp16htQkZAgj4JdvGbgLvmoTBgQHg JWU1ds+kohEKS0LwJItFdf7yhnA5EveB2LkhyuhTHiPhC3bE4pf76kf99NIIsMZF9k1s 1E1YFaFe5X8MY+DVHH5oZ3QTmRb7wBuVXdZiRD5idkxa+zoBpdxE99ICyk5Utj7Pk1ND 2zKA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=UCRhZQU5; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t196-v6si6564269pgc.308.2018.07.22.17.51.09; Sun, 22 Jul 2018 17:51:24 -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=@gmail.com header.s=20161025 header.b=UCRhZQU5; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731244AbeGWBqX (ORCPT + 99 others); Sun, 22 Jul 2018 21:46:23 -0400 Received: from mail-pl0-f65.google.com ([209.85.160.65]:44770 "EHLO mail-pl0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730429AbeGWBqV (ORCPT ); Sun, 22 Jul 2018 21:46:21 -0400 Received: by mail-pl0-f65.google.com with SMTP id m16-v6so7475988pls.11; Sun, 22 Jul 2018 17:47:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DDljZacJxZG2OWdhiAliNYhkc3j//3d2iZVEuKfWFo4=; b=UCRhZQU57k9FZSbidw1iYEO504K0Gc8Pb41aE1noNpQ8MaG1ARdlfX2NZdVIOYNC7U OVDfvqomLizu3TcT5oGlYfsqNc0M7RU8xjjNdQ9vj+Sq5ia71lydd+uaWFpGJWtt3OgG bF1xYkX+ITqxnjyjyIlGEVS6XQHxmNgtLRNs+ALdBNih2UrpXwEqsBOwad7PKnmP1JSe J2591Kqif40I0QNT8zF4PWOb+tOr3Ohg3EBN4XjojSyp/mxiyqAbALgaXf3ydcsxZbzF k5Pg2/JIhgf1He9ZtPTRM3q7AnF3cHrxphlDX4QtnY1/ThQ/ZO8QyJ39U+Gv/MKkHVQT W/6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=DDljZacJxZG2OWdhiAliNYhkc3j//3d2iZVEuKfWFo4=; b=DcWCsupzO4I+Sl6cJhRyQAvwT31ZzK/2fefuIWVjsSlw9XIlSjdJMZNile7I3G1aIV l9yFwmIIe8UXkA3rSczfeOuzkpzPoxivx2yymutdnJngJm11y2p0TuZySBHUe6udc0aK YiYKGv1KjX+peA3CkxChmo7vX5l4QIv9UVAhxdFgaoyp6fD+d/E+uNkURm+5SByVDFcT Ane0btK8STJR5WDcgDHh+xtJt0lJBVAtq/m0kwSJMy/nT/zDS1Z5yBJq5jySENjsnCWE nIbL7jW4794QOYT/w4SB/Pe0/6ntAv7T8mmfujgNi/Z8A1hgr6UKkW0ZFssaBgCXS4Y4 AaZw== X-Gm-Message-State: AOUpUlHvN4LDmvGwizPixU8cIEjTYAdQQFoyonrBJnD3d6XFLdFkwN+8 jdRkP/ayUwao7RotkJyG8zYyC7nj X-Received: by 2002:a17:902:14e:: with SMTP id 72-v6mr2776525plb.299.1532306865990; Sun, 22 Jul 2018 17:47:45 -0700 (PDT) Received: from localhost.localdomain ([203.205.141.123]) by smtp.googlemail.com with ESMTPSA id e82-v6sm11646069pfk.87.2018.07.22.17.47.44 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 22 Jul 2018 17:47:45 -0700 (PDT) From: Wanpeng Li X-Google-Original-From: Wanpeng Li To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: Paolo Bonzini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Vitaly Kuznetsov Subject: [PATCH v4 RESEND 1/6] KVM: X86: Add kvm hypervisor init time platform setup callback Date: Mon, 23 Jul 2018 08:47:34 +0800 Message-Id: <1532306859-31166-2-git-send-email-wanpengli@tencent.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1532306859-31166-1-git-send-email-wanpengli@tencent.com> References: <1532306859-31166-1-git-send-email-wanpengli@tencent.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wanpeng Li Add kvm hypervisor init time platform setup callback which will be used to replace native apic hooks by pararvirtual hooks. Cc: Paolo Bonzini Cc: Radim Krčmář Cc: Vitaly Kuznetsov Signed-off-by: Wanpeng Li --- arch/x86/kernel/kvm.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c index 5b2300b..591bcf2 100644 --- a/arch/x86/kernel/kvm.c +++ b/arch/x86/kernel/kvm.c @@ -624,12 +624,22 @@ static uint32_t __init kvm_detect(void) return kvm_cpuid_base(); } +static void __init kvm_apic_init(void) +{ +} + +static void __init kvm_init_platform(void) +{ + x86_platform.apic_post_init = kvm_apic_init; +} + const __initconst struct hypervisor_x86 x86_hyper_kvm = { .name = "KVM", .detect = kvm_detect, .type = X86_HYPER_KVM, .init.guest_late_init = kvm_guest_init, .init.x2apic_available = kvm_para_available, + .init.init_platform = kvm_init_platform, }; static __init int activate_jump_labels(void) -- 2.7.4