From: Tariq Toukan <tar...@mellanox.com> Date: Mon, 13 Mar 2017 19:29:08 +0200
> From: Jack Morgenstein <ja...@dev.mellanox.co.il> > > Some Hypervisors detach VFs from VMs by instantly causing an FLR event > to be generated for a VF. > > In the mlx4 case, this will cause that VF's comm channel to be disabled > before the VM has an opportunity to invoke the VF device's "shutdown" > method. > > For such Hypervisors, there is a race condition between the VF's > shutdown method and its internal-error detection/reset thread. > > The internal-error detection/reset thread (which runs every 5 seconds) also > detects a disabled comm channel. If the internal-error detection/reset > flow wins the race, we still get delays (while that flow tries repeatedly > to detect comm-channel recovery). > > The cited commit fixed the command timeout problem when the > internal-error detection/reset flow loses the race. > > This commit avoids the unneeded delays when the internal-error > detection/reset flow wins. > > Fixes: d585df1c5ccf ("net/mlx4_core: Avoid command timeouts during VF driver > device shutdown") > Signed-off-by: Jack Morgenstein <ja...@dev.mellanox.co.il> > Reported-by: Simon Xiao <six...@microsoft.com> > Signed-off-by: Tariq Toukan <tar...@mellanox.com> Applied.