OSDN Git Service

nvmet-tcp: Don't check data_len in nvmet_tcp_map_data()
authorLogan Gunthorpe <logang@deltatee.com>
Wed, 23 Oct 2019 16:35:39 +0000 (10:35 -0600)
committerJens Axboe <axboe@kernel.dk>
Mon, 4 Nov 2019 17:56:41 +0000 (10:56 -0700)
None of the other transports check data_len which is verified
in core code. The function should instead check that the sgl length
is non-zero.

Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/target/tcp.c

index d535080..1e2d92f 100644 (file)
@@ -320,7 +320,7 @@ static int nvmet_tcp_map_data(struct nvmet_tcp_cmd *cmd)
        struct nvme_sgl_desc *sgl = &cmd->req.cmd->common.dptr.sgl;
        u32 len = le32_to_cpu(sgl->length);
 
-       if (!cmd->req.data_len)
+       if (!len)
                return 0;
 
        if (sgl->type == ((NVME_SGL_FMT_DATA_DESC << 4) |