diff options
Diffstat (limited to 'kernel/power/swap.c')
| -rw-r--r-- | kernel/power/swap.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/power/swap.c b/kernel/power/swap.c index 6da14358537c..505f319e489c 100644 --- a/kernel/power/swap.c +++ b/kernel/power/swap.c | |||
| @@ -60,6 +60,7 @@ static struct block_device *resume_bdev; | |||
| 60 | static int submit(int rw, pgoff_t page_off, struct page *page, | 60 | static int submit(int rw, pgoff_t page_off, struct page *page, |
| 61 | struct bio **bio_chain) | 61 | struct bio **bio_chain) |
| 62 | { | 62 | { |
| 63 | const int bio_rw = rw | (1 << BIO_RW_SYNCIO) | (1 << BIO_RW_UNPLUG); | ||
| 63 | struct bio *bio; | 64 | struct bio *bio; |
| 64 | 65 | ||
| 65 | bio = bio_alloc(__GFP_WAIT | __GFP_HIGH, 1); | 66 | bio = bio_alloc(__GFP_WAIT | __GFP_HIGH, 1); |
| @@ -80,7 +81,7 @@ static int submit(int rw, pgoff_t page_off, struct page *page, | |||
| 80 | bio_get(bio); | 81 | bio_get(bio); |
| 81 | 82 | ||
| 82 | if (bio_chain == NULL) { | 83 | if (bio_chain == NULL) { |
| 83 | submit_bio(rw | (1 << BIO_RW_SYNC), bio); | 84 | submit_bio(bio_rw, bio); |
| 84 | wait_on_page_locked(page); | 85 | wait_on_page_locked(page); |
| 85 | if (rw == READ) | 86 | if (rw == READ) |
| 86 | bio_set_pages_dirty(bio); | 87 | bio_set_pages_dirty(bio); |
| @@ -90,7 +91,7 @@ static int submit(int rw, pgoff_t page_off, struct page *page, | |||
| 90 | get_page(page); /* These pages are freed later */ | 91 | get_page(page); /* These pages are freed later */ |
| 91 | bio->bi_private = *bio_chain; | 92 | bio->bi_private = *bio_chain; |
| 92 | *bio_chain = bio; | 93 | *bio_chain = bio; |
| 93 | submit_bio(rw | (1 << BIO_RW_SYNC), bio); | 94 | submit_bio(bio_rw, bio); |
| 94 | } | 95 | } |
| 95 | return 0; | 96 | return 0; |
| 96 | } | 97 | } |
