git.samba.org
/
sfrench
/
cifs-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
net/mlx5e: Avoid reset netdev stats on configuration changes
[sfrench/cifs-2.6.git]
/
drivers
/
net
/
ethernet
/
mellanox
/
mlx5
/
core
/
en.h
diff --git
a/drivers/net/ethernet/mellanox/mlx5/core/en.h
b/drivers/net/ethernet/mellanox/mlx5/core/en.h
index c3c79f2835d280ba199b9b4f239bcfe1bd125e86..1c04df043e07178edd7f454965e55d0a6ec67cf4 100644
(file)
--- a/
drivers/net/ethernet/mellanox/mlx5/core/en.h
+++ b/
drivers/net/ethernet/mellanox/mlx5/core/en.h
@@
-358,7
+358,6
@@
struct mlx5e_txqsq {
/* dirtied @xmit */
u16 pc ____cacheline_aligned_in_smp;
u32 dma_fifo_pc;
/* dirtied @xmit */
u16 pc ____cacheline_aligned_in_smp;
u32 dma_fifo_pc;
- struct mlx5e_sq_stats stats;
struct mlx5e_cq cq;
struct mlx5e_cq cq;
@@
-371,6
+370,7
@@
struct mlx5e_txqsq {
/* read only */
struct mlx5_wq_cyc wq;
u32 dma_fifo_mask;
/* read only */
struct mlx5_wq_cyc wq;
u32 dma_fifo_mask;
+ struct mlx5e_sq_stats *stats;
void __iomem *uar_map;
struct netdev_queue *txq;
u32 sqn;
void __iomem *uar_map;
struct netdev_queue *txq;
u32 sqn;
@@
-526,7
+526,7
@@
struct mlx5e_rq {
struct mlx5e_channel *channel;
struct device *pdev;
struct net_device *netdev;
struct mlx5e_channel *channel;
struct device *pdev;
struct net_device *netdev;
- struct mlx5e_rq_stats
stats;
+ struct mlx5e_rq_stats
*
stats;
struct mlx5e_cq cq;
struct mlx5e_page_cache page_cache;
struct hwtstamp_config *tstamp;
struct mlx5e_cq cq;
struct mlx5e_page_cache page_cache;
struct hwtstamp_config *tstamp;
@@
-574,7
+574,7
@@
struct mlx5e_channel {
/* data path - accessed per napi poll */
struct irq_desc *irq_desc;
/* data path - accessed per napi poll */
struct irq_desc *irq_desc;
- struct mlx5e_ch_stats
stats;
+ struct mlx5e_ch_stats
*
stats;
/* control */
struct mlx5e_priv *priv;
/* control */
struct mlx5e_priv *priv;
@@
-590,6
+590,12
@@
struct mlx5e_channels {
struct mlx5e_params params;
};
struct mlx5e_params params;
};
+struct mlx5e_channel_stats {
+ struct mlx5e_ch_stats ch;
+ struct mlx5e_sq_stats sq[MLX5E_MAX_NUM_TC];
+ struct mlx5e_rq_stats rq;
+} ____cacheline_aligned_in_smp;
+
enum mlx5e_traffic_types {
MLX5E_TT_IPV4_TCP,
MLX5E_TT_IPV6_TCP,
enum mlx5e_traffic_types {
MLX5E_TT_IPV4_TCP,
MLX5E_TT_IPV6_TCP,
@@
-793,6
+799,8
@@
struct mlx5e_priv {
struct mlx5_core_dev *mdev;
struct net_device *netdev;
struct mlx5e_stats stats;
struct mlx5_core_dev *mdev;
struct net_device *netdev;
struct mlx5e_stats stats;
+ struct mlx5e_channel_stats channel_stats[MLX5E_MAX_NUM_CHANNELS];
+ u8 max_opened_tc;
struct hwtstamp_config tstamp;
u16 q_counter;
u16 drop_rq_q_counter;
struct hwtstamp_config tstamp;
u16 q_counter;
u16 drop_rq_q_counter;