Re: [PATCH] Fix compiler warnings for 2.6.23-rc8 on x86_64

From: Greg KH
Date: Fri Sep 28 2007 - 19:03:42 EST


On Fri, Sep 28, 2007 at 08:56:30PM +0000, Maarten Bressers wrote:
> This (trivial) patch fixes two compiler warnings for 2.6.23-rc8 on x86_64,
> use of deprecated function pci_find_device() and a section mismatch.
> Build log and .config file included.
>
> Signed-off by: Maarten Bressers <mbres@xxxxxxxxxx>
>
>
> diff --git a/drivers/pci/search.c b/drivers/pci/search.c
> index c6e79d0..0eb7e9e 100644
> --- a/drivers/pci/search.c
> +++ b/drivers/pci/search.c
> @@ -96,7 +96,7 @@ pci_find_slot(unsigned int bus, unsigned int devfn)
> {
> struct pci_dev *dev = NULL;
>
> - while ((dev = pci_find_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL) {
> + while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL) {
> if (dev->bus->number == bus && dev->devfn == devfn)
> return dev;
> }

This is not a trivial patch, it changes the behavior of the code and is
buggy.

Please read the documentationfor pci_get_device() on how to use it
properly. It can not be used in pci_find_slot() as the reference
counting will be all wrong. You need to just work to get rid of
pci_find_slot() and then remove the whole function to get rid of the
warning :)

> -EXPORT_SYMBOL(pci_find_device);
> -EXPORT_SYMBOL(pci_find_slot);

What about the modules that want to use these functions? Are they all
now gone? If so, just drop the whole function.

thanks,

greg k-h
-
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/