diff -urN oldtree/drivers/message/i2o/pci.c newtree/drivers/message/i2o/pci.c
--- oldtree/drivers/message/i2o/pci.c	2006-09-24 17:03:56.000000000 -0400
+++ newtree/drivers/message/i2o/pci.c	2006-09-26 18:59:04.000000000 -0400
@@ -372,12 +372,13 @@
 		 * Expose the ship behind i960 for initialization, or it will
 		 * failed
 		 */
-		i960 =
-		    pci_find_slot(c->pdev->bus->number,
+		i960 = pci_get_slot(c->pdev->bus,
 				  PCI_DEVFN(PCI_SLOT(c->pdev->devfn), 0));
 
-		if (i960)
+		if (i960) {
 			pci_write_config_word(i960, 0x42, 0);
+			pci_dev_put(i960);
+		}
 
 		c->promise = 1;
 		c->limit_sectors = 1;
