[PATCH V3 7/8] nvme: pci: recover controller reliably
jianchao.wang
jianchao.w.wang at oracle.com
Fri May 4 01:28:23 PDT 2018
Hi ming
On 05/04/2018 04:02 PM, Ming Lei wrote:
>> nvme_error_handler should invoke nvme_reset_ctrl instead of introducing another interface.
>> Then it is more convenient to ensure that there will be only one resetting instance running.
>>
> But as you mentioned above, reset_work has to be splitted into two
> contexts for handling IO timeout during wait_freeze in reset_work,
> so single instance of nvme_reset_ctrl() may not work well.
I mean the EH kthread and the reset_work which both could reset the ctrl instead of
the pre and post rest context.
Honestly, I suspect a bit that whether it is worthy to try to recover from [1].
The Eh kthread solution could make things easier, but the codes for recovery from [1] has
made code really complicated. It is more difficult to unify the nvme-pci, rdma and fc.
How about just fail the resetting as the Keith's solution ?
[1] io timeout when nvme_reset_work or the new nvme_post_reset_dev invoke nvme_wait_freeze.
Thanks
Jianchao
More information about the Linux-nvme
mailing list