Commit 24ad2a92 authored by Benjamin Poirier's avatar Benjamin Poirier Committed by Jeff Kirsher

e1000e: Don't return uninitialized stats

Some statistics passed to ethtool are garbage because e1000e_get_stats64()
doesn't write them, for example: tx_heartbeat_errors. This leaks kernel
memory to userspace and confuses users.

Do like ixgbe and use dev_get_stats() which first zeroes out
rtnl_link_stats64.

Fixes: 5944701d ("net: remove useless memset's in drivers get_stats64")
Reported-by: default avatarStefan Priebe <s.priebe@profihost.ag>
Signed-off-by: default avatarBenjamin Poirier <bpoirier@suse.com>
Tested-by: default avatarAaron Brown <aaron.f.brown@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent 81e3f64a
...@@ -2073,7 +2073,7 @@ static void e1000_get_ethtool_stats(struct net_device *netdev, ...@@ -2073,7 +2073,7 @@ static void e1000_get_ethtool_stats(struct net_device *netdev,
pm_runtime_get_sync(netdev->dev.parent); pm_runtime_get_sync(netdev->dev.parent);
e1000e_get_stats64(netdev, &net_stats); dev_get_stats(netdev, &net_stats);
pm_runtime_put_sync(netdev->dev.parent); pm_runtime_put_sync(netdev->dev.parent);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment