ide: unregister idepnp driver on unload
idepnp driver is registered as a pnp driver on ide init but doesn't get unregistered on ide unload causing driver list corruption and eventually oops. Fix it. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
committed by
Bartlomiej Zolnierkiewicz
parent
82ab1eeceb
commit
6855036aa0
@@ -73,3 +73,8 @@ void __init pnpide_init(void)
|
|||||||
{
|
{
|
||||||
pnp_register_driver(&idepnp_driver);
|
pnp_register_driver(&idepnp_driver);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void __exit pnpide_exit(void)
|
||||||
|
{
|
||||||
|
pnp_unregister_driver(&idepnp_driver);
|
||||||
|
}
|
||||||
|
@@ -1782,6 +1782,7 @@ done:
|
|||||||
}
|
}
|
||||||
|
|
||||||
extern void pnpide_init(void);
|
extern void pnpide_init(void);
|
||||||
|
extern void pnpide_exit(void);
|
||||||
extern void h8300_ide_init(void);
|
extern void h8300_ide_init(void);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -2094,6 +2095,10 @@ void cleanup_module (void)
|
|||||||
for (index = 0; index < MAX_HWIFS; ++index)
|
for (index = 0; index < MAX_HWIFS; ++index)
|
||||||
ide_unregister(index);
|
ide_unregister(index);
|
||||||
|
|
||||||
|
#ifdef CONFIG_BLK_DEV_IDEPNP
|
||||||
|
pnpide_exit();
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_PROC_FS
|
#ifdef CONFIG_PROC_FS
|
||||||
proc_ide_destroy();
|
proc_ide_destroy();
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user