Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752332AbdIMJ3K (ORCPT ); Wed, 13 Sep 2017 05:29:10 -0400 Received: from terminus.zytor.com ([65.50.211.136]:48745 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752138AbdIMJ3J (ORCPT ); Wed, 13 Sep 2017 05:29:09 -0400 Date: Wed, 13 Sep 2017 02:25:36 -0700 From: "tip-bot for K. Y. Srinivasan" Message-ID: Cc: mingo@kernel.org, linux-kernel@vger.kernel.org, peterz@infradead.org, tglx@linutronix.de, kys@microsoft.com, torvalds@linux-foundation.org, hpa@zytor.com Reply-To: mingo@kernel.org, peterz@infradead.org, linux-kernel@vger.kernel.org, tglx@linutronix.de, kys@microsoft.com, hpa@zytor.com, torvalds@linux-foundation.org In-Reply-To: <20170908231557.2419-1-kys@exchange.microsoft.com> References: <20170908231557.2419-1-kys@exchange.microsoft.com> To: linux-tip-commits@vger.kernel.org Subject: [tip:x86/urgent] x86/hyper-V: Allocate the IDT entry early in boot Git-Commit-ID: 213ff44ae4eb5224010166db2f851e4eea068268 X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1920 Lines: 52 Commit-ID: 213ff44ae4eb5224010166db2f851e4eea068268 Gitweb: http://git.kernel.org/tip/213ff44ae4eb5224010166db2f851e4eea068268 Author: K. Y. Srinivasan AuthorDate: Fri, 8 Sep 2017 16:15:57 -0700 Committer: Ingo Molnar CommitDate: Wed, 13 Sep 2017 11:02:26 +0200 x86/hyper-V: Allocate the IDT entry early in boot Allocate the hypervisor callback IDT entry early in the boot sequence. The previous code would allocate the entry as part of registering the handler when the vmbus driver loaded, and this caused a problem for the IDT cleanup that Thomas is working on for v4.15. Signed-off-by: K. Y. Srinivasan Cc: Linus Torvalds Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: apw@canonical.com Cc: devel@linuxdriverproject.org Cc: gregkh@linuxfoundation.org Cc: jasowang@redhat.com Cc: olaf@aepfle.de Link: http://lkml.kernel.org/r/20170908231557.2419-1-kys@exchange.microsoft.com Signed-off-by: Ingo Molnar --- arch/x86/kernel/cpu/mshyperv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c index 3b3f713..236324e8 100644 --- a/arch/x86/kernel/cpu/mshyperv.c +++ b/arch/x86/kernel/cpu/mshyperv.c @@ -59,8 +59,6 @@ void hyperv_vector_handler(struct pt_regs *regs) void hv_setup_vmbus_irq(void (*handler)(void)) { vmbus_handler = handler; - /* Setup the IDT for hypervisor callback */ - alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, hyperv_callback_vector); } void hv_remove_vmbus_irq(void) @@ -251,6 +249,8 @@ static void __init ms_hyperv_init_platform(void) */ x86_platform.apic_post_init = hyperv_init; hyperv_setup_mmu_ops(); + /* Setup the IDT for hypervisor callback */ + alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, hyperv_callback_vector); #endif }