From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751909AbbJDUjS (ORCPT ); Sun, 4 Oct 2015 16:39:18 -0400 Received: from mail-wi0-f178.google.com ([209.85.212.178]:37950 "EHLO mail-wi0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751838AbbJDUjR (ORCPT ); Sun, 4 Oct 2015 16:39:17 -0400 From: Vlad Zolotarov To: linux-kernel@vger.kernel.org, mst@redhat.com, hjk@hansjkoch.de, regkh@linuxfoundation.org, corbet@lwn.net Cc: bruce.richardson@intel.com, avi@cloudius-systems.com, gleb@cloudius-systems.com, stephen@networkplumber.org, alexander.duyck@gmail.com, Vlad Zolotarov Subject: [PATCH v3 0/3] uio: add MSI/MSI-X support to uio_pci_generic driver Date: Sun, 4 Oct 2015 23:39:08 +0300 Message-Id: <1443991151-21575-1-git-send-email-vladz@cloudius-systems.com> X-Mailer: git-send-email 2.1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series add support for MSI and MSI-X interrupts to uio_pci_generic driver. Currently uio_pci_generic supports only legacy INT#x interrupts source. However there are situations when this is not enough, for instance SR-IOV VF devices that simply don't have INT#x capability. For such devices uio_pci_generic will simply fail (more specifically probe() will fail). When IOMMU is either not available (e.g. Amazon EC2) or not acceptable due to performance overhead and thus VFIO is not an option users that develop user-space drivers are left without any option but to develop some proprietary UIO drivers (e.g. igb_uio driver in Intel's DPDK) just to be able to use UIO infrastructure. This series provides a generic solution for this problem while preserving the original behaviour for devices for which the original uio_pci_generic had worked before (i.e. INT#x will be used by default). New in v3: - Add __iomem qualifier to temp buffer receiving ioremap value. New in v2: - Added #include to uio_pci_generic.c Vlad Zolotarov (3): uio: add ioctl support uio_pci_generic: add MSI/MSI-X support Documentation: update uio-howto Documentation/DocBook/uio-howto.tmpl | 29 ++- drivers/uio/uio.c | 15 ++ drivers/uio/uio_pci_generic.c | 410 +++++++++++++++++++++++++++++++++-- include/linux/uio_driver.h | 3 + include/linux/uio_pci_generic.h | 36 +++ 5 files changed, 467 insertions(+), 26 deletions(-) create mode 100644 include/linux/uio_pci_generic.h -- 2.1.0