All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yinghai Lu <yinghai@kernel.org>
To: Yijing Wang <wangyijing@huawei.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
	Jiang Liu <jiang.liu@huawei.com>,
	"Rafael J. Wysocki" <rjw@sisk.pl>,
	Taku Izumi <izumi.taku@jp.fujitsu.com>,
	Toshi Kani <toshi.kani@hp.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-pci@vger.kernel.org,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 20/22] PCI, powerpc: Kill pci_root_buses in resources reservations
Date: Sun, 27 Jan 2013 21:23:02 -0800	[thread overview]
Message-ID: <CAE9FiQWGAbgG2_nsLP4RTwZT=S9pYhfTBJQGcX2Doy0MY0wqKg@mail.gmail.com> (raw)
In-Reply-To: <5105F51A.1060600@huawei.com>

[-- Attachment #1: Type: text/plain, Size: 1334 bytes --]

On Sun, Jan 27, 2013 at 7:48 PM, Yijing Wang <wangyijing@huawei.com> wrote:
> On 2013/1/28 3:23, Yinghai Lu wrote:
>> diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c
>> index 2cbe676..f848325 100644
>> --- a/arch/powerpc/kernel/pci_64.c
>> +++ b/arch/powerpc/kernel/pci_64.c
>> @@ -208,9 +208,9 @@ long sys_pciconfig_iobase(long which, unsigned long in_bus,
>>                         unsigned long in_devfn)
>>  {
>>       struct pci_controller* hose;
>> -     struct list_head *ln;
>> -     struct pci_bus *bus = NULL;
>> +     struct pci_bus *bus;
>>       struct device_node *hose_node;
>> +     struct pci_host_bridge *host_bridge = NULL;
>>
>>       /* Argh ! Please forgive me for that hack, but that's the
>>        * simplest way to get existing XFree to not lockup on some
>> @@ -230,8 +230,8 @@ long sys_pciconfig_iobase(long which, unsigned long in_bus,
>>        * used on pre-domains setup. We return the first match
>>        */
>>
>> -     for (ln = pci_root_buses.next; ln != &pci_root_buses; ln = ln->next) {
>> -             bus = pci_bus_b(ln);
>> +     for_each_pci_host_bridge(host_bridge) {
>> +             bus = host_bridge->bus;
>>               if (in_bus >= bus->number && in_bus <= bus->busn_res.end)
>
> Need put_device(&host_bridge->dev).
>

fixed in attached.

Thanks

Yinghai

[-- Attachment #2: kill_pci_root_buses_powerpc.patch --]
[-- Type: application/octet-stream, Size: 4361 bytes --]

Subject: [PATCH] PCI, powerpc: Kill pci_root_buses in resources reservations

Replace that with hotplug-safe version iteration.

-v2: add missing put_device found by Yijing Wang <wangyijing@huawei.com>
     also move the handling into the for_each_pci_host_bridge {} to
     make it really hotplug safe, also make the function more readable.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: linuxppc-dev@lists.ozlabs.org

---
 arch/powerpc/kernel/pci-common.c |   13 +++----
 arch/powerpc/kernel/pci_64.c     |   67 +++++++++++++++++++++++----------------
 2 files changed, 46 insertions(+), 34 deletions(-)

Index: linux-2.6/arch/powerpc/kernel/pci-common.c
===================================================================
--- linux-2.6.orig/arch/powerpc/kernel/pci-common.c
+++ linux-2.6/arch/powerpc/kernel/pci-common.c
@@ -1397,11 +1397,11 @@ static void __init pcibios_reserve_legac
 
 void __init pcibios_resource_survey(void)
 {
-	struct pci_bus *b;
+	struct pci_host_bridge *host_bridge = NULL;
 
 	/* Allocate and assign resources */
-	list_for_each_entry(b, &pci_root_buses, node)
-		pcibios_allocate_bus_resources(b);
+	for_each_pci_host_bridge(host_bridge)
+		pcibios_allocate_bus_resources(host_bridge->bus);
 	pcibios_allocate_resources(0);
 	pcibios_allocate_resources(1);
 
@@ -1409,10 +1409,9 @@ void __init pcibios_resource_survey(void
 	 * the low IO area and the VGA memory area if they intersect the
 	 * bus available resources to avoid allocating things on top of them
 	 */
-	if (!pci_has_flag(PCI_PROBE_ONLY)) {
-		list_for_each_entry(b, &pci_root_buses, node)
-			pcibios_reserve_legacy_regions(b);
-	}
+	if (!pci_has_flag(PCI_PROBE_ONLY))
+		for_each_pci_host_bridge(host_bridge)
+			pcibios_reserve_legacy_regions(host_bridge->bus);
 
 	/* Now, if the platform didn't decide to blindly trust the firmware,
 	 * we proceed to assigning things that were left unassigned
Index: linux-2.6/arch/powerpc/kernel/pci_64.c
===================================================================
--- linux-2.6.orig/arch/powerpc/kernel/pci_64.c
+++ linux-2.6/arch/powerpc/kernel/pci_64.c
@@ -207,10 +207,7 @@ void pcibios_setup_phb_io_space(struct p
 long sys_pciconfig_iobase(long which, unsigned long in_bus,
 			  unsigned long in_devfn)
 {
-	struct pci_controller* hose;
-	struct list_head *ln;
-	struct pci_bus *bus = NULL;
-	struct device_node *hose_node;
+	struct pci_host_bridge *host_bridge = NULL;
 
 	/* Argh ! Please forgive me for that hack, but that's the
 	 * simplest way to get existing XFree to not lockup on some
@@ -229,33 +226,49 @@ long sys_pciconfig_iobase(long which, un
 	/* That syscall isn't quite compatible with PCI domains, but it's
 	 * used on pre-domains setup. We return the first match
 	 */
-
-	for (ln = pci_root_buses.next; ln != &pci_root_buses; ln = ln->next) {
-		bus = pci_bus_b(ln);
-		if (in_bus >= bus->number && in_bus <= bus->busn_res.end)
+	for_each_pci_host_bridge(host_bridge) {
+		struct device_node *hose_node;
+		struct pci_controller* hose;
+		struct pci_bus *bus;
+		long ret;
+
+		bus = host_bridge->bus;
+		if (in_bus < bus->number || in_bus > bus->busn_res.end)
+			continue;
+
+		if (!bus->dev.of_node) {
+			put_device(&host_bridge->dev);
+			return -ENODEV;
+		}
+
+		hose_node = bus->dev.of_node;
+		hose = PCI_DN(hose_node)->phb;
+
+		switch (which) {
+		case IOBASE_BRIDGE_NUMBER:
+			ret = (long)hose->first_busno;
 			break;
-		bus = NULL;
-	}
-	if (bus == NULL || bus->dev.of_node == NULL)
-		return -ENODEV;
-
-	hose_node = bus->dev.of_node;
-	hose = PCI_DN(hose_node)->phb;
+		case IOBASE_MEMORY:
+			ret = (long)hose->pci_mem_offset;
+			break;
+		case IOBASE_IO:
+			ret = (long)hose->io_base_phys;
+			break;
+		case IOBASE_ISA_IO:
+			ret = (long)isa_io_base;
+			break;
+		case IOBASE_ISA_MEM:
+			ret = -EINVAL;
+			break;
+		default:
+			ret = -EOPNOTSUPP;
+		}
 
-	switch (which) {
-	case IOBASE_BRIDGE_NUMBER:
-		return (long)hose->first_busno;
-	case IOBASE_MEMORY:
-		return (long)hose->pci_mem_offset;
-	case IOBASE_IO:
-		return (long)hose->io_base_phys;
-	case IOBASE_ISA_IO:
-		return (long)isa_io_base;
-	case IOBASE_ISA_MEM:
-		return -EINVAL;
+		put_device(&host_bridge->dev);
+		return ret;
 	}
 
-	return -EOPNOTSUPP;
+	return -ENODEV;
 }
 
 #ifdef CONFIG_NUMA

WARNING: multiple messages have this Message-ID (diff)
From: Yinghai Lu <yinghai@kernel.org>
To: Yijing Wang <wangyijing@huawei.com>
Cc: Toshi Kani <toshi.kani@hp.com>, Jiang Liu <jiang.liu@huawei.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rjw@sisk.pl>,
	linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
	Taku Izumi <izumi.taku@jp.fujitsu.com>,
	linuxppc-dev@lists.ozlabs.org, Paul Mackerras <paulus@samba.org>
Subject: Re: [PATCH v3 20/22] PCI, powerpc: Kill pci_root_buses in resources reservations
Date: Sun, 27 Jan 2013 21:23:02 -0800	[thread overview]
Message-ID: <CAE9FiQWGAbgG2_nsLP4RTwZT=S9pYhfTBJQGcX2Doy0MY0wqKg@mail.gmail.com> (raw)
In-Reply-To: <5105F51A.1060600@huawei.com>

[-- Attachment #1: Type: text/plain, Size: 1334 bytes --]

On Sun, Jan 27, 2013 at 7:48 PM, Yijing Wang <wangyijing@huawei.com> wrote:
> On 2013/1/28 3:23, Yinghai Lu wrote:
>> diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c
>> index 2cbe676..f848325 100644
>> --- a/arch/powerpc/kernel/pci_64.c
>> +++ b/arch/powerpc/kernel/pci_64.c
>> @@ -208,9 +208,9 @@ long sys_pciconfig_iobase(long which, unsigned long in_bus,
>>                         unsigned long in_devfn)
>>  {
>>       struct pci_controller* hose;
>> -     struct list_head *ln;
>> -     struct pci_bus *bus = NULL;
>> +     struct pci_bus *bus;
>>       struct device_node *hose_node;
>> +     struct pci_host_bridge *host_bridge = NULL;
>>
>>       /* Argh ! Please forgive me for that hack, but that's the
>>        * simplest way to get existing XFree to not lockup on some
>> @@ -230,8 +230,8 @@ long sys_pciconfig_iobase(long which, unsigned long in_bus,
>>        * used on pre-domains setup. We return the first match
>>        */
>>
>> -     for (ln = pci_root_buses.next; ln != &pci_root_buses; ln = ln->next) {
>> -             bus = pci_bus_b(ln);
>> +     for_each_pci_host_bridge(host_bridge) {
>> +             bus = host_bridge->bus;
>>               if (in_bus >= bus->number && in_bus <= bus->busn_res.end)
>
> Need put_device(&host_bridge->dev).
>

fixed in attached.

Thanks

Yinghai

[-- Attachment #2: kill_pci_root_buses_powerpc.patch --]
[-- Type: application/octet-stream, Size: 4361 bytes --]

Subject: [PATCH] PCI, powerpc: Kill pci_root_buses in resources reservations

Replace that with hotplug-safe version iteration.

-v2: add missing put_device found by Yijing Wang <wangyijing@huawei.com>
     also move the handling into the for_each_pci_host_bridge {} to
     make it really hotplug safe, also make the function more readable.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: linuxppc-dev@lists.ozlabs.org

---
 arch/powerpc/kernel/pci-common.c |   13 +++----
 arch/powerpc/kernel/pci_64.c     |   67 +++++++++++++++++++++++----------------
 2 files changed, 46 insertions(+), 34 deletions(-)

Index: linux-2.6/arch/powerpc/kernel/pci-common.c
===================================================================
--- linux-2.6.orig/arch/powerpc/kernel/pci-common.c
+++ linux-2.6/arch/powerpc/kernel/pci-common.c
@@ -1397,11 +1397,11 @@ static void __init pcibios_reserve_legac
 
 void __init pcibios_resource_survey(void)
 {
-	struct pci_bus *b;
+	struct pci_host_bridge *host_bridge = NULL;
 
 	/* Allocate and assign resources */
-	list_for_each_entry(b, &pci_root_buses, node)
-		pcibios_allocate_bus_resources(b);
+	for_each_pci_host_bridge(host_bridge)
+		pcibios_allocate_bus_resources(host_bridge->bus);
 	pcibios_allocate_resources(0);
 	pcibios_allocate_resources(1);
 
@@ -1409,10 +1409,9 @@ void __init pcibios_resource_survey(void
 	 * the low IO area and the VGA memory area if they intersect the
 	 * bus available resources to avoid allocating things on top of them
 	 */
-	if (!pci_has_flag(PCI_PROBE_ONLY)) {
-		list_for_each_entry(b, &pci_root_buses, node)
-			pcibios_reserve_legacy_regions(b);
-	}
+	if (!pci_has_flag(PCI_PROBE_ONLY))
+		for_each_pci_host_bridge(host_bridge)
+			pcibios_reserve_legacy_regions(host_bridge->bus);
 
 	/* Now, if the platform didn't decide to blindly trust the firmware,
 	 * we proceed to assigning things that were left unassigned
Index: linux-2.6/arch/powerpc/kernel/pci_64.c
===================================================================
--- linux-2.6.orig/arch/powerpc/kernel/pci_64.c
+++ linux-2.6/arch/powerpc/kernel/pci_64.c
@@ -207,10 +207,7 @@ void pcibios_setup_phb_io_space(struct p
 long sys_pciconfig_iobase(long which, unsigned long in_bus,
 			  unsigned long in_devfn)
 {
-	struct pci_controller* hose;
-	struct list_head *ln;
-	struct pci_bus *bus = NULL;
-	struct device_node *hose_node;
+	struct pci_host_bridge *host_bridge = NULL;
 
 	/* Argh ! Please forgive me for that hack, but that's the
 	 * simplest way to get existing XFree to not lockup on some
@@ -229,33 +226,49 @@ long sys_pciconfig_iobase(long which, un
 	/* That syscall isn't quite compatible with PCI domains, but it's
 	 * used on pre-domains setup. We return the first match
 	 */
-
-	for (ln = pci_root_buses.next; ln != &pci_root_buses; ln = ln->next) {
-		bus = pci_bus_b(ln);
-		if (in_bus >= bus->number && in_bus <= bus->busn_res.end)
+	for_each_pci_host_bridge(host_bridge) {
+		struct device_node *hose_node;
+		struct pci_controller* hose;
+		struct pci_bus *bus;
+		long ret;
+
+		bus = host_bridge->bus;
+		if (in_bus < bus->number || in_bus > bus->busn_res.end)
+			continue;
+
+		if (!bus->dev.of_node) {
+			put_device(&host_bridge->dev);
+			return -ENODEV;
+		}
+
+		hose_node = bus->dev.of_node;
+		hose = PCI_DN(hose_node)->phb;
+
+		switch (which) {
+		case IOBASE_BRIDGE_NUMBER:
+			ret = (long)hose->first_busno;
 			break;
-		bus = NULL;
-	}
-	if (bus == NULL || bus->dev.of_node == NULL)
-		return -ENODEV;
-
-	hose_node = bus->dev.of_node;
-	hose = PCI_DN(hose_node)->phb;
+		case IOBASE_MEMORY:
+			ret = (long)hose->pci_mem_offset;
+			break;
+		case IOBASE_IO:
+			ret = (long)hose->io_base_phys;
+			break;
+		case IOBASE_ISA_IO:
+			ret = (long)isa_io_base;
+			break;
+		case IOBASE_ISA_MEM:
+			ret = -EINVAL;
+			break;
+		default:
+			ret = -EOPNOTSUPP;
+		}
 
-	switch (which) {
-	case IOBASE_BRIDGE_NUMBER:
-		return (long)hose->first_busno;
-	case IOBASE_MEMORY:
-		return (long)hose->pci_mem_offset;
-	case IOBASE_IO:
-		return (long)hose->io_base_phys;
-	case IOBASE_ISA_IO:
-		return (long)isa_io_base;
-	case IOBASE_ISA_MEM:
-		return -EINVAL;
+		put_device(&host_bridge->dev);
+		return ret;
 	}
 
-	return -EOPNOTSUPP;
+	return -ENODEV;
 }
 
 #ifdef CONFIG_NUMA

  reply	other threads:[~2013-01-28  5:23 UTC|newest]

Thread overview: 122+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-21 21:20 [PATCH v10 00/11] PCI, ACPI: pci root bus hotplug support / pci match_driver Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 01/11] PCI, acpiphp: Add is_hotplug_bridge detection Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 02/11] PCI: Add root bus children dev's res to fail list Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 03/11] PCI: Set dev_node early for pci_dev Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 04/11] PCI: Fix a device reference count leakage issue in pci_dev_present() Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 05/11] PCI: make PCI device create/destroy logic symmetric Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 06/11] PCI, ACPI, acpiphp: Rename alloc_acpiphp_hp_work() to alloc_acpi_hp_work Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 07/11] PCI, acpiphp: Move and enhance hotplug support of pci host bridge Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 08/11] PCI, ACPI: debug print for installation of acpi root bridge's notifier Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 09/11] PCI, acpiphp: Don't bailout even no slots found yet Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 10/11] PCI: Skip attaching driver in device_add() Yinghai Lu
2013-01-21 21:20 ` [PATCH v10 11/11] PCI: Put pci dev to device tree as early as possible Yinghai Lu
2013-01-22 22:09 ` [PATCH v10 00/11] PCI, ACPI: pci root bus hotplug support / pci match_driver Rafael J. Wysocki
2013-01-22 22:19   ` Yinghai Lu
2013-01-26  0:04     ` Bjorn Helgaas
2013-01-26  1:24       ` Jiang Liu
2013-01-26  1:24         ` Jiang Liu
2013-01-26 23:34       ` Yinghai Lu
2013-01-27  5:36         ` [PATCH v2 00/22] PCI: use pci host bridge to loop pci root bus Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 01/22] PCI: Rename pci_release_bus_bridge_dev to pci_release_host_bridge_dev Yinghai Lu
2013-01-27 22:26             ` Rafael J. Wysocki
2013-01-27  5:36           ` [PATCH v2 02/22] PCI: Add dummy bus_type for pci_host_bridge Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 03/22] PCI, libata: remove find_bridge in acpi_bus_type Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 04/22] PCI, ACPI: Update comments for " Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 05/22] PCI: Add for_each_pci_host_bridge() and pci_get_next_host_bridge Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 06/22] PCI, hotplug: Kill pci_find_next_bus in sgi_hotplug Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 07/22] PCI: Kill pci_find_next_bus in pci_sysfs Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 08/22] PCI, edac: Kill pci_find_next_bus in edac Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 09/22] PCI, x86: Kill pci_find_next_bus in pcibios_scan_root Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 10/22] PCI, x86: Kill pci_root_buses in resources reservations Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 11/22] PCI, drm: Kill pci_root_buses in alpha hose setting Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 12/22] PCI: Kill pci_root_buses in setup-bus Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 13/22] PCI, sparc: Kill pci_find_next_bus Yinghai Lu
2013-01-27  5:36             ` Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 14/22] PCI, ia64: " Yinghai Lu
2013-01-27  5:36             ` Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 15/22] PCI, alpha: Kill pci_root_buses Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 16/22] PCI, arm: " Yinghai Lu
2013-01-27  5:36             ` Yinghai Lu
2013-01-27 17:38             ` Russell King - ARM Linux
2013-01-27 17:38               ` Russell King - ARM Linux
2013-01-27 18:22               ` Yinghai Lu
2013-01-27 18:22                 ` Yinghai Lu
2013-01-27 19:23                 ` [PATCH v3 00/22] PCI: Iterate pci host bridge instead of pci root bus Yinghai Lu
2013-01-27 19:23                   ` Yinghai Lu
2013-01-27 19:23                   ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 01/22] PCI: Rename pci_release_bus_bridge_dev to pci_release_host_bridge_dev Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 02/22] PCI: Add dummy bus_type for pci_host_bridge Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 03/22] PCI, libata: remove find_bridge in acpi_bus_type Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 04/22] PCI, ACPI: Update comments for " Yinghai Lu
2013-01-27 22:32                     ` Rafael J. Wysocki
2013-01-28  1:00                       ` Yinghai Lu
2013-01-28 12:37                         ` Rafael J. Wysocki
2013-01-27 19:23                   ` [PATCH v3 05/22] PCI: Add for_each_pci_host_bridge() and pci_get_next_host_bridge Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 06/22] PCI, hotplug: Kill pci_find_next_bus in sgi_hotplug Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 07/22] PCI: Kill pci_find_next_bus in pci_sysfs Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 08/22] PCI, edac: Kill pci_find_next_bus in edac Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 09/22] PCI, x86: Kill pci_find_next_bus in pcibios_scan_root Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 10/22] PCI, x86: Kill pci_root_buses in resources reservations Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 11/22] PCI, drm: Kill pci_root_buses in alpha hose setting Yinghai Lu
2013-01-28  3:21                     ` Yijing Wang
2013-01-28  3:21                       ` Yijing Wang
2013-01-28  3:35                       ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 12/22] PCI: Kill pci_root_buses in setup-bus Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 13/22] PCI, sparc: Kill pci_find_next_bus Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 14/22] PCI, ia64: " Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 15/22] PCI, alpha: Kill pci_root_buses Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 16/22] PCI, arm: " Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 17/22] PCI, frv: Kill pci_root_buses in resources reservations Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 18/22] PCI, microblaze: " Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 19/22] PCI, mn10300: " Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 20/22] PCI, powerpc: " Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-28  3:48                     ` Yijing Wang
2013-01-28  3:48                       ` Yijing Wang
2013-01-28  5:23                       ` Yinghai Lu [this message]
2013-01-28  5:23                         ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 21/22] PCI: Kill pci_find_next_bus Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                   ` [PATCH v3 22/22] PCI: Kill pci_root_buses Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-01-27 19:23                     ` Yinghai Lu
2013-02-02 21:50                   ` [PATCH v3 00/22] PCI: Iterate pci host bridge instead of pci root bus Bjorn Helgaas
2013-02-02 21:50                     ` Bjorn Helgaas
2013-02-02 21:50                     ` Bjorn Helgaas
2013-02-03  5:05                     ` Yinghai Lu
2013-02-05 23:55                       ` Yinghai Lu
2013-02-06  0:19                         ` Bjorn Helgaas
2013-02-06  0:47                           ` Yinghai Lu
2013-02-06  8:53                             ` Mauro Carvalho Chehab
2013-02-06 17:45                               ` Bjorn Helgaas
2013-02-07 10:24                                 ` Mauro Carvalho Chehab
2013-02-06 17:54                             ` Bjorn Helgaas
2013-02-06 18:59                               ` Yinghai Lu
2013-02-06 20:50                                 ` Bjorn Helgaas
2013-02-06 21:28                                   ` Yinghai Lu
2013-02-06 21:43                                     ` Rafael J. Wysocki
2013-02-06 21:53                                       ` Yinghai Lu
2013-02-06 22:05                                         ` Rafael J. Wysocki
2013-02-06 23:02                                           ` Bjorn Helgaas
2013-02-06 23:31                                             ` Yinghai Lu
2013-02-07  0:27                                             ` Jiang Liu
2013-01-28  1:54                 ` Yinghai Lu
2013-01-28  1:54                   ` [PATCH v3 02/22] PCI: Add dummy bus_type for pci_host_bridge Yinghai Lu
2013-01-28  1:54                   ` [PATCH v3 05/22] PCI: Add for_each_pci_host_bridge() and pci_get_next_host_bridge Yinghai Lu
2013-01-28  1:54                   ` [PATCH v3 21/22] PCI: Kill pci_find_next_bus Yinghai Lu
2013-01-28  1:54                   ` [PATCH v3 22/22] PCI: Kill pci_root_buses Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 17/22] PCI, frv: Kill pci_root_buses in resources reservations Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 18/22] PCI, microblaze: " Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 19/22] PCI, mn10300: " Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 20/22] PCI, powerpc: " Yinghai Lu
2013-01-27  5:36             ` Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 21/22] PCI: Kill pci_find_next_bus Yinghai Lu
2013-01-27  5:36           ` [PATCH v2 22/22] PCI: Kill pci_root_buses Yinghai Lu

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='CAE9FiQWGAbgG2_nsLP4RTwZT=S9pYhfTBJQGcX2Doy0MY0wqKg@mail.gmail.com' \
    --to=yinghai@kernel.org \
    --cc=benh@kernel.crashing.org \
    --cc=bhelgaas@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=izumi.taku@jp.fujitsu.com \
    --cc=jiang.liu@huawei.com \
    --cc=linux-pci@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=paulus@samba.org \
    --cc=rjw@sisk.pl \
    --cc=toshi.kani@hp.com \
    --cc=wangyijing@huawei.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.