summaryrefslogtreecommitdiff
path: root/include/linux/msi.h
diff options
context:
space:
mode:
authorJoey Zhang <joey.zhang@microchip.com>2019-06-06 15:09:44 +0800
committerJon Mason <jdmason@kudzu.us>2019-06-13 08:59:31 -0400
commita944ccc3b0aedb7f3a24b8c90624fe182e8a8851 (patch)
tree4cc6839b608a51033798208a44e88da21e3df2f5 /include/linux/msi.h
parentf0f43e766bdb314b3816ac891fb18cea5de4123d (diff)
ntb_hw_switchtec: Fix setup MW with failure bug
Switchtec does not support setting multiple MWs simultaneously. The driver takes a hardware lock to ensure that two peers are not doing this simultaneously and it fails if someone else takes the lock. In most cases, this is fine as clients only setup the MWs once on one side of the link. However, there's a race condition when a re-initialization is caused by a link event. The driver will re-setup the shared memory window asynchronously and this races with the client setting up it's memory windows on the link up event. To fix this we ensure do the entire initialization in a work queue and signal the client once it's done. Signed-off-by: Joey Zhang <joey.zhang@microchip.com> Signed-off-by: Wesley Sheng <wesley.sheng@microchip.com> Signed-off-by: Jon Mason <jdmason@kudzu.us>
Diffstat (limited to 'include/linux/msi.h')
0 files changed, 0 insertions, 0 deletions