aboutsummaryrefslogtreecommitdiffstats
path: root/block/elevator.c
diff options
context:
space:
mode:
authorKeith Busch <keith.busch@intel.com>2014-08-26 09:05:36 -0600
committerBen Hutchings <ben@decadent.org.uk>2014-11-05 20:27:40 +0000
commita288cafeceb6e18ba4fd10ec8d3270593472cca6 (patch)
tree3ec11e6f9758e5620b7d4f8ad55bc77ba9dd8083 /block/elevator.c
parent1cc8e21690688b24b0b9388dbb14e1d2cf4f94b4 (diff)
downloadkernel_samsung_smdk4412-a288cafeceb6e18ba4fd10ec8d3270593472cca6.zip
kernel_samsung_smdk4412-a288cafeceb6e18ba4fd10ec8d3270593472cca6.tar.gz
kernel_samsung_smdk4412-a288cafeceb6e18ba4fd10ec8d3270593472cca6.tar.bz2
block: Fix dev_t minor allocation lifetime
commit 2da78092dda13f1efd26edbbf99a567776913750 upstream. Releases the dev_t minor when all references are closed to prevent another device from acquiring the same major/minor. Since the partition's release may be invoked from call_rcu's soft-irq context, the ext_dev_idr's mutex had to be replaced with a spinlock so as not so sleep. Signed-off-by: Keith Busch <keith.busch@intel.com> Signed-off-by: Jens Axboe <axboe@fb.com> [bwh: Backported to 3.2: - Adjust filename - idr insertion API is different, and blk_alloc_devt() is preallocating a node in a different way] Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'block/elevator.c')
0 files changed, 0 insertions, 0 deletions