• Jens Axboe's avatar
    [PATCH] fix elevator_linus accounting · 88c42974
    Jens Axboe authored
    elevator_linus is seriously broken wrt accounting. Marcelo recently took
    the patch to fix it in 2.4.20-pre, here's the 2.5 equiv.
    
    Right now, we account merges as costly and seeks as not. Only thing that
    prevents seek starvation is the aging scan. That is broken, very much
    so. This patch fixes that to account merges and inserts differently. A
    seek is ELV_LINUS_SEEK_COST more costly than a merge, currently that
    define is at '16'. Doing the math on a disk, this sort of makes sense.
    
    Defaults are read latency of 1024, which means 1024 merges or 64 seeks.
    Writes are double that.
    88c42974
elevator.c 10.1 KB