aboutsummaryrefslogtreecommitdiffstats
path: root/fs/direct-io.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/direct-io.c')
-rw-r--r--fs/direct-io.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/direct-io.c b/fs/direct-io.c
index f853263cf74f..38484b08a39a 100644
--- a/fs/direct-io.c
+++ b/fs/direct-io.c
@@ -441,8 +441,8 @@ static struct bio *dio_await_one(struct dio *dio)
441static int dio_bio_complete(struct dio *dio, struct bio *bio) 441static int dio_bio_complete(struct dio *dio, struct bio *bio)
442{ 442{
443 const int uptodate = test_bit(BIO_UPTODATE, &bio->bi_flags); 443 const int uptodate = test_bit(BIO_UPTODATE, &bio->bi_flags);
444 struct bio_vec *bvec = bio->bi_io_vec; 444 struct bio_vec *bvec;
445 int page_no; 445 unsigned i;
446 446
447 if (!uptodate) 447 if (!uptodate)
448 dio->io_error = -EIO; 448 dio->io_error = -EIO;
@@ -450,8 +450,8 @@ static int dio_bio_complete(struct dio *dio, struct bio *bio)
450 if (dio->is_async && dio->rw == READ) { 450 if (dio->is_async && dio->rw == READ) {
451 bio_check_pages_dirty(bio); /* transfers ownership */ 451 bio_check_pages_dirty(bio); /* transfers ownership */
452 } else { 452 } else {
453 for (page_no = 0; page_no < bio->bi_vcnt; page_no++) { 453 bio_for_each_segment_all(bvec, bio, i) {
454 struct page *page = bvec[page_no].bv_page; 454 struct page *page = bvec->bv_page;
455 455
456 if (dio->rw == READ && !PageCompound(page)) 456 if (dio->rw == READ && !PageCompound(page))
457 set_page_dirty_lock(page); 457 set_page_dirty_lock(page);