Na kilku platformach produkcyjnych zaobserwowaliśmy objawy, które wydają się sugerować, że zegar czasu okresowo przeskakuje do przodu lub do tyłu. Skoki trwają zwykle około 1 sekundy, zazwyczaj anulują (skaczą do przodu, a potem bardzo szybko potem do tyłu) i zdarzają się około 50 razy dziennie. To przesunięcie jest najbardziej zauważalne w okresach szczytowego użycia aplikacji oraz w okresach operacji we / wy na wysokim dysku, takich jak codzienne kopie zapasowe. Te zmiany wpływają na naszą miękką aplikację wrażliwą w czasie rzeczywistym.
Systemami są serwery Oracle Netra X4250 i Netra X4270 z systemem SLES 11SP2 z domyślnym jądrem 3.0.58-0.6.6.
$ cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc
Wyłączyliśmy NTP , ale nie miało to żadnego wpływu na dryfy. Czy istnieją narzędzia mierzące przesunięcie zegara w ciągu dnia? Jak możemy tego uniknąć?
Są to platformy produkcyjne i nie możemy odtworzyć problemu w naszych laboratoriach, więc moja zdolność do eksperymentowania jest ograniczona. Jeśli zostawię to własnym urządzeniom, napiszę narzędzie do pomiaru dryfu i być może eksperymentuję ze źródłem zegarowym HPET.
ntpdate(8)
lubntpd(8)
).