[PATCH v2] nvme: Avoid reset work on watchdog timer function during error recovery

Jens Axboe axboe at fb.com
Tue Apr 12 22:22:48 PDT 2016


On 04/12/2016 05:32 PM, Guilherme G. Piccoli wrote:
> This patch adds a check on nvme_watchdog_timer() function to avoid the
> call to reset_work() when an error recovery process is ongoing on
> controller. The check is made by looking at pci_channel_offline()
> result.
>
> If we don't check for this on nvme_watchdog_timer(), error recovery
> mechanism can't recover well, because reset_work() won't be able to
> do its job (since we're in the middle of an error) and so the
> controller is removed from the system before error recovery mechanism
> can perform slot reset (which would allow the adapter to recover).
>
> In this patch we also have splitted the huge condition expression in
> nvme_watchdog_timer() by introducing an auxiliary function to help
> make the code more readable.

Added for 4.7, thanks.

-- 
Jens Axboe




More information about the Linux-nvme mailing list