Maintain two queues which will be sorted in ascending order using Red Black Trees. When a disk request arrives and if the block number it refers to is greater than the block number of the current request being served add (merge) it to the first sorted queue or else add (merge) it to the second sorted queue. Keep on servicing the requests from the first request queue until it is empty after which switch over to the second queue and now reverse the roles of the two queues. Simple and Sweet. Many thanks for the awesome block I/O layer in the 2.6 kernel. - Vishal PS: Please note that I have not subscribed to the LKML. For comments please reply back to this email. -- Every passing minute is another chance to turn it all around.
Attachment:
linux-2.6.10-cscan.patch
Description: Binary data
- Follow-Ups:
- Re: CSCAN I/O scheduler for 2.6.10 kernel
- From: Matt Heler <[email protected]>
- Re: CSCAN I/O scheduler for 2.6.10 kernel
- Prev by Date: Re: [PATCH 16 of 16] ipath - kbuild infrastructure
- Next by Date: [PATCH] splice exports
- Previous by thread: [PATCH] Fix mm regression bug: nommu use compound page in slab allocator
- Next by thread: Re: CSCAN I/O scheduler for 2.6.10 kernel
- Index(es):