f66aea7fc3
Add a bdev_io pointer to struct bdevperf_task. In bdevperf_zcopy_get_buf_complete() which is the callback to spdk_bdev_zcopy_start(), bdev_io is saved into the current task. Then bdevperf_submit_task() will call spdk_bdev_zcopy_end() by using the saved bdev_io. Besides, when spdk_bdev_zcopy_start() is called with populate=false, increment target->current_queue_depth when it completes successfully, and do not increment target->current_queue_depth when the corresponding spdk_bdev_zcopy_end() is called with commit=true. The reason is that IO processing is already started when spdk_bdev_zcopy_start() is called. The next patch will use zcopy APIs for write I/O with verify or reset cases. Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: I12f3b1ccac726abe345a64f06e33d65d2a3538fd Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/467900 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Paul Luse <paul.e.luse@intel.com>