Messages in this thread | | | Date | Mon, 16 Nov 1998 22:01:20 GMT | From | "Stephen C. Tweedie" <> | Subject | Re: elevator algorithm bug in ll_rw_blk.c |
| |
Hi,
On Sun, 15 Nov 1998 14:13:31 -0500, Chip Salzenberg <chip@perlsupport.com> said:
> According to Alan Cox: >> Chip: >> > But that's a *one-way* elevator. Ideal elevators are two-way, >> > aren't they? >> >> If you go for the shortest movement alone you starve the edges of the disks.
> I said "two-way", not "shortest movement".
Two-way elevators _do_ have this problem. A block in the middle cylinder of the disk gets serviced twice per full two-way pass, once in each direction. Maximum wait time is half a pass; average is a quarter. For a block at the edge of the disk, it will get serviced only when the two-way pass approaches close to the edge of the disk, and will not get another chance for a full pass, average wait half a pass.
It's not a total stavation issue, but it _does_ give you a significant unfairness.
--Stephen
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |