diff --git a/include/spdk/nvmf_transport.h b/include/spdk/nvmf_transport.h index e1e8c3e2b..ea93c14f3 100644 --- a/include/spdk/nvmf_transport.h +++ b/include/spdk/nvmf_transport.h @@ -449,7 +449,7 @@ void spdk_nvmf_request_exec_fabrics(struct spdk_nvmf_request *req); int spdk_nvmf_request_free(struct spdk_nvmf_request *req); int spdk_nvmf_request_complete(struct spdk_nvmf_request *req); void spdk_nvmf_request_zcopy_start(struct spdk_nvmf_request *req); -int spdk_nvmf_request_zcopy_end(struct spdk_nvmf_request *req, bool commit); +void spdk_nvmf_request_zcopy_end(struct spdk_nvmf_request *req, bool commit); static inline bool spdk_nvmf_request_using_zcopy(const struct spdk_nvmf_request *req) diff --git a/lib/nvmf/ctrlr.c b/lib/nvmf/ctrlr.c index a4179cb9f..9b31fdd83 100644 --- a/lib/nvmf/ctrlr.c +++ b/lib/nvmf/ctrlr.c @@ -3731,11 +3731,13 @@ spdk_nvmf_request_zcopy_start(struct spdk_nvmf_request *req) spdk_nvmf_request_exec(req); } -int +void spdk_nvmf_request_zcopy_end(struct spdk_nvmf_request *req, bool commit) { + assert(req->zcopy_phase == NVMF_ZCOPY_PHASE_EXECUTE); req->zcopy_phase = NVMF_ZCOPY_PHASE_END_PENDING; - return nvmf_bdev_ctrlr_zcopy_end(req, commit); + + nvmf_bdev_ctrlr_zcopy_end(req, commit); } int diff --git a/lib/nvmf/ctrlr_bdev.c b/lib/nvmf/ctrlr_bdev.c index 01faece8d..91d940c20 100644 --- a/lib/nvmf/ctrlr_bdev.c +++ b/lib/nvmf/ctrlr_bdev.c @@ -909,7 +909,7 @@ nvmf_bdev_ctrlr_zcopy_end_complete(struct spdk_bdev_io *bdev_io, bool success, spdk_nvmf_request_complete(req); } -int +void nvmf_bdev_ctrlr_zcopy_end(struct spdk_nvmf_request *req, bool commit) { int rc __attribute__((unused)); @@ -918,6 +918,4 @@ nvmf_bdev_ctrlr_zcopy_end(struct spdk_nvmf_request *req, bool commit) /* The only way spdk_bdev_zcopy_end() can fail is if we pass a bdev_io type that isn't ZCOPY */ assert(rc == 0); - - return SPDK_NVMF_REQUEST_EXEC_STATUS_ASYNCHRONOUS; } diff --git a/lib/nvmf/nvmf_internal.h b/lib/nvmf/nvmf_internal.h index 56b7bb181..dcc03db4b 100644 --- a/lib/nvmf/nvmf_internal.h +++ b/lib/nvmf/nvmf_internal.h @@ -498,12 +498,7 @@ int nvmf_bdev_ctrlr_zcopy_start(struct spdk_bdev *bdev, * * \param req The NVMe-oF request * \param commit Flag indicating whether the buffers should be committed - * - * \return SPDK_NVMF_REQUEST_EXEC_STATUS_COMPLETE if the command was completed immediately or - * SPDK_NVMF_REQUEST_EXEC_STATUS_ASYNCHRONOUS if the command was submitted and will be - * completed asynchronously. Asynchronous completions are notified through - * spdk_nvmf_request_complete(). */ -int nvmf_bdev_ctrlr_zcopy_end(struct spdk_nvmf_request *req, bool commit); +void nvmf_bdev_ctrlr_zcopy_end(struct spdk_nvmf_request *req, bool commit); #endif /* __NVMF_INTERNAL_H__ */ diff --git a/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c b/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c index 3160afb47..499b0ee94 100644 --- a/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c +++ b/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c @@ -294,12 +294,11 @@ nvmf_bdev_ctrlr_zcopy_start(struct spdk_bdev *bdev, return SPDK_NVMF_REQUEST_EXEC_STATUS_COMPLETE; } -int +void nvmf_bdev_ctrlr_zcopy_end(struct spdk_nvmf_request *req, bool commit) { req->zcopy_bdev_io = NULL; spdk_nvmf_request_complete(req); - return SPDK_NVMF_REQUEST_EXEC_STATUS_COMPLETE; } static void diff --git a/test/unit/lib/nvmf/fc.c/fc_ut.c b/test/unit/lib/nvmf/fc.c/fc_ut.c index d3f13f7e0..0871c3909 100644 --- a/test/unit/lib/nvmf/fc.c/fc_ut.c +++ b/test/unit/lib/nvmf/fc.c/fc_ut.c @@ -133,7 +133,7 @@ DEFINE_STUB_V(rte_hash_free, (struct rte_hash *h)); DEFINE_STUB(nvmf_fc_lld_port_add, int, (struct spdk_nvmf_fc_port *fc_port), 0); DEFINE_STUB(nvmf_fc_lld_port_remove, int, (struct spdk_nvmf_fc_port *fc_port), 0); -DEFINE_STUB(spdk_nvmf_request_zcopy_end, int, (struct spdk_nvmf_request *req, bool commit), 0); +DEFINE_STUB_V(spdk_nvmf_request_zcopy_end, (struct spdk_nvmf_request *req, bool commit)); const char * spdk_nvme_transport_id_trtype_str(enum spdk_nvme_transport_type trtype) diff --git a/test/unit/lib/nvmf/tcp.c/tcp_ut.c b/test/unit/lib/nvmf/tcp.c/tcp_ut.c index 0744fe000..930cea3b8 100644 --- a/test/unit/lib/nvmf/tcp.c/tcp_ut.c +++ b/test/unit/lib/nvmf/tcp.c/tcp_ut.c @@ -198,10 +198,7 @@ DEFINE_STUB(nvmf_bdev_ctrlr_zcopy_start, struct spdk_nvmf_request *req), 0); -DEFINE_STUB(nvmf_bdev_ctrlr_zcopy_end, - int, - (struct spdk_nvmf_request *req, bool commit), - 0); +DEFINE_STUB_V(nvmf_bdev_ctrlr_zcopy_end, (struct spdk_nvmf_request *req, bool commit)); DEFINE_STUB_V(spdk_nvmf_request_free_buffers, (struct spdk_nvmf_request *req, struct spdk_nvmf_transport_poll_group *group,