mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-11 19:19:42 +00:00
b0bccb69eb
Each VF employees a lock that's supposed to serialize its usage of the HW channel for communication with its PF, but the critical section is ill-defined: - VFs currently release the lock whenever the PF response arrives, prior to actually processing the reply buffer [which was also supposed to have been protected by same lock]. - The lock would be released on first response, ignoring the possibilty the sw flow isn't over [as might be the case of the acquisition flow]. As a result, the flow would run unprotected and would cause a double mutex release [as the additional message completion would release it while its actually already free]. Change the flow to have a dedicated function to be called at end of each flow and release the lock. Signed-off-by: Yuval Mintz <Yuval.Mintz@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
Makefile | ||
qed.h | ||
qed_cxt.c | ||
qed_cxt.h | ||
qed_dcbx.c | ||
qed_dcbx.h | ||
qed_dev.c | ||
qed_dev_api.h | ||
qed_hsi.h | ||
qed_hw.c | ||
qed_hw.h | ||
qed_init_fw_funcs.c | ||
qed_init_ops.c | ||
qed_init_ops.h | ||
qed_int.c | ||
qed_int.h | ||
qed_l2.c | ||
qed_l2.h | ||
qed_main.c | ||
qed_mcp.c | ||
qed_mcp.h | ||
qed_reg_addr.h | ||
qed_selftest.c | ||
qed_selftest.h | ||
qed_sp.h | ||
qed_sp_commands.c | ||
qed_spq.c | ||
qed_sriov.c | ||
qed_sriov.h | ||
qed_vf.c | ||
qed_vf.h |