summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Allen <jallen@linux.vnet.ibm.com>2017-08-03 00:45:28 +0300
committerDavid S. Miller <davem@davemloft.net>2017-08-03 19:33:06 +0300
commit52da5c114a884f8245dca5d3a69e1f45c759ba31 (patch)
tree9c0c79c17de59f8b8e4e6aae9ba2d7dc682d65cf
parent3d52b5949d0311c4b7bc4c223918fee0f5c0dc39 (diff)
downloadlinux-52da5c114a884f8245dca5d3a69e1f45c759ba31.tar.xz
ibmvnic: Convert vnic server reported statistics to cpu endian
The vnic server reports the statistics buffer in big endian format and must be converted to cpu endian in order to be displayed correctly on little endian lpars. Signed-off-by: John Allen <jallen@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/ibm/ibmvnic.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c
index b45ade6123a4..ea0ff2841a1f 100644
--- a/drivers/net/ethernet/ibm/ibmvnic.c
+++ b/drivers/net/ethernet/ibm/ibmvnic.c
@@ -1807,7 +1807,8 @@ static void ibmvnic_get_ethtool_stats(struct net_device *dev,
wait_for_completion(&adapter->stats_done);
for (i = 0; i < ARRAY_SIZE(ibmvnic_stats); i++)
- data[i] = IBMVNIC_GET_STAT(adapter, ibmvnic_stats[i].offset);
+ data[i] = be64_to_cpu(IBMVNIC_GET_STAT(adapter,
+ ibmvnic_stats[i].offset));
for (j = 0; j < adapter->req_tx_queues; j++) {
data[i] = adapter->tx_stats_buffers[j].packets;