aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/tg3.c
diff options
context:
space:
mode:
authorMatt Carlson <mcarlson@broadcom.com>2011-05-19 08:12:51 -0400
committerDavid S. Miller <davem@davemloft.net>2011-05-19 18:00:00 -0400
commit4452d0999906e3e26b718566362e943fcaa3d694 (patch)
tree124fa03691574ffb7e290bff82552915a04a5f7b /drivers/net/tg3.c
parent54e0a67f446fae290f99781691eba46c5cda66e7 (diff)
tg3: Fix stats for 5704 and later devices
Commit 4d95847381228639844c7197deb8b2211274ef22, entitled "tg3: Workaround rx_discards stat bug" modified the hardware statistics data structure. The modification shifted the statistics so that the labels no longer corresponded to the counter values. This patch fixes the problem by utilizing reserved space for the new counters. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tg3.c')
-rw-r--r--drivers/net/tg3.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c
index d05c6a06da44..574fe9785f3c 100644
--- a/drivers/net/tg3.c
+++ b/drivers/net/tg3.c
@@ -364,7 +364,6 @@ static const struct {
364 { "dma_write_prioq_full" }, 364 { "dma_write_prioq_full" },
365 { "rxbds_empty" }, 365 { "rxbds_empty" },
366 { "rx_discards" }, 366 { "rx_discards" },
367 { "mbuf_lwm_thresh_hit" },
368 { "rx_errors" }, 367 { "rx_errors" },
369 { "rx_threshold_hit" }, 368 { "rx_threshold_hit" },
370 369
@@ -376,7 +375,9 @@ static const struct {
376 { "ring_status_update" }, 375 { "ring_status_update" },
377 { "nic_irqs" }, 376 { "nic_irqs" },
378 { "nic_avoided_irqs" }, 377 { "nic_avoided_irqs" },
379 { "nic_tx_threshold_hit" } 378 { "nic_tx_threshold_hit" },
379
380 { "mbuf_lwm_thresh_hit" },
380}; 381};
381 382
382#define TG3_NUM_STATS ARRAY_SIZE(ethtool_stats_keys) 383#define TG3_NUM_STATS ARRAY_SIZE(ethtool_stats_keys)
@@ -9546,6 +9547,8 @@ static struct tg3_ethtool_stats *tg3_get_estats(struct tg3 *tp)
9546 ESTAT_ADD(nic_avoided_irqs); 9547 ESTAT_ADD(nic_avoided_irqs);
9547 ESTAT_ADD(nic_tx_threshold_hit); 9548 ESTAT_ADD(nic_tx_threshold_hit);
9548 9549
9550 ESTAT_ADD(mbuf_lwm_thresh_hit);
9551
9549 return estats; 9552 return estats;
9550} 9553}
9551 9554