|
@@ -1264,7 +1264,8 @@ static int i40e_get_sset_count(struct net_device *netdev, int sset)
|
|
|
if (vsi == pf->vsi[pf->lan_vsi] && pf->hw.partition_id == 1) {
|
|
|
int len = I40E_PF_STATS_LEN(netdev);
|
|
|
|
|
|
- if (pf->lan_veb != I40E_NO_VEB)
|
|
|
+ if ((pf->lan_veb != I40E_NO_VEB) &&
|
|
|
+ (pf->flags & I40E_FLAG_VEB_STATS_ENABLED))
|
|
|
len += I40E_VEB_STATS_TOTAL;
|
|
|
return len;
|
|
|
} else {
|
|
@@ -1337,7 +1338,8 @@ static void i40e_get_ethtool_stats(struct net_device *netdev,
|
|
|
if (vsi != pf->vsi[pf->lan_vsi] || pf->hw.partition_id != 1)
|
|
|
return;
|
|
|
|
|
|
- if (pf->lan_veb != I40E_NO_VEB) {
|
|
|
+ if ((pf->lan_veb != I40E_NO_VEB) &&
|
|
|
+ (pf->flags & I40E_FLAG_VEB_STATS_ENABLED)) {
|
|
|
struct i40e_veb *veb = pf->veb[pf->lan_veb];
|
|
|
for (j = 0; j < I40E_VEB_STATS_LEN; j++) {
|
|
|
p = (char *)veb;
|
|
@@ -1410,7 +1412,8 @@ static void i40e_get_strings(struct net_device *netdev, u32 stringset,
|
|
|
if (vsi != pf->vsi[pf->lan_vsi] || pf->hw.partition_id != 1)
|
|
|
return;
|
|
|
|
|
|
- if (pf->lan_veb != I40E_NO_VEB) {
|
|
|
+ if ((pf->lan_veb != I40E_NO_VEB) &&
|
|
|
+ (pf->flags & I40E_FLAG_VEB_STATS_ENABLED)) {
|
|
|
for (i = 0; i < I40E_VEB_STATS_LEN; i++) {
|
|
|
snprintf(p, ETH_GSTRING_LEN, "veb.%s",
|
|
|
i40e_gstrings_veb_stats[i].stat_string);
|