Индикатор-мультизагрузка на 100% CPU после отключения питания
Я на Dell Latitude 3440 использую Ubuntu 16.04 LTS 64-bit. Всякий раз, когда я отсоединяю вилку от ноутбука, система почти зависает indicator-multiload
занимает 100% процессорного времени. Когда я убью indicator-multiload
система возвращается в нормальное состояние - почти, потому что некоторые действия (особенно Chrome) более медленные, чем до остановки. Когда я перезапущу indicator-multiload
он снова загружается на 100%. Поэтому я подозреваю, что проблема может быть связана с acpi или прерываниями, но у меня нет навыков, чтобы правильно ее диагностировать. Такое поведение не наблюдалось в Ubuntu 15.10.
1 ответ
Такое поведение вызвано ошибкой ядра управления питанием, связанной с функцией Wake-on-LAN в Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (версия 10). Когда шнур питания отключен (а иногда и когда шнур Ethernet отключен), ядро зацикливается на попытках ACPI, почти замораживая ноутбук и заполняя системный журнал следующими сообщениями:
r8169 0000:07:00.0 eth0: rtl_counters_cond == 1 (loop: 1000, delay: 10).
Более техническое описание, ссылки на отчеты об ошибках и предлагаемый патч находятся здесь: https://patchwork.ozlabs.org/patch/586315/.
До выпуска обновленного ядра, похоже, не существует постоянного решения, но как обходной путь перезагрузка модуля r8169, кажется, помогает:
sudo rmmod r8169 && sleep 5 && sudo modprobe r8169
Это должно выполняться после каждого отключения питания. В качестве альтернативы, если вы можете жить без Ethernet, r8169 может быть помещен в черный список, что не позволяет ядру загрузить его при загрузке.