mtd: blktrans: Hotplug fixes
* Add locking where it was missing. * Don't do a get_mtd_device in blktrans_open because it would lead to a deadlock; instead do that in add_mtd_blktrans_dev. * Only free the mtd_blktrans_dev structure when the last user exits. * Flush request queue on device removal. * Track users, and call tr->release in del_mtd_blktrans_dev Due to that ->open and release aren't called more that once. Now it is safe to call del_mtd_blktrans_dev while the device is still in use. Signed-off-by:Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by:
David Woodhouse <David.Woodhouse@intel.com>
Showing
- drivers/mtd/ftl.c 0 additions, 1 deletiondrivers/mtd/ftl.c
- drivers/mtd/inftlcore.c 0 additions, 1 deletiondrivers/mtd/inftlcore.c
- drivers/mtd/mtd_blkdevs.c 148 additions, 54 deletionsdrivers/mtd/mtd_blkdevs.c
- drivers/mtd/mtdblock.c 0 additions, 2 deletionsdrivers/mtd/mtdblock.c
- drivers/mtd/mtdblock_ro.c 0 additions, 1 deletiondrivers/mtd/mtdblock_ro.c
- drivers/mtd/nftlcore.c 0 additions, 1 deletiondrivers/mtd/nftlcore.c
- drivers/mtd/rfd_ftl.c 0 additions, 1 deletiondrivers/mtd/rfd_ftl.c
- drivers/mtd/ssfdc.c 0 additions, 1 deletiondrivers/mtd/ssfdc.c
- include/linux/mtd/blktrans.h 3 additions, 0 deletionsinclude/linux/mtd/blktrans.h
Loading
Please register or sign in to comment