From: Bob Picco Date: Tue, 31 Jan 2012 19:02:28 +0000 (-0500) Subject: Revert "bnx2x: prevent flooded warnning kernel info" X-Git-Tag: v2.6.39-400.9.0~615^2~75 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=c4da47932a4d2dd42fe4eff3e11800574d797e5f;p=users%2Fjedix%2Flinux-maple.git Revert "bnx2x: prevent flooded warnning kernel info" This reverts commit 8cac1300f2d0dd18b2104ccc20aa00ca237343e1. --- diff --git a/drivers/net/bnx2x/bnx2x.h b/drivers/net/bnx2x/bnx2x.h index f5328bf6610d..668a578c49e9 100644 --- a/drivers/net/bnx2x/bnx2x.h +++ b/drivers/net/bnx2x/bnx2x.h @@ -1054,7 +1054,6 @@ struct bnx2x { u32 vn_weight_sum; u32 mf_config[E1HVN_MAX]; - bool prev_max_cfg_invalid[E1HVN_MAX]; u32 mf2_config[E2_FUNC_MAX]; u16 mf_ov; u8 mf_mode; diff --git a/drivers/net/bnx2x/bnx2x_cmn.c b/drivers/net/bnx2x/bnx2x_cmn.c index c1c58440a4e9..289044332ed8 100644 --- a/drivers/net/bnx2x/bnx2x_cmn.c +++ b/drivers/net/bnx2x/bnx2x_cmn.c @@ -785,7 +785,8 @@ u16 bnx2x_get_mf_speed(struct bnx2x *bp) { u16 line_speed = bp->link_vars.line_speed; if (IS_MF(bp)) { - u16 maxCfg = bnx2x_extract_max_cfg(bp, BP_VN(bp)); + u16 maxCfg = bnx2x_extract_max_cfg(bp, + bp->mf_config[BP_VN(bp)]); /* Calculate the current MAX line speed limit for the MF * devices @@ -1089,7 +1090,7 @@ void bnx2x_update_max_mf_config(struct bnx2x *bp, u32 value) /* load old values */ u32 mf_cfg = bp->mf_config[BP_VN(bp)]; - if (value != bnx2x_extract_max_cfg(bp, BP_VN(bp))) { + if (value != bnx2x_extract_max_cfg(bp, mf_cfg)) { /* leave all but MAX value */ mf_cfg &= ~FUNC_MF_CFG_MAX_BW_MASK; diff --git a/drivers/net/bnx2x/bnx2x_cmn.h b/drivers/net/bnx2x/bnx2x_cmn.h index 0e044e154340..1a3545bd8a92 100644 --- a/drivers/net/bnx2x/bnx2x_cmn.h +++ b/drivers/net/bnx2x/bnx2x_cmn.h @@ -1111,23 +1111,22 @@ void bnx2x_acquire_phy_lock(struct bnx2x *bp); void bnx2x_release_phy_lock(struct bnx2x *bp); /** - * bnx2x_extract_max_cfg - extract MAX BW part from MF configuration. - * - * @bp: driver handle - * @vn: vnic index - * - */ -static inline u16 bnx2x_extract_max_cfg(struct bnx2x *bp, int vn) + * bnx2x_extract_max_cfg - extract MAX BW part from MF configuration. + * + * @bp: driver handle + * @mf_cfg: MF configuration + * + */ +static inline u16 bnx2x_extract_max_cfg(struct bnx2x *bp, u32 mf_cfg) { - u16 max_cfg = (bp->mf_config[vn] & FUNC_MF_CFG_MAX_BW_MASK) >> - FUNC_MF_CFG_MAX_BW_SHIFT; - - if (!max_cfg && !bp->prev_max_cfg_invalid[vn]) - BNX2X_ERR("Illegal configuration detected for Max BW " - "on vn %d - using 100 instead\n", vn); - bp->prev_max_cfg_invalid[vn] = !max_cfg; - - return max_cfg ?: 100; + u16 max_cfg = (mf_cfg & FUNC_MF_CFG_MAX_BW_MASK) >> + FUNC_MF_CFG_MAX_BW_SHIFT; + if (!max_cfg) { + BNX2X_ERR("Illegal configuration detected for Max BW - " + "using 100 instead\n"); + max_cfg = 100; + } + return max_cfg; } #endif /* BNX2X_CMN_H */ diff --git a/drivers/net/bnx2x/bnx2x_main.c b/drivers/net/bnx2x/bnx2x_main.c index 680bcb4f49e5..74be989f51c5 100644 --- a/drivers/net/bnx2x/bnx2x_main.c +++ b/drivers/net/bnx2x/bnx2x_main.c @@ -1968,7 +1968,7 @@ static void bnx2x_init_vn_minmax(struct bnx2x *bp, int vn) vn_max_rate = 0; } else { - u32 maxCfg = bnx2x_extract_max_cfg(bp, vn); + u32 maxCfg = bnx2x_extract_max_cfg(bp, vn_cfg); vn_min_rate = ((vn_cfg & FUNC_MF_CFG_MIN_BW_MASK) >> FUNC_MF_CFG_MIN_BW_SHIFT) * 100;