On Sat, Sep 29, 2007 at 12:04:47AM +0000, Maarten Bressers wrote:
> On Fri, 28 Sep 2007 15:49:26 -0700
> Greg KH <[email protected]> wrote:
>
> > 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 <[email protected]>
> > >
> > >
> > > 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
>
> Greg, thank you for your reply. It seems I'm out of my league here, I
> just thought I could quickly fix two compiler warnings, obviously this
> is not the case. I've read the documentation, but I don't think I'll be
> able to fix this. Sorry for the noise.
No problem, and I don't mean to scare you away at all. If you want to
work toward getting rid of all of the callers of the pci_find_slot()
function, that would be best, and then the function can be deleted.
If you have questions on how to do that, feel free to ask.
thanks,
greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]