DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] e1000: fix rx/tx total byte statistics
@ 2015-10-22 15:18 Harry van Haaren
  2015-10-23  2:31 ` Lu, Wenzhuo
  0 siblings, 1 reply; 3+ messages in thread
From: Harry van Haaren @ 2015-10-22 15:18 UTC (permalink / raw)
  To: dev

This patch fixes a bug in reading the 64 bit register reading
which was causing the total octets counters to show zero.
Now the code reads both the lower and higher 32 bits.
Tested in testpmd, byte values are correct.

Fixes: 805803445a02 ("e1000: support EM devices (also known as e1000/e1000e)")

Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
---
 drivers/net/e1000/igb_ethdev.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
index 848ef6e..2b081b1 100644
--- a/drivers/net/e1000/igb_ethdev.c
+++ b/drivers/net/e1000/igb_ethdev.c
@@ -1316,8 +1316,10 @@ eth_igb_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *rte_stats)
 	stats->roc += E1000_READ_REG(hw, E1000_ROC);
 	stats->rjc += E1000_READ_REG(hw, E1000_RJC);
 
-	stats->tor += E1000_READ_REG(hw, E1000_TORH);
-	stats->tot += E1000_READ_REG(hw, E1000_TOTH);
+	stats->tor += E1000_READ_REG(hw, E1000_TORL);
+	stats->tor += ((uint64_t)E1000_READ_REG(hw, E1000_TORH) << 32);
+	stats->tot += E1000_READ_REG(hw, E1000_TOTL);
+	stats->tot += ((uint64_t)E1000_READ_REG(hw, E1000_TOTH) << 32);
 
 	stats->tpr += E1000_READ_REG(hw, E1000_TPR);
 	stats->tpt += E1000_READ_REG(hw, E1000_TPT);
-- 
1.9.1

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] [PATCH] e1000: fix rx/tx total byte statistics
  2015-10-22 15:18 [dpdk-dev] [PATCH] e1000: fix rx/tx total byte statistics Harry van Haaren
@ 2015-10-23  2:31 ` Lu, Wenzhuo
  2015-10-27 17:41   ` Thomas Monjalon
  0 siblings, 1 reply; 3+ messages in thread
From: Lu, Wenzhuo @ 2015-10-23  2:31 UTC (permalink / raw)
  To: Van Haaren, Harry, dev

Hi,

> -----Original Message-----
> From: Van Haaren, Harry
> Sent: Thursday, October 22, 2015 11:18 PM
> To: dev@dpdk.org
> Cc: Lu, Wenzhuo; Van Haaren, Harry
> Subject: [PATCH] e1000: fix rx/tx total byte statistics
> 
> This patch fixes a bug in reading the 64 bit register reading which was
> causing the total octets counters to show zero.
> Now the code reads both the lower and higher 32 bits.
> Tested in testpmd, byte values are correct.
> 
> Fixes: 805803445a02 ("e1000: support EM devices (also known as
> e1000/e1000e)")
> 
> Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] [PATCH] e1000: fix rx/tx total byte statistics
  2015-10-23  2:31 ` Lu, Wenzhuo
@ 2015-10-27 17:41   ` Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2015-10-27 17:41 UTC (permalink / raw)
  To: Van Haaren, Harry; +Cc: dev

> > This patch fixes a bug in reading the 64 bit register reading which was
> > causing the total octets counters to show zero.
> > Now the code reads both the lower and higher 32 bits.
> > Tested in testpmd, byte values are correct.
> > 
> > Fixes: 805803445a02 ("e1000: support EM devices (also known as
> > e1000/e1000e)")
> > 
> > Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
> Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>

It was an old bug :)

Applied, thanks

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-10-27 17:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-22 15:18 [dpdk-dev] [PATCH] e1000: fix rx/tx total byte statistics Harry van Haaren
2015-10-23  2:31 ` Lu, Wenzhuo
2015-10-27 17:41   ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).