On Fri, Apr 20, 2007 at 02:31:01PM -0400, Preston A. Elder wrote: > Here is the code for __pci_register_driver: > ... > > So in the above case, we ARE saying if driver_register returns 0 then > pci_create_newid_file. > > Is it different to the code you have? As I said, this IS 2.6.19.
Yes, .20 changed this in this way.. @@ -445,9 +442,12 @@ int __pci_register_driver(struct pci_driver *drv, struct module *owner) /* register with core */ error = driver_register(&drv->driver); + if (error) + return error; - if (!error) - error = pci_create_newid_file(drv); + error = pci_create_newid_file(drv); + if (error) + driver_unregister(&drv->driver); return error; } Retry your tracing with .20 (or better yet, .21rc7/todays git) Dave -- http://www.codemonkey.org.uk - 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/