Skip to content

Commit

Permalink
e1000e: Don't return uninitialized stats
Browse files Browse the repository at this point in the history
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: 5944701 ("net: remove useless memset's in drivers get_stats64")
Reported-by: Stefan Priebe <s.priebe@profihost.ag>
Signed-off-by: Benjamin Poirier <bpoirier@suse.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
  • Loading branch information
Benjamin Poirier authored and Jeff Kirsher committed Jun 6, 2017
1 parent 81e3f64 commit 24ad2a9
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/net/ethernet/intel/e1000e/ethtool.c
Original file line number Diff line number Diff line change
Expand Up @@ -2073,7 +2073,7 @@ static void e1000_get_ethtool_stats(struct net_device *netdev,

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);

Expand Down

0 comments on commit 24ad2a9

Please sign in to comment.