Re: pci_get_device_reverse(), why does Calgary need this?

From: Bartlomiej Zolnierkiewicz
Date: Wed Feb 13 2008 - 17:08:54 EST


On Wednesday 13 February 2008, Greg KH wrote:
> On Wed, Feb 13, 2008 at 09:28:24AM -0800, Greg KH wrote:
> > On Wed, Feb 13, 2008 at 01:34:12PM +0100, Bartlomiej Zolnierkiewicz wrote:
> > > On Wednesday 13 February 2008, Greg KH wrote:
> > > > On Wed, Feb 13, 2008 at 02:17:37AM +0000, Alan Cox wrote:
> > > > > > Why does the calgary driver need this? Can we just use pci_get_device()
> > > > > > instead? Why do you need to walk the device list backwards? Do you get
> > > > > > false positives going forward?
> > > > >
> > > > > It doesn't look to be performance critical so the driver can
> > > > > pci_get_device until the end and use the final hit anyway.
> > > >
> > > > That would make more sense.
> > > >
> > > > > IDE reverse is more problematic but nobody seems to use it.
> > > >
> > > > I've seen two posters say they use it. I'm wondering what it is really
> > > > solving if they use it, and why if it's really needed, scsi never had to
> > > > implement such a hack...
> > >
> > > It is no longer solving anything, just adds more pain. ;)
> > >
> > > [ The option comes from 2.2.x (so long before LABEL=/ and /dev/disk/by-id/
> > > became popular). Some "off-board" controllers integrated on motherboards
> > > used to appear before "on-board" IDE on PCI bus so this option was meant
> > > to preserve the legacy ordering. ]
> > >
> > > Since it is valid only when "Probe IDE PCI devices in the PCI bus order
> > > (DEPRECATED)" config option is used it is already on its way out (though
> > > marking it as obsoleted would make it more explicit).
> > >
> > > I think that removing "ide=reverse" in 2.6.26 would be OK...
> >
> > Great, thanks for your blessing. I'll make up a patch and send it to
> > you for approval.
>
> How does the patch below look? I didn't want to remove the whole config
> option, as there is more to the logic than just the "reverse order"
> stuff there.

looks fine,

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>

> If you don't mind, can I take this through the PCI tree so as to allow
> the removal of this pci function afterwards?

[...]

great, could you also:
- rebase it on top of the patch below
- forward the patch below to Linus for 2.6.25

?

From: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
Subject: [PATCH] ide: mark "ide=reverse" option as obsolete

- it is valid only if "Probe IDE PCI devices in the PCI bus order
(DEPRECATED)" config option is used

- Greg needs to remove pci_get_device_reverse() for PCI core changes

Cc: Greg Kroah-Hartman <gregkh@xxxxxxx>
Cc: Alan Cox <alan@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
---
drivers/ide/ide.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Index: b/drivers/ide/ide.c
===================================================================
--- a/drivers/ide/ide.c
+++ b/drivers/ide/ide.c
@@ -1038,7 +1038,7 @@ static int __init ide_setup(char *s)
if (!strcmp(s, "ide=reverse")) {
ide_scan_direction = 1;
printk(" : Enabled support for IDE inverse scan order.\n");
- return 1;
+ goto obsolete_option;
}
#endif

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/