Should NVME_SC_INVALID_NS be translated to BLK_STS_IOERR instead of BLK_STS_NOTSUPP so that multipath(both native and dm) can failover on the failure?

Sagi Grimberg sagi at grimberg.me
Sun Apr 7 15:28:10 PDT 2024



On 21/03/2024 5:06, Jirong Feng wrote:
>
>> Hey Jirong,
>>
>> We do not yet understand if this works for Linux nvme-mpath (which 
>> iirc requires a suggested host-side patch).
>> Once we understand that we can take the changes to mainline.
>>
> My last test(native multipath) was done on kernel 
> 4.18.0-147.3.1.el8_1, the result is ocassional failure.
>
> Refer to your previous reply to my question, this time I changed the 
> cntlid_min/cntlid_max range, making it single subsystem from different 
> targets.
> then I retested, here's the result:
>
> 1. on kernel 4.18.0-147.3.1.el8_1, the failure still occurs.
> 2. on kernel 6.6.0, no failure. (about 50 times)
> 3. on kernel 6.6.0 applying your host-side patch, no failure.

So essentially there is no need for the host side patch? interesting. 
Are you sure?

Can you please also try with mpath iopolicy=round-robin?

I'm asking because I cannot understand what is preventing this path from 
being selected again and
again for I/O....



More information about the Linux-nvme mailing list