Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

bnx2x: protect sequence increment with mutex

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Dmitry Kravkov and committed by
David S. Miller
a5971d43 07bd8df5

+2 -1
+2 -1
drivers/net/bnx2x/bnx2x_main.c
··· 2222 2222 u32 bnx2x_fw_command(struct bnx2x *bp, u32 command, u32 param) 2223 2223 { 2224 2224 int mb_idx = BP_FW_MB_IDX(bp); 2225 - u32 seq = ++bp->fw_seq; 2225 + u32 seq; 2226 2226 u32 rc = 0; 2227 2227 u32 cnt = 1; 2228 2228 u8 delay = CHIP_REV_IS_SLOW(bp) ? 100 : 10; 2229 2229 2230 2230 mutex_lock(&bp->fw_mb_mutex); 2231 + seq = ++bp->fw_seq; 2231 2232 SHMEM_WR(bp, func_mb[mb_idx].drv_mb_param, param); 2232 2233 SHMEM_WR(bp, func_mb[mb_idx].drv_mb_header, (command | seq)); 2233 2234