>> This is prepatory work for an expanding list of adapter families that have >> occasional ~10 hour clock jumps when being used for PTP. Factor out the >> sanitization function and convert to using a feature (bug) flag, per >> suggestion from Jesse Brandeburg. >> >> Littering functional code with device-specific checks is much messier than >> simply checking a flag, and having device-specific init set flags as needed. >> There are probably a number of other cases in the e1000e code that >> could/should be converted similarly. > > Looks ok to me. > Adding Chris who asked what happens if we reach the max retry counter > (E1000_MAX_82574_SYSTIM_REREAD)? > This counter is set to 50. > Can you, for testing purposes, decreased this value (or even set it to 0) and > see what happens?
I have one of the affected NICs. I inserted some test code into the module to check the value of i after the for loop inside the sanitize function exits to check how many iterations of the loop were being run. I ran a PTP test setup for a few hours with E1000_MAX_82574_SYSTIM_REREAD=50, and the maximum number was 5 iterations. It looks like setting E1000_MAX_82574_SYSTIM_REREAD to 0 will just disable the return value checking and will have the same results as disabling the sanitization function. I'll set the max retry counter to 1 and run an overnight test to see what happens. Tim Woodford