From d3d59b01294138e59995b31d2bcbbbdf45e26a3c Mon Sep 17 00:00:00 2001 From: Luiz Souza Date: Wed, 21 Feb 2018 14:21:29 -0300 Subject: Revert "MFC r328083,328096,328116,328119,328120,328128,328135,328153,328157," This reverts commit 430a2bea3907149b30cc75fc722b6cf1f81da82a. --- sys/dev/hyperv/vmbus/amd64/vmbus_vector.S | 7 ++++--- sys/dev/hyperv/vmbus/i386/vmbus_vector.S | 1 - sys/dev/hyperv/vmbus/vmbus.c | 6 ++---- 3 files changed, 6 insertions(+), 8 deletions(-) (limited to 'sys/dev/hyperv') diff --git a/sys/dev/hyperv/vmbus/amd64/vmbus_vector.S b/sys/dev/hyperv/vmbus/amd64/vmbus_vector.S index 6e396f3..8d09e24 100644 --- a/sys/dev/hyperv/vmbus/amd64/vmbus_vector.S +++ b/sys/dev/hyperv/vmbus/amd64/vmbus_vector.S @@ -26,18 +26,19 @@ * $FreeBSD$ */ -#include "assym.s" - #include #include +#include "assym.s" + /* * This is the Hyper-V vmbus channel direct callback interrupt. * Only used when it is running on Hyper-V. */ .text SUPERALIGN_TEXT - INTR_HANDLER vmbus_isr +IDTVEC(vmbus_isr) + PUSH_FRAME FAKE_MCOUNT(TF_RIP(%rsp)) movq %rsp, %rdi call vmbus_handle_intr diff --git a/sys/dev/hyperv/vmbus/i386/vmbus_vector.S b/sys/dev/hyperv/vmbus/i386/vmbus_vector.S index 9e28ef6..b9ea849 100644 --- a/sys/dev/hyperv/vmbus/i386/vmbus_vector.S +++ b/sys/dev/hyperv/vmbus/i386/vmbus_vector.S @@ -37,7 +37,6 @@ */ .text SUPERALIGN_TEXT -IDTVEC(vmbus_isr_pti) IDTVEC(vmbus_isr) PUSH_FRAME SET_KERNEL_SREGS diff --git a/sys/dev/hyperv/vmbus/vmbus.c b/sys/dev/hyperv/vmbus/vmbus.c index b027752..e8c683f 100644 --- a/sys/dev/hyperv/vmbus/vmbus.c +++ b/sys/dev/hyperv/vmbus/vmbus.c @@ -46,7 +46,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include @@ -136,7 +135,7 @@ static int vmbus_pin_evttask = 1; SYSCTL_INT(_hw_vmbus, OID_AUTO, pin_evttask, CTLFLAG_RDTUN, &vmbus_pin_evttask, 0, "Pin event tasks to their respective CPU"); -extern inthand_t IDTVEC(vmbus_isr), IDTVEC(vmbus_isr_pti); +extern inthand_t IDTVEC(vmbus_isr); static const uint32_t vmbus_version[] = { VMBUS_VERSION_WIN8_1, @@ -942,8 +941,7 @@ vmbus_intr_setup(struct vmbus_softc *sc) * All Hyper-V ISR required resources are setup, now let's find a * free IDT vector for Hyper-V ISR and set it up. */ - sc->vmbus_idtvec = lapic_ipi_alloc(pti ? IDTVEC(vmbus_isr_pti) : - IDTVEC(vmbus_isr)); + sc->vmbus_idtvec = lapic_ipi_alloc(IDTVEC(vmbus_isr)); if (sc->vmbus_idtvec < 0) { device_printf(sc->vmbus_dev, "cannot find free IDT vector\n"); return ENXIO; -- cgit v1.1