diff options
author | Yi Zou <yi.zou@intel.com> | 2009-05-13 09:12:16 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-05-17 15:00:09 -0400 |
commit | 6d45522c532be430b2ed63ed48a6a9e15328af66 (patch) | |
tree | 3237ae3c78ad55a050a8d97c72e548b9ca4f95fe /drivers | |
parent | 332d4a7d981e25d239c5d723a4f35020397dc606 (diff) |
ixgbe: Add FCoE related statistics to 82599
This adds FCoE related statistics to 82599, including number Rx-ed and Tx-ed
FCoE packets, number of Rx-ed and Tx-ed FCoE packets in dwords, number of bad
Fiber Channel CRCs detected in FCoE packets, and number of FCoE packets dropped
on the Rx side.
Signed-off-by: Yi Zou <yi.zou@intel.com>
Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ixgbe/ixgbe_ethtool.c | 8 | ||||
-rw-r--r-- | drivers/net/ixgbe/ixgbe_main.c | 8 | ||||
-rw-r--r-- | drivers/net/ixgbe/ixgbe_type.h | 6 |
3 files changed, 22 insertions, 0 deletions
diff --git a/drivers/net/ixgbe/ixgbe_ethtool.c b/drivers/net/ixgbe/ixgbe_ethtool.c index c0167d617b1e..39fb98faffd0 100644 --- a/drivers/net/ixgbe/ixgbe_ethtool.c +++ b/drivers/net/ixgbe/ixgbe_ethtool.c | |||
@@ -91,6 +91,14 @@ static struct ixgbe_stats ixgbe_gstrings_stats[] = { | |||
91 | {"alloc_rx_page_failed", IXGBE_STAT(alloc_rx_page_failed)}, | 91 | {"alloc_rx_page_failed", IXGBE_STAT(alloc_rx_page_failed)}, |
92 | {"alloc_rx_buff_failed", IXGBE_STAT(alloc_rx_buff_failed)}, | 92 | {"alloc_rx_buff_failed", IXGBE_STAT(alloc_rx_buff_failed)}, |
93 | {"rx_no_dma_resources", IXGBE_STAT(hw_rx_no_dma_resources)}, | 93 | {"rx_no_dma_resources", IXGBE_STAT(hw_rx_no_dma_resources)}, |
94 | #ifdef IXGBE_FCOE | ||
95 | {"fcoe_bad_fccrc", IXGBE_STAT(stats.fccrc)}, | ||
96 | {"rx_fcoe_dropped", IXGBE_STAT(stats.fcoerpdc)}, | ||
97 | {"rx_fcoe_packets", IXGBE_STAT(stats.fcoeprc)}, | ||
98 | {"rx_fcoe_dwords", IXGBE_STAT(stats.fcoedwrc)}, | ||
99 | {"tx_fcoe_packets", IXGBE_STAT(stats.fcoeptc)}, | ||
100 | {"tx_fcoe_dwords", IXGBE_STAT(stats.fcoedwtc)}, | ||
101 | #endif /* IXGBE_FCOE */ | ||
94 | }; | 102 | }; |
95 | 103 | ||
96 | #define IXGBE_QUEUE_STATS_LEN \ | 104 | #define IXGBE_QUEUE_STATS_LEN \ |
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index e7c44a3d9c8c..d69a0526f24d 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -4002,6 +4002,14 @@ void ixgbe_update_stats(struct ixgbe_adapter *adapter) | |||
4002 | IXGBE_READ_REG(hw, IXGBE_TORH); /* to clear */ | 4002 | IXGBE_READ_REG(hw, IXGBE_TORH); /* to clear */ |
4003 | adapter->stats.lxonrxc += IXGBE_READ_REG(hw, IXGBE_LXONRXCNT); | 4003 | adapter->stats.lxonrxc += IXGBE_READ_REG(hw, IXGBE_LXONRXCNT); |
4004 | adapter->stats.lxoffrxc += IXGBE_READ_REG(hw, IXGBE_LXOFFRXCNT); | 4004 | adapter->stats.lxoffrxc += IXGBE_READ_REG(hw, IXGBE_LXOFFRXCNT); |
4005 | #ifdef IXGBE_FCOE | ||
4006 | adapter->stats.fccrc += IXGBE_READ_REG(hw, IXGBE_FCCRC); | ||
4007 | adapter->stats.fcoerpdc += IXGBE_READ_REG(hw, IXGBE_FCOERPDC); | ||
4008 | adapter->stats.fcoeprc += IXGBE_READ_REG(hw, IXGBE_FCOEPRC); | ||
4009 | adapter->stats.fcoeptc += IXGBE_READ_REG(hw, IXGBE_FCOEPTC); | ||
4010 | adapter->stats.fcoedwrc += IXGBE_READ_REG(hw, IXGBE_FCOEDWRC); | ||
4011 | adapter->stats.fcoedwtc += IXGBE_READ_REG(hw, IXGBE_FCOEDWTC); | ||
4012 | #endif /* IXGBE_FCOE */ | ||
4005 | } else { | 4013 | } else { |
4006 | adapter->stats.lxonrxc += IXGBE_READ_REG(hw, IXGBE_LXONRXC); | 4014 | adapter->stats.lxonrxc += IXGBE_READ_REG(hw, IXGBE_LXONRXC); |
4007 | adapter->stats.lxoffrxc += IXGBE_READ_REG(hw, IXGBE_LXOFFRXC); | 4015 | adapter->stats.lxoffrxc += IXGBE_READ_REG(hw, IXGBE_LXOFFRXC); |
diff --git a/drivers/net/ixgbe/ixgbe_type.h b/drivers/net/ixgbe/ixgbe_type.h index b3de7233eeb1..38f835da4b90 100644 --- a/drivers/net/ixgbe/ixgbe_type.h +++ b/drivers/net/ixgbe/ixgbe_type.h | |||
@@ -2157,6 +2157,12 @@ struct ixgbe_hw_stats { | |||
2157 | u64 fdirfstat_fremove; | 2157 | u64 fdirfstat_fremove; |
2158 | u64 fdirmatch; | 2158 | u64 fdirmatch; |
2159 | u64 fdirmiss; | 2159 | u64 fdirmiss; |
2160 | u64 fccrc; | ||
2161 | u64 fcoerpdc; | ||
2162 | u64 fcoeprc; | ||
2163 | u64 fcoeptc; | ||
2164 | u64 fcoedwrc; | ||
2165 | u64 fcoedwtc; | ||
2160 | }; | 2166 | }; |
2161 | 2167 | ||
2162 | /* forward declaration */ | 2168 | /* forward declaration */ |