]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - include/linux/bio.h
block: add a lower-level bio_add_page interface
[mirror_ubuntu-bionic-kernel.git] / include / linux / bio.h
index a98c6ac575cfd83805d9820563300110cca277c5..3440870712d4a77a5e4a031ac52101cf811476d2 100644 (file)
@@ -123,6 +123,11 @@ static inline void *bio_data(struct bio *bio)
        return NULL;
 }
 
+static inline bool bio_full(struct bio *bio)
+{
+       return bio->bi_vcnt >= bio->bi_max_vecs;
+}
+
 /*
  * will die
  */
@@ -447,6 +452,10 @@ void bio_chain(struct bio *, struct bio *);
 extern int bio_add_page(struct bio *, struct page *, unsigned int,unsigned int);
 extern int bio_add_pc_page(struct request_queue *, struct bio *, struct page *,
                           unsigned int, unsigned int);
+bool __bio_try_merge_page(struct bio *bio, struct page *page,
+               unsigned int len, unsigned int off);
+void __bio_add_page(struct bio *bio, struct page *page,
+               unsigned int len, unsigned int off);
 int bio_iov_iter_get_pages(struct bio *bio, struct iov_iter *iter);
 struct rq_map_data;
 extern struct bio *bio_map_user_iov(struct request_queue *,