]> git.baikalelectronics.ru Git - kernel.git/commit
bnx2x: Track active PFs with bitmap
authorAriel Elior <ariele@broadcom.com>
Thu, 26 Jan 2012 06:01:51 +0000 (06:01 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 26 Jan 2012 18:39:52 +0000 (13:39 -0500)
commit8019f504dec6f44006b69e254d41cd5a83601778
tree06c17cb0605aa0bdeacd4e3f3c70f264f725d9cd
parentc4460b9d31bb984f08ee87db1e6cab794cdf3136
bnx2x: Track active PFs with bitmap

The recovery register (to which a hardware lock has been added in previous
patch) is used amongst other things to track the active PFs. The old
implementation which used a per path counter is not viable in a virtualized
environment where a pf may increment the counter and then have the kernel
crash around it preventing the counter from ever reaching zero.
In the new implementation the scenario described will result in the PF timing
out against the mcp, which will clear the PF's bit in the bitmask allowing
recovery process to proceed.

Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c