Jiri Slaby <[EMAIL PROTECTED]> wrote: > > --- a/drivers/char/watchdog/i6300esb.c > +++ b/drivers/char/watchdog/i6300esb.c > @@ -368,12 +368,11 @@ static unsigned char __init esb_getdevic > * Find the PCI device > */ > > - while ((dev = pci_find_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != > NULL) { > + for_each_pci_dev(dev) > if (pci_match_id(esb_pci_tbl, dev)) { > esb_pci = dev; > break; > } > - } > > if (esb_pci) { > if (pci_enable_device(esb_pci)) { > @@ -430,6 +429,7 @@ err_release: > pci_release_region(esb_pci, 0); > err_disable: > pci_disable_device(esb_pci); > + pci_dev_put(esb_pci);
That doesn't look right. Each iteration of for_each_pci_dev() needs a pci_dev_put(), not just the final one. - 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/