Jens Axboe
f2d1f0ae78
cfq-iosched: cache prio_tree root in cfqq->p_root
...
Currently we look it up from ->ioprio, but ->ioprio can change if
either the process gets its IO priority changed explicitly, or if
cfq decides to temporarily boost it. So if we are unlucky, we can
end up attempting to remove a node from a different rbtree root than
where it was added.
Fix this by using ->org_ioprio as the prio_tree index, since that
will only change for explicit IO priority settings (not for a boost).
Additionally cache the rbtree root inside the cfqq, then we don't have
to add code to reinsert the cfqq in the prio_tree if IO priority changes.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-04-24 08:54:22 +02:00
..
as-iosched.c
as-iosched: get rid of private REQ_SYNC/REQ_ASYNC defines
2009-04-15 08:28:10 +02:00
blk-barrier.c
block: Remove code handling bio_alloc failure with __GFP_WAIT
2009-04-15 12:10:12 +02:00
blk-core.c
block: simplify I/O stat accounting
2009-04-24 08:54:21 +02:00
blk-exec.c
blk-integrity.c
block: Allow empty integrity profile
2009-01-30 12:34:36 +01:00
blk-ioc.c
blk-map.c
[SCSI] block: make blk_rq_map_user take a NULL user-space buffer for WRITE
2009-01-02 11:10:35 -06:00
blk-merge.c
block: simplify I/O stat accounting
2009-04-24 08:54:21 +02:00
blk-settings.c
block: fix queue bounce limit setting
2009-04-22 08:35:09 +02:00
blk-softirq.c
generic-ipi: remove CSD_FLAG_WAIT
2009-02-25 14:13:44 +01:00
blk-sysfs.c
block: simplify I/O stat accounting
2009-04-24 08:54:21 +02:00
blk-tag.c
block/blk-tag.c: cleanup kernel-doc
2008-12-29 08:28:43 +01:00
blk-timeout.c
block: fix intermittent dm timeout based oops
2009-04-24 08:54:21 +02:00
blk.h
block: simplify I/O stat accounting
2009-04-24 08:54:21 +02:00
bsg.c
bsg: Remove bogus check against request_queue->max_sectors
2009-03-26 11:01:25 +01:00
cfq-iosched.c
cfq-iosched: cache prio_tree root in cfqq->p_root
2009-04-24 08:54:22 +02:00
cmd-filter.c
[SCSI] Make scsi.h independent of the rest of the scsi includes
2009-03-12 12:58:13 -05:00
compat_ioctl.c
block: don't take lock on changing ra_pages
2008-12-29 08:28:43 +01:00
deadline-iosched.c
block: get rid of elevator_t typedef
2008-12-29 08:29:50 +01:00
elevator.c
block: fix bad spelling of quiesce
2009-04-15 08:28:09 +02:00
genhd.c
block: include empty disks in /proc/diskstats
2009-04-22 08:35:10 +02:00
ioctl.c
block: Remove code handling bio_alloc failure with __GFP_WAIT
2009-04-15 12:10:12 +02:00
Kconfig
tracing/blktrace: move the tracing file to kernel/trace
2009-02-09 10:51:02 +01:00
Kconfig.iosched
Makefile
tracing/blktrace: move the tracing file to kernel/trace
2009-02-09 10:51:02 +01:00
noop-iosched.c
block: get rid of elevator_t typedef
2008-12-29 08:29:50 +01:00
scsi_ioctl.c
block: fix SG_IO vector request data length handling
2009-04-22 08:35:09 +02:00