linux-stable-rt/block
Hannes Reinecke 777eb1bf15 block: Free queue resources at blk_release_queue()
A kernel crash is observed when a mounted ext3/ext4 filesystem is
physically removed. The problem is that blk_cleanup_queue() frees up
some resources eg by calling elevator_exit(), which are not checked for
in normal operation. So we should rather move these calls to the
destructor function blk_release_queue() as at that point all remaining
references are gone. However, in doing so we have to ensure that any
externally supplied queue_lock is disconnected as the driver might free
up the lock after the call of blk_cleanup_queue(),

Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2011-09-28 08:07:01 -06:00
..
Kconfig block: add bsg helper library 2011-07-31 22:05:09 +02:00
Kconfig.iosched
Makefile block: add bsg helper library 2011-07-31 22:05:09 +02:00
blk-cgroup.c blk-cgroup: be able to remove the record of unplugged device 2011-09-21 10:22:10 +02:00
blk-cgroup.h
blk-core.c block: Free queue resources at blk_release_queue() 2011-09-28 08:07:01 -06:00
blk-exec.c
blk-flush.c block: fix flush machinery for stacking drivers with differring flush flags 2011-08-15 21:37:25 +02:00
blk-integrity.c
blk-ioc.c
blk-iopoll.c
blk-lib.c
blk-map.c
blk-merge.c
blk-settings.c
blk-softirq.c block: Don't check QUEUE_FLAG_SAME_COMP in __blk_complete_request 2011-09-14 09:31:01 +02:00
blk-sysfs.c block: Free queue resources at blk_release_queue() 2011-09-28 08:07:01 -06:00
blk-tag.c
blk-throttle.c blk-throttle: correctly determine sync bio 2011-08-01 10:31:06 +02:00
blk-timeout.c fault-injection: add ability to export fault_attr in arbitrary directory 2011-08-03 14:25:20 -10:00
blk.h block: fix flush machinery for stacking drivers with differring flush flags 2011-08-15 21:37:25 +02:00
bsg-lib.c bsg-lib: add module.h include 2011-08-02 10:43:35 +02:00
bsg.c
cfq-iosched.c block: separate priority boosting from REQ_META 2011-08-23 14:50:29 +02:00
cfq.h
compat_ioctl.c
deadline-iosched.c
elevator.c
genhd.c block/genhd.c: remove useless cast in diskstats_show() 2011-08-02 12:43:50 +02:00
ioctl.c
noop-iosched.c
scsi_ioctl.c