On Tue, Feb 12 2008 at 18:22 +0200, James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote: > On Tue, 2008-02-12 at 11:31 -0300, Sergio Luis wrote: >> Fix compilation warning in drivers/scsi/gdth.c, using deprecated pci_find_device. >> Change it into using pci_get_device instead: >> drivers/scsi/gdth.c:645: warning: 'pci_find_device' is deprecated (declared at include/linux/pci.h:495) >> >> Signed-off-by: Sergio Luis <sergio@xxxxxxxxxxxxxx> >> >> gdth.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> >> diff -urN linux-2.6.25-rc1-git2.orig/drivers/scsi/gdth.c linux-2.6.25-rc1-git2/drivers/scsi/gdth.c >> --- linux-2.6.25-rc1-git2.orig/drivers/scsi/gdth.c 2008-02-12 09:26:14.000000000 -0300 >> +++ linux-2.6.25-rc1-git2/drivers/scsi/gdth.c 2008-02-12 10:33:08.000000000 -0300 >> @@ -642,7 +642,7 @@ >> *cnt, vendor, device)); >> >> pdev = NULL; >> - while ((pdev = pci_find_device(vendor, device, pdev)) >> + while ((pdev = pci_get_device(vendor, device, pdev)) >> != NULL) { >> if (pci_enable_device(pdev)) >> continue; > > This can't be correct without a matching put in the error leg. > > The difference between the two APIs is that pci_get_device returns a > pci_device with a reference taken and pci_find_device doesn't. However, > pci_get_device does drop the reference again so as long as you never > exit the loop until it returns NULL, it is OK ... it's the exits before > pci_get_device() returns NULL that need the put. > > James > Yes you are right I have just realized that. Reinspecting pci_get_device() Sergio will you do it? or should I have a try? Boaz - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html