Spdk/test/unit/lib/bdev
Shuhei Matsumoto f048f3d3d3 lib/bdev: spdk_bdev_abort supports the case when QoS is enabled
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>
2020-06-08 09:28:27 +00:00
..
bdev_ocssd.c lib/thread: Wait until thread_is_exited() is true by thread_poll() after thread_exit() 2020-04-08 06:43:05 +00:00
bdev_zone.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
bdev.c lib/bdev: Add spdk_bdev_abort API 2020-06-08 09:28:27 +00:00
compress.c lib/thread: Wait until thread_is_exited() is true by thread_poll() after thread_exit() 2020-04-08 06:43:05 +00:00
crypto.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
gpt module/bdev_gpt: remove spdk prefix from static/internal functions. 2020-05-15 07:58:03 +00:00
mt lib/bdev: spdk_bdev_abort supports the case when QoS is enabled 2020-06-08 09:28:27 +00:00
part.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
pmem module/bdev_pmem: remove spdk prefix from static/internal functions. 2020-05-15 07:58:03 +00:00
raid module/raid_bdev: remove spdk prefix from static functions. 2020-05-15 07:58:03 +00:00
scsi_nvme.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
vbdev_lvol.c lvol: remove lvol_task structure 2020-04-24 15:45:21 +00:00
vbdev_zone_block.c lib/thread: Wait until thread_is_exited() is true by thread_poll() after thread_exit() 2020-04-08 06:43:05 +00:00
Makefile ut/raid: put bdev_raid.c into 'raid' subdirectory 2020-02-20 14:40:19 +00:00