+25
−2
Loading
When the target I/O is controlled by QoS, the abort request is submitted on the same channel that the target I/O is submitted. By using this, add a helper function bdev_abort_queued_io(), and change _bdev_io_submit() to call bdev_abort_queued_io(), and call _bdev_io_complete_in_submit() with success if bdev_abort_queued_io() returned true when QoS is enabled on the corresponding channel. Add necessary unit test together. Update unit test accordingly, especially, update stub_submit_request() to abort the matched I/O, update io_during_io_done() because we need to know not boolean but the exact completion status now, and update basic_qos() to reset the rate limit to test the abort I/O feature. Signed-off-by:Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: I16ca21e7c32cabfdce5d0e5c27a8af8bb00f11c5 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2230 Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Community-CI: Broadcom CI Reviewed-by:
Jim Harris <james.r.harris@intel.com> Reviewed-by:
Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by:
Ben Walker <benjamin.walker@intel.com>