diff options
Diffstat (limited to 'mm/page_io.c')
-rw-r--r-- | mm/page_io.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/mm/page_io.c b/mm/page_io.c index cd52b9cc169b..e93f1a4cacd7 100644 --- a/mm/page_io.c +++ b/mm/page_io.c | |||
@@ -347,7 +347,7 @@ out: | |||
347 | return ret; | 347 | return ret; |
348 | } | 348 | } |
349 | 349 | ||
350 | int swap_readpage(struct page *page, bool do_poll) | 350 | int swap_readpage(struct page *page, bool synchronous) |
351 | { | 351 | { |
352 | struct bio *bio; | 352 | struct bio *bio; |
353 | int ret = 0; | 353 | int ret = 0; |
@@ -355,7 +355,7 @@ int swap_readpage(struct page *page, bool do_poll) | |||
355 | blk_qc_t qc; | 355 | blk_qc_t qc; |
356 | struct gendisk *disk; | 356 | struct gendisk *disk; |
357 | 357 | ||
358 | VM_BUG_ON_PAGE(!PageSwapCache(page), page); | 358 | VM_BUG_ON_PAGE(!PageSwapCache(page) && !synchronous, page); |
359 | VM_BUG_ON_PAGE(!PageLocked(page), page); | 359 | VM_BUG_ON_PAGE(!PageLocked(page), page); |
360 | VM_BUG_ON_PAGE(PageUptodate(page), page); | 360 | VM_BUG_ON_PAGE(PageUptodate(page), page); |
361 | if (frontswap_load(page) == 0) { | 361 | if (frontswap_load(page) == 0) { |
@@ -403,7 +403,7 @@ int swap_readpage(struct page *page, bool do_poll) | |||
403 | count_vm_event(PSWPIN); | 403 | count_vm_event(PSWPIN); |
404 | bio_get(bio); | 404 | bio_get(bio); |
405 | qc = submit_bio(bio); | 405 | qc = submit_bio(bio); |
406 | while (do_poll) { | 406 | while (synchronous) { |
407 | set_current_state(TASK_UNINTERRUPTIBLE); | 407 | set_current_state(TASK_UNINTERRUPTIBLE); |
408 | if (!READ_ONCE(bio->bi_private)) | 408 | if (!READ_ONCE(bio->bi_private)) |
409 | break; | 409 | break; |