Вопрос или проблема
После недавнего обновления BIOS я испытываю значительную нестабильность системы на своем компьютере с Ubuntu 24.04. Система случайным образом перезагружается, а журналы показывают различные ошибки. Я надеюсь получить советы о том, как диагностировать и решить эти проблемы.
Информация о системе:
- ОС: Ubuntu 24.04 (Ранее Ubuntu 22.04 с той же проблемой)
- Ядро: 6.8.0-40-generic
- Материнская плата: Gigabyte Z790 GAMING X AX DDR5 LGA1700 (Rev 1.1)
- ЦП: Intel i7-13700k
- Версия BIOS: Обновлен до F11d (последняя) с сайта Gigabyte из-за проблем с микрокодом для процессоров Intel 13-го и 14-го поколений. Проблема началась после обновления до F11c, и F11d не решила ее.
- Дуальная загрузка: Windows и Ubuntu (Проблема не проявляется в Windows, по крайней мере, пока)
Описание проблемы:
С тех пор как я обновил BIOS, система стала случайным образом зависать, а журналы полны различных ошибок. Я попытался сбросить настройки BIOS до заводских, но проблема остается. Зависания происходят в случайные моменты, даже когда система простаивает, без запущенных приложений. Вот снимок ошибок, происходящих вскоре после загрузки:
$journalctl --since "2024-08-14 12:15:00" --until "2024-08-14 12:34:00" -p 0..3
sie 14 12:16:17 BMO kernel: i2c i2c-1: Неверный 7-битный I2C-адрес 0xffff
sie 14 12:16:18 BMO kernel: iwlwifi 0000:00:14.3: WRT: Неверное место назначения буфера
sie 14 12:16:18 BMO kernel:
sie 14 12:16:19 BMO kernel: Bluetooth: hci0: неправильно сформированное событие поставщика MSFT: 0x02
sie 14 12:16:19 BMO bluetoothd[1234]: profiles/sap/server.c:sap_server_register() Инициализация драйвера Sap не удалась.
sie 14 12:16:19 BMO bluetoothd[1234]: sap-server: Операция не разрешена (1)
sie 14 12:16:29 BMO gdm-password][2251]: gkr-pam: не удалось найти файл управления демонa
sie 14 12:16:32 BMO systemd[2295]: Не удалось запустить app-gnome-gnome\x2dkeyring\x2dpkcs11-2688.scope - Приложение, запущенное бинарным файлом gnome-session.
sie 14 12:16:32 BMO systemd[2295]: Не удалось запустить app-gnome-gnome\x2dkeyring\x2dsecrets-2685.scope - Приложение, запущенное бинарным файлом gnome-session.
sie 14 12:16:32 BMO systemd[2295]: Не удалось запустить app-gnome-gnome\x2dkeyring\x2dssh-2682.scope - Приложение, запущенное бинарным файлом gnome-session.
sie 14 12:16:32 BMO systemd[2295]: Не удалось запустить app-gnome-snap\x2duserd\x2dautostart-2942.scope - Приложение, запущенное бинарным файлом gnome-session.
sie 14 12:16:32 BMO systemd[2295]: Не удалось запустить app-gnome-user\x2ddirs\x2dupdate\x2dgtk-2950.scope - Приложение, запущенное бинарным файлом gnome-session.
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
sie 14 12:16:33 BMO kernel: [drm:nv_drm_master_set [nvidia_drm]] *ОШИБКА* [nvidia-drm] [GPU ID 0x00000100] Не удалось захватить права на режим
Принятые до сих пор меры по устранению неполадок:
- I2C: Запуск i2cdetect -y -r 1 показывает устройство по адресу 0x48, но ошибка Неверный 7-битный I2C-адрес 0xffff сохраняется.
sudo i2cdetect -y -r 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- 48 -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
- WiFi: WiFi-карта Intel (iwlwifi 0000:00:14.3: WRT: Неверное место назначения буфера) продолжает показывать ошибки, даже с обновленными драйверами.
- Bluetooth: Переустановка bluez не решила ошибки Bluetooth, связанные с неправильно сформированными событиями поставщика MSFT.
- GNOME Keyring: Несколько компонентов GNOME Keyring не запускаются, что влияет на другие системные процессы.
- NVIDIA DRM: Модуль DRM для NVIDIA (nv_drm_master_set) не может захватить права на режим, что может вызывать графическую нестабильность.
- Memtest86+: Тест прошел без ошибок, так что проблемы с ОЗУ маловероятны.
- Температуры: Я внимательно слежу за температурами компонентов, и ни один из них не перегревается.
Дополнительная информация:
- Дуальная загрузка: У меня есть система двойной загрузки с Windows, и эта проблема не возникает в Windows (по крайней мере, пока).
- Сброс BIOS: Я сбросил BIOS до заводских настроек, но проблема сохраняется.
- Случайные перезагрузки Ubuntu: Система сама перезагружается случайным образом, даже когда она простаивает без запущенных приложений.
- Предыдущая версия Ubuntu: Проблема началась на Ubuntu 22.04 после обновления BIOS, поэтому я переустановил Ubuntu 24.04, но проблема остается.
Запрос о помощи:
Я ищу:
- Руководство по определению того, какие из этих ошибок могут вызывать перезагрузки системы.
- Могло ли обновление BIOS привести к несовместимости оборудования или микропрограммы с текущим ядром Ubuntu?
- Какие шаги я могу предпринять, чтобы изолировать, является ли это аппаратной или программной проблемой?
Кто-нибудь сталкивался с похожими проблемами после обновления BIOS, и если да, то как они были решены? Буду признателен за любые идеи или предложения!
Заранее спасибо!
Я пытался устранить аналогичную проблему здесь. Я пишу здесь, потому что ваша проблема выглядит достаточно близкой к моей, и я, возможно, нашел решение (“возможно”, потому что вы никогда не можете быть уверены, что случайная перезагрузка не произойдет). Однако, пожалуйста, обратите внимание на различия в наших системах ниже.
Информация о системе
- ОС: EndeavourOS (ISO установщика от 2024.06.25)
- Ядро: от
6.10.3-arch1-2
до6.10.8-arch1-1
- Материнская плата: Gigabyte Z790 Gaming X AX (Rev. 1.1)
- Версия BIOS: F11c, F11d
- ЦП: Intel i5-13600K
- Дуальная загрузка: Нет Windows
- Оперативная память: Patriot Viper Venom 2x32GB DDR5-5200 CL40
- Новый настольный компьютер со всеми новыми комплектующими
Симптомы
- Система просто выключается в один момент и немедленно перезагружается в случайное время. Обычно это происходит через несколько часов после загрузки системы, но я также наблюдал 4 минуты и 17 часов.
- Журнал системы за последнюю сессию (где произошла перезагрузка) не показывает полезной информации о том, что произошло перед перезагрузкой.
- Журнал системы показывает те же сообщения об ошибках о I2C-адресе, буфере WiFi WRT и Bluetooth MSFT при запуске системы. У меня не установлен GNOME Keyring, и мой модуль NVIDIA не сообщает об ошибках. (Я на самом деле не уверен, связаны ли эти ошибки с перезагрузками).
- Я всегда мониторю систему с помощью
btop
, и все выглядит нормально, включая температуры. - Стресс-тесты, такие как
memtest86+
,stress
,vkmark
иmprime
, проходят успешно в течение длительного времени. Перезагрузки происходят только тогда, когда система в основном простаивает. - Перезагрузки происходили на: ISO установщика, btrfs, ext4.
- Перезагрузки происходили в: tty, KDE, Hyprland, river.
Что сработало
Отключите некоторые из более высоких c-состояний. Вот некоторые способы сделать это:
- Добавьте
intel_idle.max_cstate=<число>
в параметры загрузки ядра. Значение для<число>
должно быть целым числом от 0 до 9. - Отключите некоторые c-состояния в настройках BIOS материнской платы. На странице расширенных настроек выберите Tweaks > Advanced CPU Settings > C State Control. Когда вы измените его на
Enabled
, появится больше параметров сразу под ними.
Безопасный лимит, который я нашел, составляет до C7. Это означает:
- установить параметр загрузки
intel_idle.max_cstate=7
; или - настроить параметры BIOS:
- Поддержка C8 State:
Disabled
- Поддержка C10 State:
Disabled
- Ограничение C State Package:
C7s
- Поддержка C8 State:
Поскольку у вас есть система двойной загрузки с Windows, я рекомендую первый метод (параметр загрузки ядра). Это связано с тем, что ограничение более высоких C-состояний фактически предотвращает процессор от перехода в более энергосберегающие состояния, когда работы немного. Поскольку все работает нормально в Windows, там лучше разрешить все C-состояния.
Почему это происходит?
Хотя у меня нет окончательного ответа, у меня есть предположение, которое я считаю достаточно уверенным, чтобы поделиться им на данный момент. Это, похоже, проблема с микропрограммным обеспечением материнской платы, потому что:
- Я пытался изменить различные параметры в настройках BIOS материнской платы, включая функции и напряжения ЦП, но ничего из этого не сработало, кроме прямого отключения c-состояний;
- Я также пробовал различные параметры ядра, связанные с управлением питанием, но не нашел ничего, что работало бы, кроме ограничения c-состояний;
- Я сам установил Windows и проверял, что перезагрузки там не происходят (хотя это случалось один раз до подключения к интернету и получения обновлений и драйверов);
- версии BIOS, которые у нас есть, являются бета-версиями;
- некоторые сообщения и комментарии на сабреддите r/gigabyte упоминали, что Intel может выпустить еще одно обновление микрокода в конце этого месяца, которое должно быть “правильным” исправлением для проблемы с избыточным напряжением, и Gigabyte может загрузить “правильную” версию BIOS с исправлением после этого; и
- я столкнулся с этой страницей на вики Arch Linux, где я узнал, что возможно, что у некоторых материнских плат микропрограммное обеспечение имеет неправильно сформированные (или только сделанные и протестированные для Windows) таблицы ACPI, и пользователи могут попытаться исправить это при необходимости, что, как я думаю, также может быть причиной того, что мой настольный компьютер не может перейти в спящий режим по RAM, но я отвлекся.
Таким образом, в основном, предполагая, что я обвиняю в этом правую вещь, микропрограммное обеспечение материнской платы, предоставленное Gigabyte, ошибочно для Linux. Но, как я уже сказал, у меня нет никаких доказательств или улик, поэтому, пожалуйста, не принимайте это за правду. Я могу попробовать декомпилировать и изучить таблицы ACPI в микропрограмме, но я уже потратил слишком много времени на эту проблему. Тем не менее, я могу это сделать, если следующая версия BIOS также покажет ту же проблему…
Та же проблема здесь. У меня это произошло только 4 раза с момента установки (15 дней работы), я не помню, когда это началось или из-за какого обновления, но сегодня был последний раз, и я начал расследование. Я принесу больше данных в следующий раз, когда это произойдет.
- ОС: Ubuntu 24.04 (новое оборудование только что установлено)
- Ядро: 6.8.0-41-generic
- Материнская плата: Gigabyte Z790 UD AX, ЦП: Intel Core i9-14900K
- Версия BIOS: F11d
- Оперативная память: 96 ГБ (2×48 ГБ) DDR5 6000MT/s / x2 Channel
- Дуальная загрузка: Пока нет, но скоро установлю Windows
Похожие сообщения, как у вас, выше о I2C, WiFi, BT, Nvidia DRM.
Кроме Gnome. Ничего не сообщается о Gnome.
- Температура в норме.
- Только что завершил Memtest86 без ошибок.
Похожие сообщения видны здесь и здесь, но не помогают в моем случае.
Система довольно стабильна, кроме этой проблемы.
Ответ или решение
Проблема нестабильности системы Ubuntu 24.04 после обновления BIOS является достаточно распространенной и может быть вызвана различными факторами, включая несовместимость оборудования, настройки BIOS или программное обеспечение. Ваша ситуация особенно интересна из-за сочетания ошибок и сбойной работы системы, поэтому давайте попробуем модулировать возможные пути её решения.
Основные шаги для устранения проблемы:
-
Проверка обновлений BIOS:
- Поскольку вы используете бета-версии BIOS (F11c и F11d), рекомендуется проверить на сайте Gigabyte наличие более новых стабильных версий BIOS. Иногда производители исправляют ошибки и улучшают совместимость с Linux в новых релизах.
-
Настройки C-States:
- Как упомянуто в вашем вопросе и отзывах других пользователей, проблема может быть связана с высокими состояниями мощности (c-states). Попробуйте отключить или ограничить эти состояния в настройках BIOS:
- Перейдите в BIOS -> "Tweaks" -> "Advanced CPU Settings" и измените параметры C-State Control:
- Отключите поддержку C8 и C10.
- Установите лимит состояния пакета на C7.
- Попробуйте также добавить параметры загрузки ядра:
intel_idle.max_cstate=7
- Как упомянуто в вашем вопросе и отзывах других пользователей, проблема может быть связана с высокими состояниями мощности (c-states). Попробуйте отключить или ограничить эти состояния в настройках BIOS:
-
Проверка и обновление драйверов:
- Убедитесь, что у вас установлены последние версии драйверов для вашего оборудования, особенно для Wi-Fi и NVIDIA. Используйте следующую команду для обновления системы:
sudo apt update && sudo apt upgrade
- Если проблемы продолжаются, рассмотрите возможность установки драйверов на основе PPA для NVIDIA:
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update sudo apt install nvidia-driver-xxx # замените "xxx" на последнюю версию
- Убедитесь, что у вас установлены последние версии драйверов для вашего оборудования, особенно для Wi-Fi и NVIDIA. Используйте следующую команду для обновления системы:
-
Исследование логов:
- Продолжайте изучать логи системы с помощью команды
journalctl
. Уделите внимание строкам с уровнями критических и ошибок (0..3). Ошибки, связанные с I2C и Bluetooth, могут указывать на несовместимые устройства или драйверы, которые вам следует изучить.
- Продолжайте изучать логи системы с помощью команды
-
Аппаратная проверка:
- Проверьте очень внимательно соединения и компоненты внутри системного блока. Иногда проблемы могут возникать из-за плохих контактов, особенно у новых сборок. Убедитесь, что все компоненты надежно подключены, и выполните очистку от пыли.
-
Тесты на стабильность:
- Если у вас все еще возникают проблемы, проведите стресс-тесты других компонентов системы, таких как процессор и блок питания, с помощью таких утилит, как
stress
илиPrime95
.
- Если у вас все еще возникают проблемы, проведите стресс-тесты других компонентов системы, таких как процессор и блок питания, с помощью таких утилит, как
-
Дуальная загрузка и тестирование Windows:
- Если у вас установлена Windows, следите за тем, возникают ли у вас сбои после запуска Windows, это может подтвердить или опровергнуть наличие аппаратной проблемы.
Дополнительные шаги:
-
Сообщество и форумы:
- Поскольку вы не одни в этом вопросе, попробуйте пообщаться с другими пользователями на форумах сообщества Ubuntu и Gigabyte. Возможно, кто-то уже нашел решение вашей проблемы, которое будет несомненно полезным.
-
Обратитесь к производителю:
- Если ничего из вышеперечисленного не поможет, целесообразно обратиться в службу технической поддержки Gigabyte, описав им вашу проблему.
Заключение:
Следуя перечисленным рекомендациям, вы сможете найти причины нестабильности вашей системы. Важно проводить шаги один за другим и наблюдать, как это влияет на систему. Это даст вам точное понимание, что именно вызвало проблему, и как её можно устранить. Если после всех проверок проблема все ещё сохраняется, возможно, стоит подумать о возврате к предыдущей версии BIOS или поискать альтернативные решения, такие как смена материнской платы, если это возможно.
Здравствуйте! У меня была схожая проблема после обновления BIOS на моей материнской плате Gigabyte Z790. Система на Ubuntu 24.04 начала случайно перезагружаться, и логи были заполнены ошибками, похожими на ваши. После множества экспериментов мне удалось найти решение, которое полностью стабилизировало систему.
Вот шаги, которые помогли мне:
Ограничение C-состояний процессора. В BIOS я отключил поддержку высоких C-состояний, таких как C8 и C10. Для этого зайдите в BIOS и перейдите по пути: Tweaker > Advanced CPU Settings > C State Control. Установите C States в положение Enabled, после чего появятся дополнительные настройки. Отключите C8 State Support и C10 State Support, а также установите Package C State Limit на C7. Это предотвратило переход процессора в глубокие режимы энергосбережения, которые вызывали нестабильность.
Добавление параметра загрузки ядра. В файле конфигурации GRUB я добавил параметр
intel_idle.max_cstate=7
. Это делается путем редактирования файла/etc/default/grub
и добавления параметра в строкуGRUB_CMDLINE_LINUX_DEFAULT
. Не забудьте после этого выполнитьsudo update-grub
для применения изменений.Откат версии BIOS. Поскольку текущие версии BIOS F11c и F11d являются бета-версиями, я вернулся к стабильной версии F10. Это также помогло устранить некоторые ошибки, связанные с несовместимостью микропрограммного обеспечения.
Почему это работает:
Высокие C-состояния могут быть неправильно реализованы в бета-версиях BIOS, что приводит к некорректной работе системы под Linux.
Ограничение C-состояний предотвращает переход процессора в режимы глубокого сна, которые могут быть нестабильными из-за ошибок в микрокоде или BIOS.
Поскольку проблема не возникает в Windows, это указывает на специфическую несовместимость между текущим BIOS и ядром Linux.
Рекомендации:
Всегда используйте стабильные версии BIOS, если только бета-версия не исправляет критическую для вас проблему.
Следите за обновлениями от Gigabyte; возможно, они выпустят исправленную версию BIOS с полной поддержкой Linux.
Сообщите о проблеме в службу поддержки Gigabyte и на форумах Ubuntu, чтобы ускорить процесс решения на уровне производителей.
Надеюсь, мой опыт будет вам полезен и поможет вернуть стабильность вашей системе!