IO scheduler elevator with erase block support
Make the IO scheduler elevator priorities consecutive writes within the same erase block.
Blueprint information
- Status:
- Complete
- Approver:
- Deepak Saxena
- Priority:
- Medium
- Drafter:
- None
- Direction:
- Needs approval
- Assignee:
- Venkatraman S
- Definition:
- Obsolete
- Series goal:
- Accepted for devtrack
- Implementation:
-
Slow progress
- Milestone target:
-
backlog
- Started by
- Venkatraman S
- Completed by
- Deepak Saxena
Related branches
Related bugs
Sprints
Whiteboard
Headline: Make the IO scheduler elevator priorities consecutive writes within the same erase block.
Acceptance: Integrate the patches upstream and verify that the read requests can be scheduled out of order, never merge write requests across erase block boundaries, ensure consecutive writes within one erase block are done in ascending order, all writes within one erase block are issued at once, ignore proximity of writes beyond erase block boundaries.
Work items for 11.11
Integrate that patch upstream: TODO
Based on this flag...
...let all read requests be scheduled out of order: TODO
...never merge write requests across erase block boundaries: TODO
...ensure consecutive writes within one erase block are done in ascending order: TODO
...issue all writes within one erase block at once: TODO
...ignore proximity of writes beyond erase block boundaries: TODO
Integrate all those patches upstream: TODO
Notes from 12/0/11 meeting:
Drop work with CFQ scheduler and implement with a new scheduler based on NOOP for evaluation purposes: TODO
Do performance benchmarks: CFQ vs NOOP vs Optimized NOOP
(If worse than CFQ, then drop it)
(Arnd: Deadline might be a better option than NOOP, need to look into it)
Work Items
Work items:
Add a common infrastructure for setting erase block sizes on all block devices: DONE
Add a flag for cheap flash drives, similar to non-rotational: DONE
Disallow merge if the combined requests will cross a erase block boundary: INPROGRESS
Dependency tree

* Blueprints in grey have been implemented.