Received: by 10.223.185.116 with SMTP id b49csp745051wrg; Sat, 10 Feb 2018 18:49:29 -0800 (PST) X-Google-Smtp-Source: AH8x2260zEUKc5yCTBBkKg+5Sr1kMc3RZwGE5veCBeMbgQTY/gTbMTEoGOxzaZo1v+RScusr8CIz X-Received: by 10.101.68.66 with SMTP id e2mr6180073pgq.289.1518317369053; Sat, 10 Feb 2018 18:49:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518317369; cv=none; d=google.com; s=arc-20160816; b=KfiWOaOQZhAncuUdX8WDikh6yOp4L6A7L8Kn/lZpj4FHBpsx0cVEJCZKWYme1hnghl MvDI+hXDjT+PV3zvdNMcgVGkY73Wto414UHTqz6VIQ72e3lGVIumyOX7cRaQCrH4e2ZT N91IcXBj7CDHRaBWsU1bMmGXyQT2aYXJZ0p8YsqYXQ2KuHMucyAYAhl43eDlQ4SMgyw8 x5VbPFIUYfof9pDwP+dx9kqn62ZWLybzpkdkcfhUiLNSe31KApUdov+vRdq3IjEyI7hV NqbFOfQLdv5bdW1Q1ZJJ1Qh0NYVaHKjCrLGQEDsjP3jmlXjD5AyA0uQcdO5n5rfpXf04 QI+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:message-id:date:cc:to:from:subject:dmarc-filter :arc-authentication-results; bh=JcvTqVGLcIcsgX+0bVyld5QVyVa1JcsZWCQ5bU4gnKQ=; b=D52eQ8hWpSDVAJCpIQj2BkO8S7rpueux39NmeVWAePTnFvDqKq3r0LdTOejz1aLOys 5Qx/jTWJdwAO4HNfkWJK8xifCBGkO7SRl/I/zRpjQsaaCZe7VGvG9O8ajo2SHWyvTCLq zKBAJTRHD1r9uHOT4Bfsw1RKu2YF5wPH2s7Al/EoO7UyBaJ+geT5cAxhaMKtM1OnSNZT FD3KJj65h8oWeaU8wJKnnNJ8Q3ApvDTWs+cnPIfKMyfguo6lzCjcdNcf3mBTd3eudS9i PwWVOlKpSF8TihoBrueQT4j5wVRRu0cfwXNA+HTaspdi30FWgg+zWYBgy/dLeH7MZYG4 Kg+A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r2-v6si2233302plj.119.2018.02.10.18.49.15; Sat, 10 Feb 2018 18:49:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752362AbeBKCsX (ORCPT + 99 others); Sat, 10 Feb 2018 21:48:23 -0500 Received: from mail.kernel.org ([198.145.29.99]:38490 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751622AbeBKCsW (ORCPT ); Sat, 10 Feb 2018 21:48:22 -0500 Received: from localhost (unknown [69.71.4.159]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 3F0A821723; Sun, 11 Feb 2018 02:48:20 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3F0A821723 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=helgaas@kernel.org Subject: [PATCH] PCI/portdrv: Remove "pcie_hp=nomsi" kernel parameter From: Bjorn Helgaas To: linux-pci@vger.kernel.org Cc: Prarit Bhargava , linux-kernel@vger.kernel.org, MUNEDA Takahiro , Kenji Kaneshige Date: Sat, 10 Feb 2018 20:48:15 -0600 Message-ID: <20180211024815.73781.92853.stgit@bhelgaas-glaptop.roam.corp.google.com> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Bjorn Helgaas 7570a333d8b0 ("PCI: Add pcie_hp=nomsi to disable MSI/MSI-X for pciehp driver") added the "pcie_hp=nomsi" kernel parameter to work around this error on shutdown: irq 16: nobody cared (try booting with the "irqpoll" option) Pid: 1081, comm: reboot Not tainted 3.2.0 #1 ... Disabling IRQ #16 This happened on an unspecified system (possibly involving the Integrated Device Technology, Inc. Device 807f bridge). There is no automated way to set this parameter, so it's not very useful for distributions or end users. I suspect the root cause of the underlying "irq 16: nobody cared" issue was fixed by Prarit Bhargava with fda78d7a0ead ("PCI/MSI: Stop disabling MSI/MSI-X in pci_device_shutdown()") and we probably don't need "pcie_hp=nomsi" any more. Revert 7570a333d8b0 to remove the "pcie_hp=nomsi" parameter. Signed-off-by: Bjorn Helgaas CC: MUNEDA Takahiro CC: Kenji Kaneshige CC: Prarit Bhargava --- Documentation/admin-guide/kernel-parameters.txt | 4 ---- drivers/pci/pcie/portdrv.h | 12 ------------ drivers/pci/pcie/portdrv_core.c | 20 +++----------------- 3 files changed, 3 insertions(+), 33 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 78cdf6a637fc..ed0d26d26c26 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -3101,10 +3101,6 @@ force Enable ASPM even on devices that claim not to support it. WARNING: Forcing ASPM on may cause system lockups. - pcie_hp= [PCIE] PCI Express Hotplug driver options: - nomsi Do not use MSI for PCI Express Native Hotplug (this - makes all PCIe ports use INTx for hotplug services). - pcie_ports= [PCIE] PCIe ports handling: auto Ask the BIOS whether or not to use native PCIe services associated with PCIe ports (PME, hot-plug, AER). Use diff --git a/drivers/pci/pcie/portdrv.h b/drivers/pci/pcie/portdrv.h index a854bc569117..b00764bc684d 100644 --- a/drivers/pci/pcie/portdrv.h +++ b/drivers/pci/pcie/portdrv.h @@ -36,18 +36,6 @@ struct pci_dev; void pcie_clear_root_pme_status(struct pci_dev *dev); -#ifdef CONFIG_HOTPLUG_PCI_PCIE -extern bool pciehp_msi_disabled; - -static inline bool pciehp_no_msi(void) -{ - return pciehp_msi_disabled; -} - -#else /* !CONFIG_HOTPLUG_PCI_PCIE */ -static inline bool pciehp_no_msi(void) { return false; } -#endif /* !CONFIG_HOTPLUG_PCI_PCIE */ - #ifdef CONFIG_PCIE_PME extern bool pcie_pme_msi_disabled; diff --git a/drivers/pci/pcie/portdrv_core.c b/drivers/pci/pcie/portdrv_core.c index ef3bad4ad010..219f0f47f6fb 100644 --- a/drivers/pci/pcie/portdrv_core.c +++ b/drivers/pci/pcie/portdrv_core.c @@ -21,17 +21,6 @@ #include "../pci.h" #include "portdrv.h" -bool pciehp_msi_disabled; - -static int __init pciehp_setup(char *str) -{ - if (!strncmp(str, "nomsi", 5)) - pciehp_msi_disabled = true; - - return 1; -} -__setup("pcie_hp=", pciehp_setup); - /** * release_pcie_device - free PCI Express port service device structure * @dev: Port service device to release @@ -169,16 +158,13 @@ static int pcie_init_service_irqs(struct pci_dev *dev, int *irqs, int mask) irqs[i] = -1; /* - * If we support PME or hotplug, but we can't use MSI/MSI-X for - * them, we have to fall back to INTx or other interrupts, e.g., a - * system shared interrupt. + * If we support PME but can't use MSI/MSI-X for it, we have to + * fall back to INTx or other interrupts, e.g., a system shared + * interrupt. */ if ((mask & PCIE_PORT_SERVICE_PME) && pcie_pme_no_msi()) goto legacy_irq; - if ((mask & PCIE_PORT_SERVICE_HP) && pciehp_no_msi()) - goto legacy_irq; - /* Try to use MSI-X or MSI if supported */ if (pcie_port_enable_irq_vec(dev, irqs, mask) == 0) return 0;