summaryrefslogtreecommitdiffstats
path: root/Documentation/volatile-considered-harmful.txt
diff options
context:
space:
mode:
authorJacob Keller <jacob.e.keller@intel.com>2012-06-16 23:29:00 +0000
committerDavid S. Miller <davem@davemloft.net>2012-06-17 16:15:06 -0700
commitb6138ed60457ef1e9150692f6790eb4a2a696308 (patch)
tree7aaa918c4889c249c517532607dfc636ec373142 /Documentation/volatile-considered-harmful.txt
parent5481388bc705de27ca37241a42c6612c86f2cc3b (diff)
ixgbe: Fix PHC loophole allowing misconfiguration of increment register
This patch fixes a potential hole when configuring the cycle counter used to generate the nanosecond time clock. This clock is based off of the SYSTIME registers along with the TIMINCA registers. The TIMINCA register determines the increment to be added to the SYSTIME registers every DMA clock tick. This register needs to be reconfigured whenever the link-speed changes. However, the value calculated stays the same when link is down and when link is up. Misconfiguration can occur if the link status changes due to a reset, which causes the TIMINCA register to be reset. This reset puts the device in an unstable state where the SYSTIME registers stop incrementing and the PTP protocol does not function. The solution is to double check the TIMINCA value and always reset the value if the register is zero. This prevents a misconfiguration bug that halts the PHC. Signed-off-by: Jacob Keller <jacob.e.keller@intel.com> Acked-by: Don Skidmore <donald.c.skidmore@intel.com> Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'Documentation/volatile-considered-harmful.txt')
0 files changed, 0 insertions, 0 deletions