block: move bio_list_copy_data to pktcdvd
authorChristoph Hellwig <hch@lst.de>
Mon, 12 Apr 2021 13:46:58 +0000 (15:46 +0200)
committerJens Axboe <axboe@kernel.dk>
Mon, 12 Apr 2021 15:19:58 +0000 (09:19 -0600)
bio_list_copy_data is only used by pktcdvd, so move it there.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20210412134658.2623190-2-hch@lst.de
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/bio.c
drivers/block/pktcdvd.c
include/linux/bio.h

index 0fecb80872c23fa45cb30b5a110e89d20fb0df21..303298996afeb418293f8548454881c71ef8b9bb 100644 (file)
@@ -1221,43 +1221,6 @@ void bio_copy_data(struct bio *dst, struct bio *src)
 }
 EXPORT_SYMBOL(bio_copy_data);
 
-/**
- * bio_list_copy_data - copy contents of data buffers from one chain of bios to
- * another
- * @src: source bio list
- * @dst: destination bio list
- *
- * Stops when it reaches the end of either the @src list or @dst list - that is,
- * copies min(src->bi_size, dst->bi_size) bytes (or the equivalent for lists of
- * bios).
- */
-void bio_list_copy_data(struct bio *dst, struct bio *src)
-{
-       struct bvec_iter src_iter = src->bi_iter;
-       struct bvec_iter dst_iter = dst->bi_iter;
-
-       while (1) {
-               if (!src_iter.bi_size) {
-                       src = src->bi_next;
-                       if (!src)
-                               break;
-
-                       src_iter = src->bi_iter;
-               }
-
-               if (!dst_iter.bi_size) {
-                       dst = dst->bi_next;
-                       if (!dst)
-                               break;
-
-                       dst_iter = dst->bi_iter;
-               }
-
-               bio_copy_data_iter(dst, &dst_iter, src, &src_iter);
-       }
-}
-EXPORT_SYMBOL(bio_list_copy_data);
-
 void bio_free_pages(struct bio *bio)
 {
        struct bio_vec *bvec;
index fc4b0f1aa86dfb71ac4223113040b68bd100a9d6..bd35565851224fe4b1b09388df4c8066716639f5 100644 (file)
@@ -1199,6 +1199,42 @@ try_next_bio:
        return 1;
 }
 
+/**
+ * bio_list_copy_data - copy contents of data buffers from one chain of bios to
+ * another
+ * @src: source bio list
+ * @dst: destination bio list
+ *
+ * Stops when it reaches the end of either the @src list or @dst list - that is,
+ * copies min(src->bi_size, dst->bi_size) bytes (or the equivalent for lists of
+ * bios).
+ */
+static void bio_list_copy_data(struct bio *dst, struct bio *src)
+{
+       struct bvec_iter src_iter = src->bi_iter;
+       struct bvec_iter dst_iter = dst->bi_iter;
+
+       while (1) {
+               if (!src_iter.bi_size) {
+                       src = src->bi_next;
+                       if (!src)
+                               break;
+
+                       src_iter = src->bi_iter;
+               }
+
+               if (!dst_iter.bi_size) {
+                       dst = dst->bi_next;
+                       if (!dst)
+                               break;
+
+                       dst_iter = dst->bi_iter;
+               }
+
+               bio_copy_data_iter(dst, &dst_iter, src, &src_iter);
+       }
+}
+
 /*
  * Assemble a bio to write one packet and queue the bio for processing
  * by the underlying block device.
index a8021d79d45d1f3c6ce8c2376505d600939a0545..a0b4cfdf62a434f0ba287f32f6fd39e9c321a181 100644 (file)
@@ -483,7 +483,6 @@ extern void bio_check_pages_dirty(struct bio *bio);
 extern void bio_copy_data_iter(struct bio *dst, struct bvec_iter *dst_iter,
                               struct bio *src, struct bvec_iter *src_iter);
 extern void bio_copy_data(struct bio *dst, struct bio *src);
-extern void bio_list_copy_data(struct bio *dst, struct bio *src);
 extern void bio_free_pages(struct bio *bio);
 void bio_truncate(struct bio *bio, unsigned new_size);
 void guard_bio_eod(struct bio *bio);