amdgpu: занял основной экран после пробуждения

Вопрос или проблема

У меня ThinkPad P16s с AMD Ryzen 7 PRO 6850U с Radeon. У меня есть 4K экран, подключенный через HDMI. Уже 3 недели после пробуждения экран ноутбука (настроен как вторичный в Gnome) переходит в странное состояние, когда я перемещаю мышь, и все дергается и работает медленно, Top (htop не показывает) показывает:

 140433 root      20   0       0      0      0 R  98,7   0,0   0:14.61 kworker/u32:8+events_unbound                                                                                                                                                                                                                                                                                           
  35230 root      20   0       0      0      0 I   9,3   0,0   0:42.30 kworker/u32:6-kcryptd/252:0
Перед этим в dmesg появляются странные сообщения amdgpu:
[ 6215.156812] workqueue: dm_irq_work_func [amdgpu] занимал CPU более >10000us 4 раза, рекомендуется переключиться на WQ_UNBOUND
[ 6216.996927] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA
[ 6217.269430] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA
[ 9646.536454] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[ 9646.768666] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[ 9646.989117] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[ 9659.077699] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA
[ 9659.345705] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA
[14267.842920] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[14268.061385] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[14268.279567] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[14274.697601] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA
[14281.426218] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA
[14885.665938] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[14885.884067] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[14886.102141] amdgpu 0000:04:00.0: [drm] REG_WAIT тайм-аут 1us * 100000 попыток - optc1_wait_for_state строка:839
[14903.191883] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA
[14903.460739] [drm:parse_edid_cea_dmub.constprop.0 [amdgpu]] *ОШИБКА* Сбой анализатора EDID CEA

Я сообщил о проблеме https://bugs.launchpad.net/ubuntu/+source/linux-meta-hwe-6.8/+bug/2093268, но это не будет рассмотрено, пока кто-то еще не столкнется с этой же проблемой. Форумы других дистрибутивов показывают, что это происходит и у других людей с драйвером amdgpu.

Я пробовал amdgpu.runpm=0 amdgpu.vm_update_mode=3 в качестве решения, но это не сработало, проблема сохраняется, помогает только перезагрузка.

Загвоздка в том, что только все остальное замедляется, и движения мыши на экране HDMI становятся не плавными.

Я был бы рад понизить версию ядра, но я не знаю, на какую версию и природа этой проблемы и моя работа не позволяют мне провести вид разбиения версий ядра.

Предложения?

Ответ или решение

Проблема, описанная вами, связана с нештатным поведением драйвера amdgpu на вашем ноутбуке ThinkPad P16s с процессором AMD Ryzen 7 PRO 6850U и графикой Radeon. Эти проблемы проявляются при выходе из режима сна, что вызывает медлительность и нестабильность системы. Анализируя выходные данные журнала системных сообщений (dmesg), видим, что драйвер amdgpu генерирует ошибки, касающиеся обработки EDID-сигнала и тайм-аутов ожидания на уровне регистров. Ваша проблема имеет множество аспектов и потенциальных причин, так что давайте рассмотрим их более подробно.

Теория

  1. EDID и проблемы с HDMI: Современные дисплеи используют Extended Display Identification Data (EDID) для передачи информации о своих параметрах видеокарте. Ошибки при обработке EDID могут указывать на неисправности в канале передачи данных между ноутбуком и внешним монитором. Это может быть связано с несовместимыми настройками, неисправностью кабеля или багом в драйвере.

  2. Задержка выполнения задач (workqueue): amdgpu, как и многие другие драйверы, используют очереди задач ядра для обработки различных событий. Если задача занимает слишком много времени, это может указывать на проблемы производительности, вызванные, например, попыткой восстановления из спящего режима.

  3. Тайм-ауты регистрации состояний: Регистры карты могут терпеть тайм-ауты, что обычно указывает на низкоуровневую проблему взаимодействия между видеоадаптером и системой. Это может быть связано как с аппаратной, так и с программной стороной.

  4. Проблемы в ядре операционной системы: Обновления ядра могут иногда содержать изменения, которые влияют на работу драйверов и оборудования. Если проблема возникла после обновления, это может быть конфликт с новой версией ядра.

Пример

Вы упомянули, что пытались использовать загрузочные параметры amdgpu.runpm=0 и amdgpu.vm_update_mode=3, однако это не решило проблему. Это типичные параметры, которые пытаются управлять питанием и управлением памяти видеокарты, но они не всегда работают во всех ситуациях. Также вы отметили, что перезагрузка является временным решением, что подтверждает, что после свежего запуска системы проблема временно исчезает.

Применение

Исходя из вышесказанного, можно предложить несколько решений, которые могут помочь в устранении вашего вопроса:

  1. Обновление драйвера и программного обеспечения: Убедитесь, что у вас установлены последние версии драйверов amdgpu и обновления системы. Это может включать обновления через пакетные менеджеры дистрибутива или официальные сайты производителя.

  2. Проверка подключения: Проверьте HDMI-кабель и подключение. Попробуйте использовать другой порт HDMI, если это возможно, или замените кабель, чтобы исключить его неисправность.

  3. Диагностика через Live-дистрибутив: Загрузите систему с другого live-дистрибутива, например, последней версии Ubuntu, чтобы проверить, возникает ли проблема в чистой среде.

  4. Регрессия ядра: Попробуйте вернуться на более раннюю версию ядра, если подозреваете, что обновление вызвало проблему. Это можно сделать через диспетчер загрузки GRUB, но это требует осторожности и может потребовать резервного копирования данных.

  5. Сообщество и форумы: Как вы уже отметили, аналогичные проблемы возникают и у других пользователей. Стоит следить за форумами и баг-трекерами дистрибутива, возможно, вскоре будет выпущено исправление или предложено решение.

  6. Консультация с поддержкой: Если проблема критична и серьезно влияет на вашу рабочую деятельность, неплохо было бы связаться с технической поддержкой AMD или Lenovo, так как они могут предоставить дополнительные рекомендации или временные решения.

Наконец, стоит помнить, что графические драйверы являются сложными элементами системы, и проблемы с ними могут вызывать разнообразные и неожиданные проявления. Тщательная диагностика и системный подход к решению проблемы помогут вам быстрее ее исправить.

Оцените материал
Добавить комментарий

Капча загружается...