i40e: fix stats offsets
The code was setting up stats that were not being initialized. This caused several counters to be displayed incorrectly, due to indexing beyond the array of strings when printing stats. Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
0db65fcfcd
commit
74a6c66565
1 changed files with 6 additions and 0 deletions
|
@ -1344,6 +1344,12 @@ static void i40e_get_ethtool_stats(struct net_device *netdev,
|
||||||
data[i++] = (i40e_gstrings_veb_stats[j].sizeof_stat ==
|
data[i++] = (i40e_gstrings_veb_stats[j].sizeof_stat ==
|
||||||
sizeof(u64)) ? *(u64 *)p : *(u32 *)p;
|
sizeof(u64)) ? *(u64 *)p : *(u32 *)p;
|
||||||
}
|
}
|
||||||
|
for (j = 0; j < I40E_MAX_TRAFFIC_CLASS; j++) {
|
||||||
|
data[i++] = veb->tc_stats.tc_tx_packets[j];
|
||||||
|
data[i++] = veb->tc_stats.tc_tx_bytes[j];
|
||||||
|
data[i++] = veb->tc_stats.tc_rx_packets[j];
|
||||||
|
data[i++] = veb->tc_stats.tc_rx_bytes[j];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
for (j = 0; j < I40E_GLOBAL_STATS_LEN; j++) {
|
for (j = 0; j < I40E_GLOBAL_STATS_LEN; j++) {
|
||||||
p = (char *)pf + i40e_gstrings_stats[j].stat_offset;
|
p = (char *)pf + i40e_gstrings_stats[j].stat_offset;
|
||||||
|
|
Loading…
Add table
Reference in a new issue