Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 289759
b: refs/heads/master
c: 7a75299
h: refs/heads/master
i:
  289757: c31544e
  289755: 2df386f
  289751: 4384f1b
  289743: 87db300
  289727: 4290d70
v: v3
  • Loading branch information
Ariel Elior authored and David S. Miller committed Jan 26, 2012
1 parent a501424 commit 0251985
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 95c6c6165eaf5a031bcf31606e081c72e4acdeb8
refs/heads/master: 7a752993fe90adf8e150cc1a85beef5f782429e7
12 changes: 9 additions & 3 deletions trunk/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,11 @@ static const struct {
{ STATS_OFFSET32(total_tpa_aggregated_frames_hi),
8, STATS_FLAGS_FUNC, "tpa_aggregated_frames"},
{ STATS_OFFSET32(total_tpa_bytes_hi),
8, STATS_FLAGS_FUNC, "tpa_bytes"}
8, STATS_FLAGS_FUNC, "tpa_bytes"},
{ STATS_OFFSET32(recoverable_error),
4, STATS_FLAGS_FUNC, "recoverable_errors" },
{ STATS_OFFSET32(unrecoverable_error),
4, STATS_FLAGS_FUNC, "unrecoverable_errors" },
};

#define BNX2X_NUM_STATS ARRAY_SIZE(bnx2x_stats_arr)
Expand Down Expand Up @@ -1388,7 +1392,8 @@ static int bnx2x_set_ringparam(struct net_device *dev,
struct bnx2x *bp = netdev_priv(dev);

if (bp->recovery_state != BNX2X_RECOVERY_DONE) {
pr_err("Handling parity error recovery. Try again later\n");
netdev_err(dev, "Handling parity error recovery. "
"Try again later\n");
return -EAGAIN;
}

Expand Down Expand Up @@ -2042,7 +2047,8 @@ static void bnx2x_self_test(struct net_device *dev,
struct bnx2x *bp = netdev_priv(dev);
u8 is_serdes;
if (bp->recovery_state != BNX2X_RECOVERY_DONE) {
pr_err("Handling parity error recovery. Try again later\n");
netdev_err(bp->dev, "Handling parity error recovery. "
"Try again later\n");
etest->flags |= ETH_TEST_FL_FAILED;
return;
}
Expand Down
13 changes: 13 additions & 0 deletions trunk/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -784,6 +784,7 @@ void bnx2x_panic_dump(struct bnx2x *bp)
#endif

bp->stats_state = STATS_STATE_DISABLED;
bp->eth_stats.unrecoverable_error++;
DP(BNX2X_MSG_STATS, "stats_state - DISABLED\n");

BNX2X_ERR("begin crash dump -----------------\n");
Expand Down Expand Up @@ -5441,6 +5442,7 @@ static void bnx2x_init_eth_fp(struct bnx2x *bp, int fp_idx)

/* init shortcut */
fp->ustorm_rx_prods_offset = bnx2x_rx_ustorm_prods_offset(fp);

/* Setup SB indicies */
fp->rx_cons_sb = BNX2X_RX_SB_INDEX;

Expand Down Expand Up @@ -8563,6 +8565,7 @@ static inline void bnx2x_recovery_failed(struct bnx2x *bp)
static void bnx2x_parity_recover(struct bnx2x *bp)
{
bool global = false;
u32 error_recovered, error_unrecovered;
bool is_parity;

DP(NETIF_MSG_HW, "Handling parity\n");
Expand Down Expand Up @@ -8678,9 +8681,14 @@ static void bnx2x_parity_recover(struct bnx2x *bp)
return;
}

error_recovered =
bp->eth_stats.recoverable_error;
error_unrecovered =
bp->eth_stats.unrecoverable_error;
bp->recovery_state =
BNX2X_RECOVERY_NIC_LOADING;
if (bnx2x_nic_load(bp, LOAD_NORMAL)) {
error_unrecovered++;
netdev_err(bp->dev,
"Recovery failed. "
"Power cycle "
Expand All @@ -8694,8 +8702,13 @@ static void bnx2x_parity_recover(struct bnx2x *bp)
} else {
bp->recovery_state =
BNX2X_RECOVERY_DONE;
error_recovered++;
smp_mb();
}
bp->eth_stats.recoverable_error =
error_recovered;
bp->eth_stats.unrecoverable_error =
error_unrecovered;

return;
}
Expand Down
4 changes: 4 additions & 0 deletions trunk/drivers/net/ethernet/broadcom/bnx2x/bnx2x_stats.h
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,10 @@ struct bnx2x_eth_stats {
u32 pfc_frames_received_lo;
u32 pfc_frames_sent_hi;
u32 pfc_frames_sent_lo;

/* Recovery */
u32 recoverable_error;
u32 unrecoverable_error;
};


Expand Down

0 comments on commit 0251985

Please sign in to comment.