linux/block
Louis Rilling b69f229206 block: Fix io_context leak after failure of clone with CLONE_IO
With CLONE_IO, parent's io_context->nr_tasks is incremented, but never
decremented whenever copy_process() fails afterwards, which prevents
exit_io_context() from calling IO schedulers exit functions.

Give a task_struct to exit_io_context(), and call exit_io_context() instead of
put_io_context() in copy_process() cleanup path.

Signed-off-by: Louis Rilling <louis.rilling@kerlabs.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-12-04 16:36:18 +01:00
..
Kconfig blkio: Some debugging aids for CFQ 2009-12-03 19:28:52 +01:00
Kconfig.iosched io controller: quick fix for blk-cgroup and modular CFQ 2009-12-04 10:07:38 +01:00
Makefile blkio: Introduce blkio controller cgroup interface 2009-12-03 19:28:51 +01:00
blk-barrier.c block: allow large discard requests 2009-10-01 21:19:34 +02:00
blk-cgroup.c cfq-iosched: move IO controller declerations to a header file 2009-12-04 10:06:35 +01:00
blk-cgroup.h cfq-iosched: fix compile problem with !CONFIG_CGROUP 2009-12-03 21:07:17 +01:00
blk-core.c block: add helpers to run flush_dcache_page() against a bio and a request's pages 2009-11-26 09:16:19 +01:00
blk-exec.c block: don't set REQ_NOMERGE unnecessarily 2009-04-28 07:37:33 +02:00
blk-integrity.c block: fix improper kobject release in blk_integrity_unregister 2009-07-28 09:11:14 +02:00
blk-ioc.c block: Fix io_context leak after failure of clone with CLONE_IO 2009-12-04 16:36:18 +01:00
blk-iopoll.c block: use interrupts disabled version of raise_softirq_irqoff() 2009-09-11 14:33:32 +02:00
blk-map.c block: Use accessor functions for queue limits 2009-05-22 23:22:54 +02:00
blk-merge.c block: Seperate read and write statistics of in_flight requests v2 2009-10-06 20:16:55 +02:00
blk-settings.c block: Allow devices to indicate whether discarded blocks are zeroed 2009-12-03 09:24:48 +01:00
blk-softirq.c generic-ipi: remove CSD_FLAG_WAIT 2009-02-25 14:13:44 +01:00
blk-sysfs.c block: Allow devices to indicate whether discarded blocks are zeroed 2009-12-03 09:24:48 +01:00
blk-tag.c block: use proper BLK_RW_ASYNC in blk_queue_start_tag() 2009-10-06 20:19:02 +02:00
blk-timeout.c block: clean up misc stuff after block layer timeout conversion 2009-04-28 07:37:34 +02:00
blk.h block: implement mixed merge of different failfast requests 2009-09-11 14:33:30 +02:00
bsg.c block: jiffies fixes 2009-11-11 13:47:45 +01:00
cfq-iosched.c cfq-iosched: make nonrot check logic consistent 2009-12-04 13:12:06 +01:00
cfq-iosched.h cfq-iosched: move IO controller declerations to a header file 2009-12-04 10:06:35 +01:00
compat_ioctl.c block: Allow devices to indicate whether discarded blocks are zeroed 2009-12-03 09:24:48 +01:00
deadline-iosched.c block: convert to pos and nr_sectors accessors 2009-05-11 09:50:54 +02:00
elevator.c Merge branch 'for-linus' into for-2.6.33 2009-10-13 12:29:45 +02:00
genhd.c block: Expose discard granularity 2009-11-10 11:50:21 +01:00
ioctl.c block: Allow devices to indicate whether discarded blocks are zeroed 2009-12-03 09:24:48 +01:00
noop-iosched.c block: get rid of elevator_t typedef 2008-12-29 08:29:50 +01:00
scsi_ioctl.c block/scsi_ioctl.c: quiet sparse noise 2009-11-04 09:10:33 +01:00