[PATCH 0/7] [RFC] iosched: make a difference between read/readahead requests

From: Fengguang Wu
Date: Fri Jun 23 2006 - 22:41:45 EST


Hi Jens,

This patchset does two jobs:
1) do io schedule differently on READ/READA requests.
- to help improve I/O latency and throughput
2) do notification/action on READA => READ events
- to make the elevators better informed
- to prevent the priority inversion problem
- also brings some CPU overheads*
(*) I'm not able to provide the numbers at the moment.
But sure for the next time.


The patches come in two groups:

1) explicitly schedule READA requests
Note: currently only the deadline elevator is touched.

[PATCH 1/7] iosched: introduce WRITEA
[PATCH 2/7] iosched: introduce parameter deadline.reada_expire
[PATCH 3/7] iosched: introduce deadline_add_drq_fifo()
[PATCH 4/7] iosched: submit READA requests on possible readahead code path

2) notify/act on pending reads
Naming issue: how about pending_read/need_page/... for kick_page?

[PATCH 5/7] iosched: introduce elv_kick_page()
[PATCH 6/7] iosched: run elv_kick_page() on sync read
[PATCH 7/7] iosched: introduce deadline_kick_page()

Most overheads should be in functions deadline_kick_page() and
deadline_add_drq_fifo(). I'll explore the details later.

Any comments are welcome, thanks.

Fengguang Wu
--
Dept. Automation University of Science and Technology of China
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/