Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757432AbdIIJjw (ORCPT ); Sat, 9 Sep 2017 05:39:52 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:57382 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751134AbdIIJjv (ORCPT ); Sat, 9 Sep 2017 05:39:51 -0400 Date: Sat, 9 Sep 2017 11:39:43 +0200 (CEST) From: Thomas Gleixner To: "K. Y. Srinivasan" cc: x86@kernel.org, gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, olaf@aepfle.de, apw@canonical.com, jasowang@redhat.com, hpa@zytor.com, mingo@kernel.org Subject: Re: [PATCH 1/1] x86/hyper-V: Allocate the IDT entry early in boot In-Reply-To: <20170908215450.735-1-kys@microsoft.com> Message-ID: References: <20170908215450.735-1-kys@microsoft.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1207 Lines: 39 On Fri, 8 Sep 2017, K. Y. Srinivasan wrote: > Allocate the hypervisor callback IDT entry early in the boot sequence. > > Signed-off-by: K. Y. Srinivasan > --- > 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 3b3f713e15e5..236324e83a3a 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 > } Nice. So we can make all of that gate/idt stuff __init now. That makes my previous fix obsolete, right? Thanks, tglx