From 127cfac0204b18aa6d98b18e87bad8e1219a8d45 Mon Sep 17 00:00:00 2001 From: Shuhei Matsumoto Date: Thu, 30 May 2019 08:18:40 +0900 Subject: [PATCH] nvmf/tcp: Use nvme_tcp_pdu_set_data_buf for incapsule data Previously we had used nvme_tcp_pdu_set_data() for incapsule data. This patch changes handling incapsule data to use nvme_tcp_pdu_set_data_buf() as same as H2C and C2H. This unification is necessary to support DIF insert and strip in NVMe/TCP target later. Change-Id: I02cae8db94e51cf79a354dd64ad45f0e491ec08e Signed-off-by: Shuhei Matsumoto Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/455920 Tested-by: SPDK CI Jenkins Reviewed-by: Darek Stojaczyk Reviewed-by: Changpeng Liu Reviewed-by: Ziye Yang --- lib/nvmf/tcp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/nvmf/tcp.c b/lib/nvmf/tcp.c index 3633aa9d5..101ee3eae 100644 --- a/lib/nvmf/tcp.c +++ b/lib/nvmf/tcp.c @@ -2323,7 +2323,8 @@ spdk_nvmf_tcp_pdu_set_buf_from_req(struct spdk_nvmf_tcp_qpair *tqpair, SPDK_DEBUGLOG(SPDK_LOG_NVMF_TCP, "Not need to send r2t for tcp_req(%p) on tqpair=%p\n", tcp_req, tqpair); /* No need to send r2t, contained in the capsuled data */ - nvme_tcp_pdu_set_data(pdu, tcp_req->req.data, tcp_req->req.length); + nvme_tcp_pdu_set_data_buf(pdu, tcp_req->req.iov, tcp_req->req.iovcnt, + 0, tcp_req->req.length); spdk_nvmf_tcp_qpair_set_recv_state(tqpair, NVME_TCP_PDU_RECV_STATE_AWAIT_PDU_PAYLOAD); spdk_nvmf_tcp_req_set_state(tcp_req, TCP_REQUEST_STATE_TRANSFERRING_HOST_TO_CONTROLLER); }