From: Yinghai Lu <yinghai@kernel.org>
To: Jesse Barnes <jbarnes@virtuousgeek.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Tony Luck <tony.luck@intel.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
Dominik Brodowski <linux@dominikbrodowski.net>,
Andrew Morton <akpm@linux-foundation.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arch@vger.kernel.org, Yinghai Lu <yinghai@kernel.org>
Subject: [PATCH 22/22] PCI: clean up rescan_bus_bridge_resize
Date: Fri, 10 Feb 2012 20:06:25 -0800 [thread overview]
Message-ID: <1328933185-15154-23-git-send-email-yinghai@kernel.org> (raw)
In-Reply-To: <1328933185-15154-1-git-send-email-yinghai@kernel.org>
Should only use it with bridge instead of bus.
it could get new subordinate. so can not use it with reguar bus.
in that case, use may need to make all children devices get removed already.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
---
drivers/pci/pci-sysfs.c | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
index 68caf29..a3fa64e 100644
--- a/drivers/pci/pci-sysfs.c
+++ b/drivers/pci/pci-sysfs.c
@@ -337,7 +337,7 @@ dev_bridge_rescan_store(struct device *dev, struct device_attribute *attr,
if (val) {
mutex_lock(&pci_remove_rescan_mutex);
- pci_rescan_bus(pdev->subordinate);
+ pci_rescan_bus_bridge_resize(pdev);
mutex_unlock(&pci_remove_rescan_mutex);
}
return count;
@@ -387,10 +387,7 @@ dev_bus_rescan_store(struct device *dev, struct device_attribute *attr,
if (val) {
mutex_lock(&pci_remove_rescan_mutex);
- if (!pci_is_root_bus(bus) && list_empty(&bus->devices))
- pci_rescan_bus_bridge_resize(bus->self);
- else
- pci_rescan_bus(bus);
+ pci_rescan_bus(bus);
mutex_unlock(&pci_remove_rescan_mutex);
}
return count;
--
1.7.7
prev parent reply other threads:[~2012-02-11 4:07 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-11 4:06 [PATCH -v6 0/22] PCI: allocate pci bus num range for unassigned bridge busn + pci rescan cleanup Yinghai Lu
2012-02-11 4:06 ` [PATCH 01/22] PCI: Add busn_res into struct pci_bus Yinghai Lu
2012-02-11 4:06 ` [PATCH 02/22] PCI: Add busn_res operation functions Yinghai Lu
2012-02-11 4:06 ` [PATCH 03/22] PCI: Add busn_res tracking in core Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 04/22] PCI, x86: Register busn_res for root buses Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 05/22] PCI, ia64: " Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 06/22] PCI, sparc: " Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 07/22] PCI, powerpc: " Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 08/22] PCI, parisc: " Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 09/22] PCI: Add pci_bus_extend/shrink_top() Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 10/22] PCI: Probe safe range that we can use for unassigned bridge Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 11/22] PCI: Strict checking of valid range for bridge Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 12/22] PCI: Allocate bus range instead of use max blindly Yinghai Lu
2012-02-11 4:06 ` [PATCH 13/22] PCI: kill pci_fixup_parent_subordinate_busnr() Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 14/22] PCI: Seperate child bus scanning to two passes overall Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 15/22] pcmcia: remove workaround for fixing pci parent bus subordinate Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 16/22] PCI: Double checking setting for bus register and bus struct Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 17/22] PCI, pciehp: Remove not needed bus number range checking Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 18/22] PCI, sys: Use device_type and attr_groups with pci dev Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 19/22] PCI, sysfs: create rescan_bridge under /sys/.../pci/devices/... for pci bridges Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 20/22] PCI: Add pci_bus_add_single_device() Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` [PATCH 21/22] PCI: make pci_rescan_bus_bridge_resize use pci_scan_bridge instead Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu
2012-02-11 4:06 ` Yinghai Lu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1328933185-15154-23-git-send-email-yinghai@kernel.org \
--to=yinghai@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=benh@kernel.crashing.org \
--cc=bhelgaas@google.com \
--cc=gregkh@linuxfoundation.org \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@dominikbrodowski.net \
--cc=tony.luck@intel.com \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).