From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754939AbbFBCr2 (ORCPT ); Mon, 1 Jun 2015 22:47:28 -0400 Received: from mga03.intel.com ([134.134.136.65]:58481 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751983AbbFBCrS (ORCPT ); Mon, 1 Jun 2015 22:47:18 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,536,1427785200"; d="scan'208";a="735344944" From: Jiang Liu To: Thomas Gleixner , "Rafael J . Wysocki" , Bjorn Helgaas Cc: Jiang Liu , LKML , linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org, "x86 @ kernel . org" Subject: [Patch v2 0/4] Introduce a mechanism to allocate PCI IRQ on demand Date: Tue, 2 Jun 2015 10:49:15 +0800 Message-Id: <1433213360-3700-1-git-send-email-jiang.liu@linux.intel.com> X-Mailer: git-send-email 1.7.10.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch set introduces a mechanism to allocate PCI IRQ on demand and free it when not used anymore by hooking pci_device_probe() and pci_device_remove(). It will be used to track IOAPIC pin usage on x86 so we could support IOAPIC hot-removal. The patch set passes Fengguang's 0day test suite. V1->V2: 1) Refine pci_device_probe() to optimize for mainline code as suggested by Bjorn 2) Reorder patch set to put optional patch as the last (Patch 4) Thanks! Gerry Jiang Liu (4): PCI: Add hooks to allocate/free IRQ resources when binding/unbinding driver PCI, x86: Allocate PCI IRQ on demand and free it when not used anymore PCI: Introduce helpers to manage pci_dev->irq and pci_dev->irq_managed PCI, MSI: Optionally free legacy PCI IRQ when enabling MSI/MSI-X arch/x86/include/asm/pci_x86.h | 2 -- arch/x86/pci/common.c | 20 +++++++++----------- arch/x86/pci/intel_mid_pci.c | 9 ++++++--- arch/x86/pci/irq.c | 23 ++++------------------- drivers/acpi/pci_irq.c | 17 ++++------------- drivers/pci/msi.c | 6 +++++- drivers/pci/pci-driver.c | 26 ++++++++++++++++++++------ include/linux/pci.h | 19 +++++++++++++++++++ 8 files changed, 67 insertions(+), 55 deletions(-) -- 1.7.10.4