diff options
author | Hugh Dickins <hugh@veritas.com> | 2005-09-03 18:54:34 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@evo.osdl.org> | 2005-09-05 03:05:40 -0400 |
commit | 11d31886dbcb61039ed3789e583d21c6e70960fd (patch) | |
tree | ddaebfd35080a530a30c56587707c2c5ef452591 /include/linux/swap.h | |
parent | 4cd3bb10ff0b21b77b5a4cd13b4bd36694e054c4 (diff) |
[PATCH] swap: swap extent list is ordered
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: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/swap.h')
-rw-r--r-- | include/linux/swap.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/include/linux/swap.h b/include/linux/swap.h index bfe3e763ccf2..38f288475e67 100644 --- a/include/linux/swap.h +++ b/include/linux/swap.h | |||
@@ -116,8 +116,6 @@ enum { | |||
116 | 116 | ||
117 | /* | 117 | /* |
118 | * The in-memory structure used to track swap areas. | 118 | * The in-memory structure used to track swap areas. |
119 | * extent_list.prev points at the lowest-index extent. That list is | ||
120 | * sorted. | ||
121 | */ | 119 | */ |
122 | struct swap_info_struct { | 120 | struct swap_info_struct { |
123 | unsigned int flags; | 121 | unsigned int flags; |