diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-17 18:46:22 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-17 18:46:22 -0400 |
commit | 5b0c4b30a625927340a3e7f565aa4de8b60489cc (patch) | |
tree | eb1dabd30fa6dd6c2ce45bbe59da9cf4cc6adc57 /drivers/ide/ide-probe.c | |
parent | c7f6f21aaeb826a9b04b5897a92f29226995170f (diff) |
ide: remove IDE devices from /proc/ide/ before unregistering them
IDE devices need to be removed from /proc/ide/ _before_ being unregistered:
* Drop 'ide_hwif_t *hwif' argument from destroy_proc_ide_device()
and use drive->hwif instead.
* Rename destroy_proc_ide_device() to ide_proc_unregister_device().
* Call ide_proc_unregister_device() in drive_release_dev().
* Remove no longer needed destroy_proc_ide_drives().
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide-probe.c')
-rw-r--r-- | drivers/ide/ide-probe.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index 9db8978ad394..dea314ce33d3 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c | |||
@@ -1199,6 +1199,8 @@ static void drive_release_dev (struct device *dev) | |||
1199 | { | 1199 | { |
1200 | ide_drive_t *drive = container_of(dev, ide_drive_t, gendev); | 1200 | ide_drive_t *drive = container_of(dev, ide_drive_t, gendev); |
1201 | 1201 | ||
1202 | ide_proc_unregister_device(drive); | ||
1203 | |||
1202 | spin_lock_irq(&ide_lock); | 1204 | spin_lock_irq(&ide_lock); |
1203 | ide_remove_drive_from_hwgroup(drive); | 1205 | ide_remove_drive_from_hwgroup(drive); |
1204 | kfree(drive->id); | 1206 | kfree(drive->id); |