On Wed, Feb 22, 2023 at 08:58:28AM +0900, Minwoo Im wrote: > > +/* > > + * @bdev_in: source block device > > + * @pos_in: source offset > > + * @bdev_out: destination block device > > + * @pos_out: destination offset > > @len is missing here. > acked > > + * @end_io: end_io function to be called on completion of copy operation, > > + * for synchronous operation this should be NULL > > + * @private: end_io function will be called with this private data, should be > > + * NULL, if operation is synchronous in nature > > + * @gfp_mask: memory allocation flags (for bio_alloc) > > + * > > + * Returns the length of bytes copied or a negative error value > > + * > > + * Description: > > + * Copy source offset from source block device to destination block > > + * device. length of a source range cannot be zero. Max total length of > > + * copy is limited to MAX_COPY_TOTAL_LENGTH > > + */ > > +int blkdev_issue_copy(struct block_device *bdev_in, loff_t pos_in, > > + struct block_device *bdev_out, loff_t pos_out, size_t len, > > + cio_iodone_t end_io, void *private, gfp_t gfp_mask) >