Re: [PATCH v9 08/12] nvmet-tcp: don't check data_len in nvmet_tcp_map_data()
From: Christoph Hellwig <hch@lst.de>
Date: 2019-10-10 11:07:44
Also in:
linux-fsdevel, linux-nvme, lkml
From: Christoph Hellwig <hch@lst.de>
Date: 2019-10-10 11:07:44
Also in:
linux-fsdevel, linux-nvme, lkml
On Wed, Oct 09, 2019 at 01:25:26PM -0600, Logan Gunthorpe wrote:
With passthru, the data_len is no longer guaranteed to be set for all requests. Therefore, we should not check for it to be non-zero. Instead check if the SGL length is zero and map when appropriate. None of the other transports check data_len which is verified in core code. Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
I think the issue here is deeper. Yes, this patch is correct, but nvmet-tcp has another use of req.data_len in nvmet_tcp_handle_req_failure, which looks completely bogus. Please try to audit that as well and send out fixes to the list separately from this series, as both look like potentially serious bugs.