Commit 99dc264
nvme-tcp: fix potential unbalanced freeze & unfreeze
Move start_freeze into nvme_tcp_configure_io_queues(), and there is
at least two benefits:
1) fix unbalanced freeze and unfreeze, since re-connection work may
fail or be broken by removal
2) IO during error recovery can be failfast quickly because nvme fabrics
unquiesces queues after teardown.
One side-effect is that !mpath request may timeout during connecting
because of queue topo change, but that looks not one big deal:
1) same problem exists with current code base
2) compared with !mpath, mpath use case is dominant
Fixes: 2875b0a ("nvme-tcp: fix controller reset hang during traffic")
Cc: stable@vger.kernel.org
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Tested-by: Yi Zhang <yi.zhang@redhat.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Keith Busch <kbusch@kernel.org>1 parent 1b95e81 commit 99dc264
1 file changed
Lines changed: 2 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1868 | 1868 | | |
1869 | 1869 | | |
1870 | 1870 | | |
| 1871 | + | |
1871 | 1872 | | |
1872 | 1873 | | |
1873 | 1874 | | |
| |||
1876 | 1877 | | |
1877 | 1878 | | |
1878 | 1879 | | |
| 1880 | + | |
1879 | 1881 | | |
1880 | 1882 | | |
1881 | 1883 | | |
| |||
1980 | 1982 | | |
1981 | 1983 | | |
1982 | 1984 | | |
1983 | | - | |
1984 | 1985 | | |
1985 | 1986 | | |
1986 | 1987 | | |
| |||
0 commit comments