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 | 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 | 2423 | EXPORT_SYMBOL(module_remove_driver); |
| 2430 | 2424 | #endif |