[PATCH 1/3] e1000e: e1000e_cyclecounter_read(): incvalue is 32 bits, not 64
From: Denys Vlasenko
Date: Tue Apr 19 2016 - 08:34:57 EST
"incvalue" variable holds a result of "er32(TIMINCA) & E1000_TIMINCA_INCVALUE_MASK"
and used in "do_div(temp, incvalue)" as a divisor.
Thus, "u64 incvalue" declaration is probably a mistake.
Even though it seems to be a harmless one, let's fix it.
Signed-off-by: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
CC: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>
CC: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
CC: Shannon Nelson <shannon.nelson@xxxxxxxxx>
CC: Carolyn Wyborny <carolyn.wyborny@xxxxxxxxx>
CC: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
CC: Bruce Allan <bruce.w.allan@xxxxxxxxx>
CC: John Ronciak <john.ronciak@xxxxxxxxx>
CC: Mitch Williams <mitch.a.williams@xxxxxxxxx>
CC: David S. Miller <davem@xxxxxxxxxxxxx>
CC: LKML <linux-kernel@xxxxxxxxxxxxxxx>
CC: netdev@xxxxxxxxxxxxxxx
---
drivers/net/ethernet/intel/e1000e/netdev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c
index 9b4ec13..967311b 100644
--- a/drivers/net/ethernet/intel/e1000e/netdev.c
+++ b/drivers/net/ethernet/intel/e1000e/netdev.c
@@ -4300,7 +4300,8 @@ static cycle_t e1000e_cyclecounter_read(const struct cyclecounter *cc)
}
if ((hw->mac.type == e1000_82574) || (hw->mac.type == e1000_82583)) {
- u64 incvalue, time_delta, rem, temp;
+ u64 time_delta, rem, temp;
+ u32 incvalue;
int i;
/* errata for 82574/82583 possible bad bits read from SYSTIMH/L
--
1.8.1.4