Skip to content

Commit

Permalink
e1000: 3 new driver stats for managability testing
Browse files Browse the repository at this point in the history
Add 3 extra packet redirect counters for tracking purposes to make sure
we can test that all packets arrive properly.

Originally from Jesse Brandeburg <jesse.brandeburg@intel.com>,
rewritten to use feature flags by me.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
  • Loading branch information
Jeff Garzik committed Dec 26, 2006
1 parent 1f75386 commit 15e376b
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 0 deletions.
3 changes: 3 additions & 0 deletions drivers/net/e1000/e1000_ethtool.c
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,9 @@ static const struct e1000_stats e1000_gstrings_stats[] = {
{ "rx_csum_offload_errors", E1000_STAT(hw_csum_err) },
{ "rx_header_split", E1000_STAT(rx_hdr_split) },
{ "alloc_rx_buff_failed", E1000_STAT(alloc_rx_buff_failed) },
{ "tx_smbus", E1000_STAT(stats.mgptc) },
{ "rx_smbus", E1000_STAT(stats.mgprc) },
{ "dropped_smbus", E1000_STAT(stats.mgpdc) },
};

#define E1000_QUEUE_STATS_LEN 0
Expand Down
3 changes: 3 additions & 0 deletions drivers/net/e1000/e1000_hw.c
Original file line number Diff line number Diff line change
Expand Up @@ -458,6 +458,9 @@ e1000_set_mac_type(struct e1000_hw *hw)
if (hw->mac_type == e1000_80003es2lan)
hw->rx_needs_kicking = TRUE;

if (hw->mac_type > e1000_82544)
hw->has_smbus = TRUE;

return E1000_SUCCESS;
}

Expand Down
1 change: 1 addition & 0 deletions drivers/net/e1000/e1000_hw.h
Original file line number Diff line number Diff line change
Expand Up @@ -1464,6 +1464,7 @@ struct e1000_hw {
boolean_t bad_tx_carr_stats_fd;
boolean_t has_manc2h;
boolean_t rx_needs_kicking;
boolean_t has_smbus;
};


Expand Down
7 changes: 7 additions & 0 deletions drivers/net/e1000/e1000_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -3743,6 +3743,13 @@ e1000_update_stats(struct e1000_adapter *adapter)
adapter->phy_stats.receive_errors += phy_tmp;
}

/* Management Stats */
if (adapter->hw.has_smbus) {
adapter->stats.mgptc += E1000_READ_REG(hw, MGTPTC);
adapter->stats.mgprc += E1000_READ_REG(hw, MGTPRC);
adapter->stats.mgpdc += E1000_READ_REG(hw, MGTPDC);
}

spin_unlock_irqrestore(&adapter->stats_lock, flags);
}
#ifdef CONFIG_PCI_MSI
Expand Down

0 comments on commit 15e376b

Please sign in to comment.