Re: [PATCH] pci_get_slot()

From: Matthew Wilcox
Date: Wed Oct 15 2003 - 14:00:24 EST


On Wed, Oct 15, 2003 at 11:41:04AM -0700, Greg KH wrote:
> The check of:
> if (dev->bus->number == bus && dev->devfn == devfn)
> in pci_find_slot() doesn't check for the domain?

No, it would also need to check pci_domain_nr(dev->bus) .. and it doesn't
have anything to check it against as that information isn't passed into
the function.

> Anyway, is there any other way you can fix this in the tg3 driver only
> for right now? I agree adding the pci function is "cleaner", but a bit
> late for right now.

The only real way to do it is to inline pci_get_slot() into tg3. Since I
also have a need for it in sym2, that doesn't seem like a sensible idea.
It would also be racy since it wouldn't take the pci_bus_lock.

> How does this differ from pci_find_slot()? (becides the pci_dev_get()
> call)? pci_find_slot() asks for the bus number, which can be determined
> from the pci_bus structure, right?

The pci_bus knows which domain it's in. We don't have to check it since
we only walk its children.

--
"It's not Hollywood. War is real, war is primarily not about defeat or
victory, it is about death. I've seen thousands and thousands of dead bodies.
Do you think I want to have an academic debate on this subject?" -- Robert Fisk
-
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/