+static int bio_add_zone_append_page_int(struct bio *bio, struct page *page,
+ unsigned int len, unsigned int offset, bool *same_page)
+{
+ struct block_device *bdev = bio->bi_bdev;
+
+ if (WARN_ON_ONCE(bio_op(bio) != REQ_OP_ZONE_APPEND))
+ return 0;
+ if (WARN_ON_ONCE(!bdev_is_zoned(bdev)))
+ return 0;
+ return bio_add_hw_page(bdev_get_queue(bdev), bio, page, len, offset,
+ bdev_max_zone_append_sectors(bdev), same_page);
+}