Сабж: # uname -rmv 4.9.98-std-def-alt0.M80P.1 #1 SMP Sun May 6 17:54:08 UTC 2018 i686 # grep 'CONFIG_WDAT_WDT\|CONFIG_ITCO_WDT' /boot/config-$(uname -r) CONFIG_WDAT_WDT=m CONFIG_ITCO_WDT=m # LC_ALL=C grep -r . /sys/class/rtc/rtc0/ grep: /sys/class/rtc/rtc0/: No such file or directory # LC_ALL=C ls -l /dev/rtc{,0} ls: cannot access '/dev/rtc': No such file or directory ls: cannot access '/dev/rtc0': No such file or directory # dmesg | grep rtc [ 0.740734] rtc_cmos 00:01: RTC can wake from S4 [ 0.740747] rtc_cmos: probe of 00:01 failed with error -16 [ 0.742344] Using IPI No-Shortcut mode [ 0.743974] hctosys: unable to open rtc device (rtc0) # LC_ALL=C hwclock --debug hwclock from util-linux 2.30.2 Trying to open: /dev/rtc0 Trying to open: /dev/rtc Trying to open: /dev/misc/rtc No usable clock interface found. hwclock: Cannot access the Hardware Clock via any known method. Комментарий с сообщением о ошибке: https://bugzilla.kernel.org/show_bug.cgi?id=199033#c72 Аттачи acpidump dmidecode proc/ioports lsmod https://bugzilla.kernel.org/show_bug.cgi?id=199033#c73 https://bugzilla.kernel.org/show_bug.cgi?id=199033#c74 https://bugzilla.kernel.org/show_bug.cgi?id=199033#c75 https://bugzilla.kernel.org/show_bug.cgi?id=199033#c76 Сообщение о том, что ядро 4.4.131-std-pae-alt0.M80P.1 без CONFIG_WDAT_WDT работает прекрасно: https://bugzilla.kernel.org/show_bug.cgi?id=199033#c77
На трекере kernel.org говорят, что проблема в конфликте RTC и WDAT: https://bugzilla.kernel.org/show_bug.cgi?id=199033#c5 Альтовое ядро # uname -rmv 4.4.131-std-pae-alt0.M80P.1 #1 SMP Sun May 6 20:01:39 UTC 2018 i686 собрано без WDAT_WDT # grep 'CONFIG_WDAT_WDT\|CONFIG_ITCO_WDT' /boot/config-$(uname -r) CONFIG_ITCO_WDT=m и работает замечатьльно на Lenovo G50-80: - hwclock работает; - зависаний ядра нет.
Посмотрел на ядро из c8. С ним hwclock без CONFIG_WDAT_WDT тоже работает: # uname -rmv 4.4.116-std-def-alt0.M80C.1 #1 SMP Mon Feb 19 18:50:45 UTC 2018 i686 # grep 'CONFIG_WDAT_WDT\|CONFIG_ITCO_WDT' /boot/config-$(uname -r) CONFIG_ITCO_WDT=m # hwclock --debug hwclock из util-linux 2.30.2 Trying to open: /dev/rtc0 Using the rtc interface to the clock. Дата последней корректировки отклонения - 0 секунд после 1969 Дата последней калибровки - 0 секунд после 1969 Аппаратные часы выставлены по местному времени Подразумевается, что аппаратные часы выставлены по местному времени. Ожидается тиканье часов... ...получено тиканье часов Время, прочитанное с аппаратных часов: 2018/05/20 01:55:49 Аппаратное время: 2018/05/20 01:55:49 = 1526770549 секунд с 1969 Time since last adjustment is 1526770549 seconds Calculated Hardware Clock drift is 0.000000 seconds
Багрепорт переведён в статус critical из-за рандомного зависания ядер собранных с CONFIG_WDAT_WDT на Lenovo G50-80.
Мика Вестерберг предлагает опробовать патч Subject: [PATCH] ACPI / watchdog: Prefer iTCO_wdt always when WDAT table uses RTC SRAM https://bugzilla.kernel.org/show_bug.cgi?id=199033#c81 Может ли кто-то собрать на пробу ядро 4.9.100 с этим патчем, чтобы сообщить результат на kernel.org? Предпочтительно ядро i586.
Исправлено как минимум в ядре 4.9.105-std-def: # uname -rm 4.9.105-std-def-alt0.M80P.1 i686 # grep 'CONFIG_WDAT_WDT\|CONFIG_ITCO_WDT' /boot/config-$(uname -r) # CONFIG_WDAT_WDT is not set CONFIG_ITCO_WDT=m # uname -rm 4.9.110-std-def-alt0.M80P.1 i686 # grep 'CONFIG_WDAT_WDT\|CONFIG_ITCO_WDT' /boot/config-$(uname -r) # CONFIG_WDAT_WDT is not set CONFIG_ITCO_WDT=m # ls -l /dev/rtc* lrwxrwxrwx 1 root root 4 июл 12 10:17 /dev/rtc -> rtc0 crw------- 1 root root 252, 0 июл 12 10:17 /dev/rtc0
# uname -r 4.14.77-std-def-alt1 # ls -l /dev/rtc* ls: невозможно получить доступ к '/dev/rtc*': Нет такого файла или каталога # hwclock --localtime --debug hwclock из util-linux 2.30.2 Trying to open: /dev/rtc0 Trying to open: /dev/rtc Trying to open: /dev/misc/rtc Не найден пригодный часовой интерфейс. hwclock: Cannot access the Hardware Clock via any known method. https://bugzilla.kernel.org/show_bug.cgi?id=199033#c81 https://bugzilla.kernel.org/show_bug.cgi?id=199033#c88 https://bugzilla.kernel.org/show_bug.cgi?id=199033#c91
(В ответ на комментарий №6) > # uname -r > 4.14.77-std-def-alt1 > > > # ls -l /dev/rtc* > ls: невозможно получить доступ к '/dev/rtc*': Нет такого файла или каталога > > > # hwclock --localtime --debug > hwclock из util-linux 2.30.2 > Trying to open: /dev/rtc0 > Trying to open: /dev/rtc > Trying to open: /dev/misc/rtc > Не найден пригодный часовой интерфейс. > hwclock: Cannot access the Hardware Clock via any known method. > > > https://bugzilla.kernel.org/show_bug.cgi?id=199033#c81 > https://bugzilla.kernel.org/show_bug.cgi?id=199033#c88 > https://bugzilla.kernel.org/show_bug.cgi?id=199033#c91 В текущем сизифном, с такой конфигурацией /dev/rtc* исчезает # grep 'ITCO_WDT\|WDAT_WDT' /boot/config-4.14.77-std-def-alt1 CONFIG_WDAT_WDT=m CONFIG_ITCO_WDT=m На ядрах старее 4.18, где патча ещё нет, для CONFIG_WDAT_WDT требуется is not set и предпочитать ITCO_WDT чтобы не исчезал /dev/rtc* С такой конфигурацией, /dev/rtc* на месте (ядро из p8/branch) # grep 'ITCO_WDT\|WDAT_WDT' /boot/config-4.9.133-std-def-alt0.M80P.1 # CONFIG_WDAT_WDT is not set CONFIG_ITCO_WDT=m Ошибка проявляется на Lenovo G50-80, Z50-70 и аналогичных, где таблица WDAT использует RTC SRAM