[PATCH] nvme-fabrics: use reserved tag for reg read/write command

Chaitanya Kulkarni chaitanyak at nvidia.com
Mon Apr 29 20:46:59 PDT 2024


On 4/29/2024 7:17 PM, brookxu.cn wrote:
> From: Chunguang Xu <chunguang.xu at shopee.com>
> 
> In some scenarios, if too many commands are issued by nvme command in
> the same time by user tasks, this may exhaust all tags of admin_q. If
> a reset (nvme reset or IO timeout) occurs before these commands finish,
> reconnect routine may fail to update nvme regs due to insufficient tags,
> which will cause kernel hang forever. In order to workaround this issue,
> maybe we can let reg_read32()/reg_read64()/reg_write32() use reserved
> tags. This maybe safe for nvmf:
> 
> 1. For the disable ctrl path,  we will not issue connect command
> 2. For the enable ctrl / fw activate path, since connect and reg_xx()
>     are called serially.
> 

Given the complexity of the scenario described above, is it possible to 
write a script for this scenario that will trigger this and submit to 
blktest ? not that this is a blocker to get this patch reviewed, but 
believe it is needed in long run, WDYT ?

> So the reserved tags may still be enough while reg_xx() use reserved tags.
> 
> Signed-off-by: Chunguang Xu <chunguang.xu at shopee.com>
> ---

-ck




More information about the Linux-nvme mailing list