* [PATCH 17/19] PCI: rpaphp: Use pcibios_remove_pci_devices() symmetrically
2007-04-03 0:26 [PATCH 0/19]: RPAPHP pci hotplug cleanup patchbomb Linas Vepstas
@ 2007-04-03 0:49 ` Linas Vepstas
0 siblings, 0 replies; 4+ messages in thread
From: Linas Vepstas @ 2007-04-03 0:49 UTC (permalink / raw)
To: Greg KH; +Cc: Andrew Morton, linuxppc-dev, linux-pci
At first blush, the disable_slot() routine does not look
at all like its symmetric with the enable_slot() routine;
as it seems to call a very different set of routines.
However, this is easily fixed: pcibios_remove_pci_devices()
does the right thing.
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: John Rose <johnrose@austin.ibm.com>
----
drivers/pci/hotplug/rpaphp_core.c | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
Index: linux-2.6.21-rc4-git4/drivers/pci/hotplug/rpaphp_core.c
===================================================================
--- linux-2.6.21-rc4-git4.orig/drivers/pci/hotplug/rpaphp_core.c 2007-04-02 14:40:10.000000000 -0500
+++ linux-2.6.21-rc4-git4/drivers/pci/hotplug/rpaphp_core.c 2007-04-02 14:40:12.000000000 -0500
@@ -424,18 +424,12 @@ static int enable_slot(struct hotplug_sl
return retval;
}
-static int __disable_slot(struct slot *slot)
+static inline int __disable_slot(struct slot *slot)
{
- struct pci_dev *dev, *tmp;
-
if (slot->state == NOT_CONFIGURED)
return -EINVAL;
- list_for_each_entry_safe(dev, tmp, &slot->bus->devices, bus_list) {
- eeh_remove_bus_device(dev);
- pci_remove_bus_device(dev);
- }
-
+ pcibios_remove_pci_devices(slot->bus);
slot->state = NOT_CONFIGURED;
return 0;
}
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 17/19] PCI: rpaphp: Use pcibios_remove_pci_devices() symmetrically
@ 2007-04-03 17:31 Linas Vepstas
2007-05-07 5:09 ` Michael Ellerman
0 siblings, 1 reply; 4+ messages in thread
From: Linas Vepstas @ 2007-04-03 17:31 UTC (permalink / raw)
To: Kristen Carlson Accardi; +Cc: Andrew Morton, linuxppc-dev, pcihpd-discuss
At first blush, the disable_slot() routine does not look
at all like its symmetric with the enable_slot() routine;
as it seems to call a very different set of routines.
However, this is easily fixed: pcibios_remove_pci_devices()
does the right thing.
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: John Rose <johnrose@austin.ibm.com>
----
drivers/pci/hotplug/rpaphp_core.c | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
Index: linux-2.6.21-rc4-git4/drivers/pci/hotplug/rpaphp_core.c
===================================================================
--- linux-2.6.21-rc4-git4.orig/drivers/pci/hotplug/rpaphp_core.c 2007-04-03 11:04:41.000000000 -0500
+++ linux-2.6.21-rc4-git4/drivers/pci/hotplug/rpaphp_core.c 2007-04-03 11:04:47.000000000 -0500
@@ -424,18 +424,12 @@ static int enable_slot(struct hotplug_sl
return retval;
}
-static int __disable_slot(struct slot *slot)
+static inline int __disable_slot(struct slot *slot)
{
- struct pci_dev *dev, *tmp;
-
if (slot->state == NOT_CONFIGURED)
return -EINVAL;
- list_for_each_entry_safe(dev, tmp, &slot->bus->devices, bus_list) {
- eeh_remove_bus_device(dev);
- pci_remove_bus_device(dev);
- }
-
+ pcibios_remove_pci_devices(slot->bus);
slot->state = NOT_CONFIGURED;
return 0;
}
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 17/19] PCI: rpaphp: Use pcibios_remove_pci_devices() symmetrically
2007-04-03 17:31 [PATCH 17/19] PCI: rpaphp: Use pcibios_remove_pci_devices() symmetrically Linas Vepstas
@ 2007-05-07 5:09 ` Michael Ellerman
2007-05-07 17:04 ` Linas Vepstas
0 siblings, 1 reply; 4+ messages in thread
From: Michael Ellerman @ 2007-05-07 5:09 UTC (permalink / raw)
To: Linas Vepstas
Cc: Andrew Morton, linuxppc-dev, Kristen Carlson Accardi,
pcihpd-discuss
[-- Attachment #1: Type: text/plain, Size: 1711 bytes --]
On Tue, 2007-04-03 at 12:31 -0500, Linas Vepstas wrote:
> At first blush, the disable_slot() routine does not look
> at all like its symmetric with the enable_slot() routine;
> as it seems to call a very different set of routines.
> However, this is easily fixed: pcibios_remove_pci_devices()
> does the right thing.
>
> Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
> Cc: John Rose <johnrose@austin.ibm.com>
>
> ----
>
> drivers/pci/hotplug/rpaphp_core.c | 10 ++--------
> 1 file changed, 2 insertions(+), 8 deletions(-)
>
> Index: linux-2.6.21-rc4-git4/drivers/pci/hotplug/rpaphp_core.c
> ===================================================================
> --- linux-2.6.21-rc4-git4.orig/drivers/pci/hotplug/rpaphp_core.c 2007-04-03 11:04:41.000000000 -0500
> +++ linux-2.6.21-rc4-git4/drivers/pci/hotplug/rpaphp_core.c 2007-04-03 11:04:47.000000000 -0500
> @@ -424,18 +424,12 @@ static int enable_slot(struct hotplug_sl
> return retval;
> }
>
> -static int __disable_slot(struct slot *slot)
> +static inline int __disable_slot(struct slot *slot)
> {
> - struct pci_dev *dev, *tmp;
> -
> if (slot->state == NOT_CONFIGURED)
> return -EINVAL;
>
> - list_for_each_entry_safe(dev, tmp, &slot->bus->devices, bus_list) {
> - eeh_remove_bus_device(dev);
> - pci_remove_bus_device(dev);
> - }
> -
> + pcibios_remove_pci_devices(slot->bus);
You need to add an EXPORT_SYMBOL() for this.
cheers
--
Michael Ellerman
OzLabs, IBM Australia Development Lab
wwweb: http://michael.ellerman.id.au
phone: +61 2 6212 1183 (tie line 70 21183)
We do not inherit the earth from our ancestors,
we borrow it from our children. - S.M.A.R.T Person
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 17/19] PCI: rpaphp: Use pcibios_remove_pci_devices() symmetrically
2007-05-07 5:09 ` Michael Ellerman
@ 2007-05-07 17:04 ` Linas Vepstas
0 siblings, 0 replies; 4+ messages in thread
From: Linas Vepstas @ 2007-05-07 17:04 UTC (permalink / raw)
To: Michael Ellerman
Cc: Andrew Morton, linuxppc-dev, Kristen Carlson Accardi,
pcihpd-discuss
On Mon, May 07, 2007 at 03:09:14PM +1000, Michael Ellerman wrote:
> > -
> > + pcibios_remove_pci_devices(slot->bus);
>
> You need to add an EXPORT_SYMBOL() for this.
Dohh! I should know better by now, shouldn't I?
--linas
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-05-07 17:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-03 17:31 [PATCH 17/19] PCI: rpaphp: Use pcibios_remove_pci_devices() symmetrically Linas Vepstas
2007-05-07 5:09 ` Michael Ellerman
2007-05-07 17:04 ` Linas Vepstas
-- strict thread matches above, loose matches on Subject: below --
2007-04-03 0:26 [PATCH 0/19]: RPAPHP pci hotplug cleanup patchbomb Linas Vepstas
2007-04-03 0:49 ` [PATCH 17/19] PCI: rpaphp: Use pcibios_remove_pci_devices() symmetrically Linas Vepstas
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).