diff options
-rw-r--r-- | drivers/ide/setup-pci.c | 7 | ||||
-rw-r--r-- | drivers/pci/pci-driver.c | 4 | ||||
-rw-r--r-- | include/linux/ide.h | 4 | ||||
-rw-r--r-- | include/linux/pci.h | 5 |
4 files changed, 12 insertions, 8 deletions
diff --git a/drivers/ide/setup-pci.c b/drivers/ide/setup-pci.c index 695e23904d30..a52c80fe7d3e 100644 --- a/drivers/ide/setup-pci.c +++ b/drivers/ide/setup-pci.c | |||
@@ -783,10 +783,11 @@ static LIST_HEAD(ide_pci_drivers); | |||
783 | * Returns are the same as for pci_register_driver | 783 | * Returns are the same as for pci_register_driver |
784 | */ | 784 | */ |
785 | 785 | ||
786 | int __ide_pci_register_driver(struct pci_driver *driver, struct module *module) | 786 | int __ide_pci_register_driver(struct pci_driver *driver, struct module *module, |
787 | const char *mod_name) | ||
787 | { | 788 | { |
788 | if(!pre_init) | 789 | if(!pre_init) |
789 | return __pci_register_driver(driver, module); | 790 | return __pci_register_driver(driver, module, mod_name); |
790 | driver->driver.owner = module; | 791 | driver->driver.owner = module; |
791 | list_add_tail(&driver->node, &ide_pci_drivers); | 792 | list_add_tail(&driver->node, &ide_pci_drivers); |
792 | return 0; | 793 | return 0; |
@@ -862,6 +863,6 @@ void __init ide_scan_pcibus (int scan_direction) | |||
862 | { | 863 | { |
863 | list_del(l); | 864 | list_del(l); |
864 | d = list_entry(l, struct pci_driver, node); | 865 | d = list_entry(l, struct pci_driver, node); |
865 | __pci_register_driver(d, d->driver.owner); | 866 | __pci_register_driver(d, d->driver.owner, d->driver.mod_name); |
866 | } | 867 | } |
867 | } | 868 | } |
diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c index 92d5e8db0de7..358766885260 100644 --- a/drivers/pci/pci-driver.c +++ b/drivers/pci/pci-driver.c | |||
@@ -422,7 +422,8 @@ static struct kobj_type pci_driver_kobj_type = { | |||
422 | * If no error occurred, the driver remains registered even if | 422 | * If no error occurred, the driver remains registered even if |
423 | * no device was claimed during registration. | 423 | * no device was claimed during registration. |
424 | */ | 424 | */ |
425 | int __pci_register_driver(struct pci_driver *drv, struct module *owner) | 425 | int __pci_register_driver(struct pci_driver *drv, struct module *owner, |
426 | const char *mod_name) | ||
426 | { | 427 | { |
427 | int error; | 428 | int error; |
428 | 429 | ||
@@ -430,6 +431,7 @@ int __pci_register_driver(struct pci_driver *drv, struct module *owner) | |||
430 | drv->driver.name = drv->name; | 431 | drv->driver.name = drv->name; |
431 | drv->driver.bus = &pci_bus_type; | 432 | drv->driver.bus = &pci_bus_type; |
432 | drv->driver.owner = owner; | 433 | drv->driver.owner = owner; |
434 | drv->driver.mod_name = mod_name; | ||
433 | drv->driver.kobj.ktype = &pci_driver_kobj_type; | 435 | drv->driver.kobj.ktype = &pci_driver_kobj_type; |
434 | 436 | ||
435 | if (pci_multithread_probe) | 437 | if (pci_multithread_probe) |
diff --git a/include/linux/ide.h b/include/linux/ide.h index e26a03981a94..827688f41d6c 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -1192,8 +1192,8 @@ void ide_init_disk(struct gendisk *, ide_drive_t *); | |||
1192 | extern int ideprobe_init(void); | 1192 | extern int ideprobe_init(void); |
1193 | 1193 | ||
1194 | extern void ide_scan_pcibus(int scan_direction) __init; | 1194 | extern void ide_scan_pcibus(int scan_direction) __init; |
1195 | extern int __ide_pci_register_driver(struct pci_driver *driver, struct module *owner); | 1195 | extern int __ide_pci_register_driver(struct pci_driver *driver, struct module *owner, const char *mod_name); |
1196 | #define ide_pci_register_driver(d) __ide_pci_register_driver(d, THIS_MODULE) | 1196 | #define ide_pci_register_driver(d) __ide_pci_register_driver(d, THIS_MODULE, KBUILD_MODNAME) |
1197 | void ide_pci_setup_ports(struct pci_dev *, struct ide_pci_device_s *, int, ata_index_t *); | 1197 | void ide_pci_setup_ports(struct pci_dev *, struct ide_pci_device_s *, int, ata_index_t *); |
1198 | extern void ide_setup_pci_noise (struct pci_dev *dev, struct ide_pci_device_s *d); | 1198 | extern void ide_setup_pci_noise (struct pci_dev *dev, struct ide_pci_device_s *d); |
1199 | 1199 | ||
diff --git a/include/linux/pci.h b/include/linux/pci.h index f3c617eabd8d..cb899eb95d31 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
@@ -573,10 +573,11 @@ int __must_check pci_bus_alloc_resource(struct pci_bus *bus, | |||
573 | void pci_enable_bridges(struct pci_bus *bus); | 573 | void pci_enable_bridges(struct pci_bus *bus); |
574 | 574 | ||
575 | /* Proper probing supporting hot-pluggable devices */ | 575 | /* Proper probing supporting hot-pluggable devices */ |
576 | int __must_check __pci_register_driver(struct pci_driver *, struct module *); | 576 | int __must_check __pci_register_driver(struct pci_driver *, struct module *, |
577 | const char *mod_name); | ||
577 | static inline int __must_check pci_register_driver(struct pci_driver *driver) | 578 | static inline int __must_check pci_register_driver(struct pci_driver *driver) |
578 | { | 579 | { |
579 | return __pci_register_driver(driver, THIS_MODULE); | 580 | return __pci_register_driver(driver, THIS_MODULE, KBUILD_MODNAME); |
580 | } | 581 | } |
581 | 582 | ||
582 | void pci_unregister_driver(struct pci_driver *); | 583 | void pci_unregister_driver(struct pci_driver *); |