diff options
author | Lee Schermerhorn <Lee.Schermerhorn@hp.com> | 2009-12-14 20:58:49 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-15 11:53:16 -0500 |
commit | d4906e1aa516cc965292b43b5a26122dd4344e7e (patch) | |
tree | 78c19149282e93200d90f380a40f1e1192354936 /mm/page_io.c | |
parent | 7509765a29cfb1a4c506c09b304aaf3b4111c653 (diff) |
swap: rework map_swap_page() again
Seems that page_io.c doesn't really need to know that page_private(page)
is the swp_entry 'val'. Rework map_swap_page() to do what its name says
and map a page to a page offset in the swap space.
The only other caller of map_swap_page() is internal to mm/swapfile.c and
it does want to map a swap entry to the 'sector'. So rename
map_swap_page() to map_swap_entry(), make it 'static' and and implement
map_swap_page() as a wrapper around that.
Signed-off-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
Cc: Hugh Dickins <hugh.dickins@tiscali.co.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/page_io.c')
-rw-r--r-- | mm/page_io.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/mm/page_io.c b/mm/page_io.c index afeed89a0a5d..a19af956ee1b 100644 --- a/mm/page_io.c +++ b/mm/page_io.c | |||
@@ -26,9 +26,7 @@ static struct bio *get_swap_bio(gfp_t gfp_flags, | |||
26 | 26 | ||
27 | bio = bio_alloc(gfp_flags, 1); | 27 | bio = bio_alloc(gfp_flags, 1); |
28 | if (bio) { | 28 | if (bio) { |
29 | swp_entry_t entry; | 29 | bio->bi_sector = map_swap_page(page, &bio->bi_bdev); |
30 | entry.val = page_private(page); | ||
31 | bio->bi_sector = map_swap_page(entry, &bio->bi_bdev); | ||
32 | bio->bi_sector <<= PAGE_SHIFT - 9; | 30 | bio->bi_sector <<= PAGE_SHIFT - 9; |
33 | bio->bi_io_vec[0].bv_page = page; | 31 | bio->bi_io_vec[0].bv_page = page; |
34 | bio->bi_io_vec[0].bv_len = PAGE_SIZE; | 32 | bio->bi_io_vec[0].bv_len = PAGE_SIZE; |