summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorJunxian Huang <huangjunxian6@hisilicon.com>2025-02-08 18:59:30 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-03-07 18:25:25 +0100
commit308d162c44a6ba44edb4318f012dad2707fb8c8e (patch)
treea8423fe4d134e974c15c9264457d610c77e2ccfb /scripts
parentc3a6c1e7b80e938be7a142a1c6b64932b2eb70d4 (diff)
downloadlinux-308d162c44a6ba44edb4318f012dad2707fb8c8e.tar.gz
linux-308d162c44a6ba44edb4318f012dad2707fb8c8e.tar.bz2
linux-308d162c44a6ba44edb4318f012dad2707fb8c8e.zip
RDMA/hns: Fix mbox timing out by adding retry mechanism
[ Upstream commit 9747c0c7791d4a5a62018a0c9c563dd2e6f6c1c0 ] If a QP is modified to error state and a flush CQE process is triggered, the subsequent QP destruction mbox can still be successfully posted but will be blocked in HW until the flush CQE process finishes. This causes further mbox posting timeouts in driver. The blocking time is related to QP depth. Considering an extreme case where SQ depth and RQ depth are both 32K, the blocking time can reach about 135ms. This patch adds a retry mechanism for mbox posting. For each try, FW waits 15ms for HW to complete the previous mbox, otherwise return a timeout error code to driver. Counting other time consumption in FW, set 8 tries for mbox posting and a 5ms time gap before each retry to increase to a sufficient timeout limit. Fixes: 0425e3e6e0c7 ("RDMA/hns: Support flush cqe for hip08 in kernel space") Signed-off-by: Junxian Huang <huangjunxian6@hisilicon.com> Link: https://patch.msgid.link/20250208105930.522796-1-huangjunxian6@hisilicon.com Signed-off-by: Leon Romanovsky <leon@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions