Le 26.10.2005 23:20, Al Viro a écrit : > On Wed, Oct 26, 2005 at 10:48:03PM +0200, Laurent riffard wrote: > >>--- linux-2.6-stable.orig/drivers/ide/setup-pci.c >>+++ linux-2.6-stable/drivers/ide/setup-pci.c >>@@ -787,8 +787,9 @@ >> static LIST_HEAD(ide_pci_drivers); >> >> /* >>- * ide_register_pci_driver - attach IDE driver >>+ * __ide_register_pci_driver - attach IDE driver >> * @driver: pci driver >>+ * @module: owner module of the driver >> * >> * Registers a driver with the IDE layer. The IDE layer arranges that >> * boot time setup is done in the expected device order and then >>@@ -801,15 +802,16 @@ >> * Returns are the same as for pci_register_driver >> */ >> >>-int ide_pci_register_driver(struct pci_driver *driver) >>+int __ide_pci_register_driver(struct pci_driver *driver, struct module *module) >> { >> if(!pre_init) >>- return pci_module_init(driver); >>+ return __pci_register_driver(driver, module); >>+ driver->driver.owner = module; >> list_add_tail(&driver->node, &ide_pci_drivers); >> return 0; >> } >> >>-EXPORT_SYMBOL_GPL(ide_pci_register_driver); >>+EXPORT_SYMBOL_GPL(__ide_pci_register_driver); > > > Not enough - you have to deal with pci_register_driver() call later in > the same file. Replace with __pci_register_driver(d, d->driver.owner)... My bad, I should have have tried to check that... Here is an updated patch, it includes your above remark and some fixes related to .name deletion. thanks -- laurent