summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Jiang2017-07-29 00:10:48 +0200
committerJon Mason2017-08-01 19:31:44 +0200
commitf3fd2afed8eee91620d05b69ab94c14793c849d7 (patch)
tree7f97044f2119afca5f691e9345fa0b2356373b66
parentntb: use correct mw_count function in ntb_tool and ntb_transport (diff)
downloadkernel-qcow2-linux-f3fd2afed8eee91620d05b69ab94c14793c849d7.tar.gz
kernel-qcow2-linux-f3fd2afed8eee91620d05b69ab94c14793c849d7.tar.xz
kernel-qcow2-linux-f3fd2afed8eee91620d05b69ab94c14793c849d7.zip
ntb: transport shouldn't disable link due to bogus values in SPADs
It seems that under certain scenarios the SPAD can have bogus values caused by an agent (i.e. BIOS or other software) that is not the kernel driver, and that causes memory window setup failure. This should not cause the link to be disabled because if we do that, the driver will never recover again. We have verified in testing that this issue happens and prevents proper link recovery. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Acked-by: Allen Hubbe <Allen.Hubbe@dell.com> Signed-off-by: Jon Mason <jdmason@kudzu.us> Fixes: 84f766855f61 ("ntb: stop link work when we do not have memory")
-rw-r--r--drivers/ntb/ntb_transport.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/ntb/ntb_transport.c b/drivers/ntb/ntb_transport.c
index b29558ddfe95..f58d8e305323 100644
--- a/drivers/ntb/ntb_transport.c
+++ b/drivers/ntb/ntb_transport.c
@@ -924,10 +924,8 @@ out1:
ntb_free_mw(nt, i);
/* if there's an actual failure, we should just bail */
- if (rc < 0) {
- ntb_link_disable(ndev);
+ if (rc < 0)
return;
- }
out:
if (ntb_link_is_up(ndev, NULL, NULL) == 1)