mtip32xx: fix rmmod issue
PATCH 1/9 mtip32xx: fix rmmod issue
put_disk() need to be called after del_gendisk() to free the disk object structure.
Signed-off-by Selvan Mani <[email protected]>
Signed-off-by Asai Thambi S P <[email protected]>
--- drivers/block/mtip32xx/mtip32xx.c | 13 +++++++------ 1 files changed, 7 insertions(+), 6 deletions(-)
drivers/block/mtip32xx/mtip32xx.c +7 -6
@@ -2809,6 +2809,7 @@ static int mtip_free_orphan(struct driver_data *dd)kobject_put (kobj); }del_gendisk (dd->disk); +put_disk (dd->disk); dd->disk =NULL ; }if (dd->queue) {
@@ -4095,13 +4096,13 @@ static int mtip_block_remove(struct driver_data *dd) dd->bdev =NULL ; }if (dd->disk) { +del_gendisk (dd->disk);if (dd->disk->queue) { -del_gendisk (dd->disk);blk_cleanup_queue (dd->queue);blk_mq_free_tag_set (&dd->tags); dd->queue =NULL ; - }else -put_disk (dd->disk); + } +put_disk (dd->disk); } dd->disk =NULL ;
@@ -4140,12 +4141,12 @@ static int mtip_block_shutdown(struct driver_data *dd)dev_info (&dd->pdev->dev,"Shutting down %s ...\n" , dd->disk->disk_name); +del_gendisk (dd->disk);if (dd->disk->queue) { -del_gendisk (dd->disk);blk_cleanup_queue (dd->queue);blk_mq_free_tag_set (&dd->tags); - }else -put_disk (dd->disk); + } +put_disk (dd->disk); dd->disk =NULL ; dd->queue =NULL ; }
Signature · 1 line
1.7.1