OSDN Git Service

nvmet-tcp: set MSG_EOR if we send last payload in the batch
authorSagi Grimberg <sagi@grimberg.me>
Wed, 13 May 2020 01:01:43 +0000 (18:01 -0700)
committerChristoph Hellwig <hch@lst.de>
Wed, 27 May 2020 05:12:37 +0000 (07:12 +0200)
when trying to send the pdu data digest, we should set this
flag.

Reported-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/target/tcp.c

index c08aec6..f8dd69f 100644 (file)
@@ -644,6 +644,8 @@ static int nvmet_try_send_ddgst(struct nvmet_tcp_cmd *cmd, bool last_in_batch)
 
        if (!last_in_batch && cmd->queue->send_list_len)
                msg.msg_flags |= MSG_MORE;
+       else
+               msg.msg_flags |= MSG_EOR;
 
        ret = kernel_sendmsg(queue->sock, &msg, &iov, 1, iov.iov_len);
        if (unlikely(ret <= 0))