crash at nvme_tcp_init_iter with header digest enabled

Sagi Grimberg sagi at grimberg.me
Mon Sep 5 03:53:00 PDT 2022


>>> diff --git a/drivers/nvme/host/tcp.c b/drivers/nvme/host/tcp.c
>>> index e82dcfcda29b..3e3ebde4eff5 100644
>>> --- a/drivers/nvme/host/tcp.c
>>> +++ b/drivers/nvme/host/tcp.c
>>> @@ -1229,7 +1229,7 @@ static void nvme_tcp_io_work(struct work_struct *w)
>>>                   else if (unlikely(result < 0))
>>>                           return;
>>>
>>> -               if (!pending)
>>> +               if (!pending || !queue->rd_enabled)
>>>                           return;
>>>
>>>           } while (!time_after(jiffies, deadline)); /* quota is exhausted */
>>> -- 
>>
>> Daniel, any input here?
> 
> I haven't heard anything from our customer yet. Let me ping them again.

Most likely it should address the issue, but the proposed patch is a fix
regardless.

Will send it as a proper patch, would love to get your reviewed-by, and
when you hear from your customer, you can add Tested-by tag.



More information about the Linux-nvme mailing list