This reverts commit 63ce18cfe685115ff8d341bae4c9204a79043cf0. It was the incorrect fix and causes a reference counting bug whenever any driver module is removed from the system. Mike Galbraith <efault@gmx.de> is looking for the real fix for his problem.
Unified · Split
| @@ -2419,12 +2419,6 @@ void module_remove_driver(struct device_driver *drv) · 2418 unmodified lines | |||
| 2419 | kfree(driver_name); | 2419 | kfree(driver_name); |
| 2420 | } | 2420 | } |
| 2421 | } | 2421 | } |
| 2422 | /* | ||
| 2423 | * Undo the additional reference we added in module_add_driver() | ||
| 2424 | * via kset_find_obj() | ||
| 2425 | */ | ||
| 2426 | if (drv->mod_name) | ||
| 2427 | kobject_put(&drv->kobj); | ||
| 2428 | } | 2422 | } |
| 2429 | EXPORT_SYMBOL(module_remove_driver); | 2423 | EXPORT_SYMBOL(module_remove_driver); |
| 2430 | #endif | 2424 | #endif |