diff options
author | Sagi Grimberg <sagi@grimberg.me> | 2018-11-21 15:17:37 -0800 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2018-11-30 17:23:23 +0100 |
commit | f6c8e432cb0479255322c5d0335b9f1699a0270c (patch) | |
tree | cf7557ac6052f56b3d3f88892643f7d0d75c19be /drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c | |
parent | 14a1336e6fff47dd1028b484d6c802105c58e2ee (diff) |
nvme: flush namespace scanning work just before removing namespaces
nvme_stop_ctrl can be called also for reset flow and there is no need to
flush the scan_work as namespaces are not being removed. This can cause
deadlock in rdma, fc and loop drivers since nvme_stop_ctrl barriers
before controller teardown (and specifically I/O cancellation of the
scan_work itself) takes place, but the scan_work will be blocked anyways
so there is no need to flush it.
Instead, move scan_work flush to nvme_remove_namespaces() where it really
needs to flush.
Reported-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Keith Busch <keith.busch@intel.com>
Reviewed by: James Smart <jsmart2021@gmail.com>
Tested-by: Ewan D. Milne <emilne@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c')
0 files changed, 0 insertions, 0 deletions