Zero-copy requests are kept on the outstanding queue for the whole duration of the request - from the initial zcopy_start submission to the completion of zcopy_end. This means, that there's a period in which a request doesn't wait for a completion from the bdev layer, but is still on the oustanding queue (after zcopy_start callback, before zcopy_end submit). If a qpair gets disconnected while a request is in this state, we need to manually force its completion, as otherwise it might hang indefinitely (e.g. waiting for host data). Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I53731b8e363b725efa564ca3c7d89b46f5fb2a24 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10793 Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> |
||
---|---|---|
.. | ||
fc_ut.c | ||
Makefile |