• H
    [PATCH] swap: swap extent list is ordered · 11d31886
    Hugh Dickins 提交于
    There are several comments that swap's extent_list.prev points to the lowest
    extent: that's not so, it's extent_list.next which points to it, as you'd
    expect.  And a couple of loops in add_swap_extent which go all the way through
    the list, when they should just add to the other end.
    
    Fix those up, and let map_swap_page search the list forwards: profiles shows
    it to be twice as quick that way - because prefetch works better on how the
    structs are typically kmalloc'ed?  or because usually more is written to than
    read from swap, and swap is allocated ascendingly?
    Signed-off-by: NHugh Dickins <hugh@veritas.com>
    Signed-off-by: NAndrew Morton <akpm@osdl.org>
    Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
    11d31886
swapfile.c 40.9 KB