Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754938AbbLJRxf (ORCPT ); Thu, 10 Dec 2015 12:53:35 -0500 Received: from o1.f.az.sendgrid.net ([208.117.55.132]:17695 "EHLO o1.f.az.sendgrid.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754088AbbLJRxa (ORCPT ); Thu, 10 Dec 2015 12:53:30 -0500 From: jakeo@microsoft.com To: gregkh@linuxfoundation.org, kys@microsoft.com, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, olaf@aepfle.de, apw@canonical.com, vkuznets@redhat.com, tglx@linutronix.de, haiyangz@microsoft.com, marc.zyngier@arm.com, bhelgaas@google.com, linux-pci@vger.kernel.org Cc: Jake Oshins Subject: [PATCH v10 0/7] PCI: hv: New paravirtual PCI front-end for Hyper-V VMs Date: Thu, 10 Dec 2015 17:52:56 +0000 Message-Id: <1449769983-12948-1-git-send-email-jakeo@microsoft.com> X-Mailer: git-send-email 1.9.1 X-SendGrid-Contentd-ID: {"test_id":"1449770009"} X-SG-EID: UsLXQ589HNP4HLBydmD9pgHURQozLYm9XliudupI8YseAOtX41drpB0YqX71WDFPydRxBdwwzbbMGA qdnrQFrGIKgVO/HpUBAP1mReuWtXx0PzDAhdXmBh825l5psJ/Eo0fSLmekU0xBqDDouGc6754r8I4U ONrSqqI4eyH0p2cICGdRLJI795TMCi0XWgWpdNwhRbffv6EA86c/zPPHoA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2547 Lines: 63 From: Jake Oshins This version of the patch series removes warning when compiling x86 32-bit while still making it build cleanly for x64. First, export functions that allow correlating Hyper-V virtual processors and Linux cpus, along with the means for invoking a hypercall that targets interrupts at chosen vectors on specific cpus. Second, mark various parts of IRQ domain related code as exported, so that this PCI front-end can implement an IRQ domain as part of a module. (The alternative would be to pull all tyhis into the kernel, which would pull in a lot of other Hyper-V related code, as this IRQ domain depends on vmbus.ko.) Third, modify PCI so that new root PCI buses can be marked with an associated fwnode_handle, and so that root PCI buses can look up their associated IRQ domain by that handle. Fourth, introduce a new driver, hv_pcifront, which exposes root PCI buses in a Hyper-V VM. These root PCI buses expose real PCIe device, or PCI Virtual Functions. Jake Oshins (7): drivers:hv: Export a function that maps Linux CPU num onto Hyper-V proc num drivers:hv: Export hv_do_hypercall() PCI: Make it possible to implement a PCI MSI IRQ Domain in a module. PCI: Add fwnode_handle to pci_sysdata PCI: irqdomain: Look up IRQ domain by fwnode_handle drivers:hv: Define the channel type of Hyper-V PCI Express pass-through PCI: hv: New paravirtual PCI front-end for Hyper-V VMs MAINTAINERS | 1 + arch/x86/include/asm/msi.h | 6 + arch/x86/include/asm/pci.h | 15 + arch/x86/kernel/apic/msi.c | 8 +- arch/x86/kernel/apic/vector.c | 2 + drivers/hv/hv.c | 20 +- drivers/hv/hyperv_vmbus.h | 2 +- drivers/hv/vmbus_drv.c | 17 + drivers/pci/Kconfig | 7 + drivers/pci/host/Makefile | 1 + drivers/pci/host/hv_pcifront.c | 2249 ++++++++++++++++++++++++++++++++++++++++ drivers/pci/msi.c | 4 + drivers/pci/probe.c | 15 + include/linux/hyperv.h | 14 + include/linux/pci.h | 4 + kernel/irq/chip.c | 1 + kernel/irq/irqdomain.c | 4 + 17 files changed, 2356 insertions(+), 14 deletions(-) create mode 100644 drivers/pci/host/hv_pcifront.c -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/