Whamcloud - gitweb
LU-8056 lloop: fix bio_for_each_segment_all for newer kernels
[fs/lustre-release.git] / lustre / llite / lloop.c
index 475185a..be6a112 100644 (file)
@@ -193,13 +193,8 @@ static int do_bio_lustrebacked(struct lloop_device *lo, struct bio *head)
         struct cl_object     *obj = ll_i2info(inode)->lli_clob;
         pgoff_t               offset;
         int                   ret;
-#ifdef HAVE_BVEC_ITER
-       struct bvec_iter      iter;
-       struct bio_vec        bvec;
-#else
        int                   iter;
        struct bio_vec       *bvec;
-#endif
         int                   rw;
        size_t                page_count = 0;
         struct bio           *bio;
@@ -226,16 +221,9 @@ static int do_bio_lustrebacked(struct lloop_device *lo, struct bio *head)
 
 #ifdef HAVE_BVEC_ITER
                offset = (pgoff_t)(bio->bi_iter.bi_sector << 9) + lo->lo_offset;
-               bio_for_each_segment_all(bvec, bio, iter) {
-                       BUG_ON(bvec.bv_offset != 0);
-                       BUG_ON(bvec.bv_len != PAGE_CACHE_SIZE);
-
-                       pages[page_count] = bvec.bv_page;
-                       offsets[page_count] = offset;
-                       page_count++;
-                       offset += bvec.bv_len;
 #else
                offset = (pgoff_t)(bio->bi_sector << 9) + lo->lo_offset;
+#endif
                bio_for_each_segment_all(bvec, bio, iter) {
                        BUG_ON(bvec->bv_offset != 0);
                        BUG_ON(bvec->bv_len != PAGE_CACHE_SIZE);
@@ -244,7 +232,6 @@ static int do_bio_lustrebacked(struct lloop_device *lo, struct bio *head)
                        offsets[page_count] = offset;
                        page_count++;
                        offset += bvec->bv_len;
-#endif
                }
                LASSERT(page_count <= LLOOP_MAX_SEGMENTS);
        }