linux/block
Jens Axboe 9a11b4ed0e cfq-iosched: properly protect ioc_gone and ioc count
If we have multiple tasks freeing cfq_io_contexts when cfq-iosched
is being unloaded, we could complete() ioc_gone twice. Fix that by
protecting ioc_gone complete() and clearing with a spinlock for
just that purpose. Doesn't matter from a performance perspective,
since it'll only enter that path when ioc_gone != NULL (when cfq-iosched
is being rmmod'ed).

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-07-03 13:21:12 +02:00
..
as-iosched.c block: Fix the starving writes bug in the anticipatory IO scheduler 2008-07-01 09:06:42 +02:00
blk-barrier.c block: remove remaining __FUNCTION__ occurrences 2008-05-01 08:04:02 -07:00
blk-core.c block: Move the second call to get_request to the end of the loop 2008-05-28 14:49:27 +02:00
blk-exec.c block: make core bits checkpatch compliant 2008-02-01 09:26:33 +01:00
blk-ioc.c cfq-iosched: fix RCU race in the cfq io_context destructor handling 2008-05-07 09:28:57 +02:00
blk-map.c block: add dma alignment and padding support to blk_rq_map_kern 2008-04-29 09:50:34 +02:00
blk-merge.c block: get rid of likely/unlikely predictions in merge logic 2008-05-07 09:33:55 +02:00
blk-settings.c Remove blkdev warning triggered by using md 2008-05-14 19:11:15 -07:00
blk-sysfs.c block: sysfs store function needs to grab queue_lock and use queue_flag_*() 2008-05-07 09:09:39 +02:00
blk-tag.c block: adjust tagging function queue bit locking 2008-05-07 09:27:43 +02:00
blk.h block: rename and export rq_init() 2008-04-29 14:48:55 +02:00
blktrace.c block: disable IRQs until data is written to relay channel 2008-06-12 11:20:57 -07:00
bsg.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2008-05-02 13:52:35 -07:00
cfq-iosched.c cfq-iosched: properly protect ioc_gone and ioc count 2008-07-03 13:21:12 +02:00
compat_ioctl.c Fix misuses of bdevname() 2008-05-13 08:02:26 -07:00
deadline-iosched.c block: let elv_register() return void 2007-12-18 08:29:28 +01:00
elevator.c Added in elevator switch message to blktrace stream 2008-05-28 14:49:27 +02:00
genhd.c Fix invalid access errors in blk_lookup_devt 2008-06-09 10:06:24 -07:00
ioctl.c compat_ioctl: move common block ioctls to compat_blkdev_ioctl 2007-10-10 09:26:00 +02:00
Kconfig Kconfig: clean up block/Kconfig help descriptions 2008-04-21 09:51:04 +02:00
Kconfig.iosched update I/O sched Kconfig help texts - CFQ is now default, not AS. 2007-02-17 20:08:22 +01:00
Makefile block: ll_rw_blk.c split, add blk-merge.c 2008-01-29 21:55:12 +01:00
noop-iosched.c block: let elv_register() return void 2007-12-18 08:29:28 +01:00
scsi_ioctl.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2008-05-02 13:52:35 -07:00