diff options
author | Barak Witkowski <barak@broadcom.com> | 2012-12-05 23:04:03 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-12-07 12:53:49 -0500 |
commit | c63da990cd63153ce5203f96822638a7ef0f9bf7 (patch) | |
tree | ff99d59bf8d08e978acc6aef42c0d684613689bc /drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h | |
parent | 6ded7cd605502eff7341bbd912ebc90c3674c764 (diff) | |
download | linux-c63da990cd63153ce5203f96822638a7ef0f9bf7.tar.bz2 |
bnx2x: Prevent link flaps when booting from SAN.
It is possible that the driver is configured to operate with a certain
link configuration which differs from the link's configuration during
boot from SAN - this would cause the driver to flap the link.
Said flap may be missed by specific switches, causing dcbx convergence
to be too long and boot sequence to fail. Convergence is longer because
switch ignores new dcbx packets due to counters mismatch, as only host
side reset the counters due to the link flap.
This patch causes the driver to ignore user's initial configuration during
boot from SAN, and continues with the existing link configuration.
Signed-off-by: Barak Witkowski <barak@broadcom.com>
Signed-off-by: Yuval Mintz <yuvalmin@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h index 181c5ce490bc..ee6e7ec85457 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h @@ -267,6 +267,7 @@ struct link_params { #define FEATURE_CONFIG_BC_SUPPORTS_SFP_TX_DISABLED (1<<10) #define FEATURE_CONFIG_DISABLE_REMOTE_FAULT_DET (1<<11) #define FEATURE_CONFIG_MT_SUPPORT (1<<13) +#define FEATURE_CONFIG_BOOT_FROM_SAN (1<<14) /* Will be populated during common init */ struct bnx2x_phy phy[MAX_PHYS]; |