igb: shorten maximum PHC timecounter update interval
authorMiroslav Lichvar <mlichvar@redhat.com>
Fri, 12 Oct 2018 11:13:39 +0000 (13:13 +0200)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 31 Oct 2018 17:24:41 +0000 (10:24 -0700)
commit094bf4d0e9657f6ea1ee3d7e07ce3970796949ce
tree35160f324f611058d446f1c59d8182358443dc07
parenta6b3a3fa042343e29ffaf9169f5ba3c819d4f9a2
igb: shorten maximum PHC timecounter update interval

The timecounter needs to be updated at least once per ~550 seconds in
order to avoid a 40-bit SYSTIM timestamp to be misinterpreted as an old
timestamp.

Since commit 500462a9d ("timers: Switch to a non-cascading wheel"),
scheduling of delayed work seems to be less accurate and a requested
delay of 540 seconds may actually be longer than 550 seconds. Shorten
the delay to 480 seconds to be sure the timecounter is updated in time.

This fixes an issue with HW timestamps on 82580/I350/I354 being off by
~1100 seconds for few seconds every ~9 minutes.

Cc: Jacob Keller <jacob.e.keller@intel.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Miroslav Lichvar <mlichvar@redhat.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/igb/igb_ptp.c