LINUX.ORG.RU

Драйвер amdgpu при загрузке приводит к чёрному экрану.

 , , ,


0

1

Итог/решение

Описание проблемы

Если amdgpu внести в чёрный список и потом грузить с помощью modprobe то он переключает режим монитора и далее чёрный экран, который со временем переходит в засыпание монитора.

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

Пока я гашение экрана не отключил долгое пребывание компьютера с выключенным экраном приводило к повисанию иксов.

При этом в обоих случаях не смотря на то, что экран не работает консоль остаётся рабочей, можно в слепую набирать и отдавать команды.
Но при этом корманда service xdm stop исправить ситуацию не помогает, экран всё так же остаётся чёрным.

Видеокарта AMD Baffin [Polaris 11](rev cf)
Ядро 5.6.0-0.bpo.2-amd64
Чипсет NVIDIA MCP78S [GeForce 8200]
Процессор Atlon II X2 260 Stepping 3 famili 16 microcode 0x10000b6
ОС Devuan Beowulf

Задавайте вопросы, на что смогу отвечу, если надо логи указывайте где они должны лежать, вечером опубликую.

★★★★★

Последнее исправление: torvn77 (всего исправлений: 5)

Проверяешь работоспособность музейного экспоната? :)

Там емкости еще не высохли/вздулись? БП нормальный?

Если есть доступ по сети через ssh, то посмотри, может в dmesg видна ругань.

Гугление говоит, что MCP78S с интегрированной видяхой. Может есть конфликт между amd & nvidia

vel ★★★★★
()
Ответ на: комментарий от vel

Гугление говоит, что MCP78S с интегрированной видяхой. Может есть конфликт между amd & nvidia

У меня её нет, да и работает он давно на кухне, а глюк появился на этой неделе.

ssh нет, но если перегрузится с nomodesetting то консоль работает нормально(иксы не хотят без модесеттинга), так что если скажешь где логи то посмотрю.

БП новый избыточный.
Думаю и с конденсаторами всё в порядке, иначе комп бы у меня вис целиком, а не только видеокарта, да и материнка у меня ультрадурбельный гигабайт.
Из таких проблем есть только то, что видеокарта не имеет отдельных коннекторов питания и питается только через материнку.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от torvn77

работает он давно на кухне, а глюк появился на этой неделе.

если сам по себе, не после обновления дров - копать в сторону железа. конденсаторы, перегрев, окислившиеся контакты, шлакоБП помирает (тот самый «с избыточностью», которая может оказаться только красивыми циферками на наклейке)…

NiTr0 ★★★★★
()
Ответ на: комментарий от NiTr0

С чего БП помирать, если я его нагружаю максимум на половину при максимальной загрузке ПК?

И вообще, если бы проблема была в конденсаторах и т.п. то глюки бы происходили по любому поводу, а не исключительно только при modprobe amdgpu

А так обновления у меня прописаны в cron, первое обновление в пять утра, второе дожимающее в два(?) часа дня.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от torvn77

Если это проблема драйверов и ядра, то что мешает загрузить старую, рабочую версию?

Там сом-порт есть? сериальную консоль есть чем изобразить?

vel ★★★★★
()
Ответ на: комментарий от vel

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

С ядром поэксперементерую когда буду дома и ещё надо учитывать то, что мне кажется что amdgpu устанавливается отдельным пакетом.
Надо будет это проверить.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от torvn77

Ну если иксы обновились, тогда даунгрейд может оказаться очень непростым.

Ядро с драйверам - у разумных людей в одном пакете. xorg-сервер и драйвера для xorg-сервера обычно в разных пакетах.

Я бы после погасания экрана посмотрел dmesg.

А с другой стороны, все сообщения ядра в syslog обычно пишутся.

У xorg обычно лог в /var/log/Xorg.0.log

После modprobe amdgpu не пробовал запускать X-сервер через «startx» (если таковой имеется)?

На видеокарте несколько выходов? В конфиге xorg порт монитора прописан явно?

vel ★★★★★
()

Если amdgpu внести в чёрный список и потом грузить с помощью modprobe

Ошибка в этом, не вноси в чёрный список.

anonymous
()

Зачем для раритета брать «последнее» ядро?

Ну в девуане я столько глюков собрал, что уже решил, что снесу его, как только время найду.

Ну и firmware-amd-graphics конечно установлен ?

vtVitus ★★★★★
()
Последнее исправление: vtVitus (всего исправлений: 1)
Ответ на: комментарий от vtVitus

Зачем для раритета брать «последнее» ядро?

Он в эту развалину засунул Radeon Vega.

anonymous
()
Ответ на: комментарий от anonymous

Если amdgpu внести в чёрный список и потом грузить с помощью modprobe

Ошибка в этом,

без этого чёрный экран будет сразу в процессе инициализации системы.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от vel

У xorg обычно лог в /var/log/Xorg.0.log

До иксов дело не доходит, чёрный экран получается сразу как после загрузки amdgpu.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от xDShot

По крайней мере пакет с амдшной фирмварью стоит.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от torvn77

С чего БП помирать, если я его нагружаю максимум на половину при максимальной загрузке ПК?

если кондеры в БП - шлак, они помирают просто от того что лежат на полке, да. были у меня такие капсконы например - за 3 года опухли от лежания в пакетике.

И вообще, если бы проблема была в конденсаторах и т.п. то глюки бы происходили по любому поводу, а не исключительно только при modprobe amdgpu

внезапно - драйвер инициализирует видеоядро, включая установку частоты ядра/памяти (не факт что сразу на минимум сбрасывает), перевод всего этого бардака в графический режим с аппаратным ускорением отрисовки, и т.п. плюшки. а так - да, больше драйвер совсем ни при чем :)

к слову, видяхи с умершей шиной памяти (те, что полосят) без подгрузки драйвера прекрасно себя чувствуют, даже через VESA рисуют картинку; после подгрузки драйвера - сразу же вешаются.

NiTr0 ★★★★★
()
Ответ на: комментарий от vel

Если это проблема драйверов и ядра, то что мешает загрузить старую, рабочую версию?

Загрузка старого ядра 4.19 не помогла.

На ядре 5.6 после команды modprobe amdgpu в dmesg появилось это:


[   75.792490] [drm] amdgpu kernel modesetting enabled.
[   75.792713] CRAT table not found
[   75.792758] Virtual CRAT table created for CPU
[   75.792814] Parsing CRAT table with 1 nodes
[   75.792870] Creating topology SYSFS entries
[   75.792938] Topology: Add CPU node
[   75.792981] Finished initializing topology
[   75.794824] checking generic (d0000000 180000) vs hw (d0000000 10000000)
[   75.794836] fb0: switching to amdgpudrmfb from VESA VGA
[   75.795328] Console: switching to colour dummy device 80x25
[   75.795381] amdgpu 0000:02:00.0: vgaarb: deactivate vga console
[   75.805851] [drm] initializing kernel modesetting (POLARIS11 0x1002:0x67FF 0x1462:0x8A91 0xCF).
[   75.805886] [drm] register mmio base: 0xFBD80000
[   75.805888] [drm] register mmio size: 262144
[   75.805896] [drm] PCIE atomic ops is not supported
[   75.805907] [drm] add ip block number 0 <vi_common>
[   75.805910] [drm] add ip block number 1 <gmc_v8_0>
[   75.805912] [drm] add ip block number 2 <tonga_ih>
[   75.805915] [drm] add ip block number 3 <gfx_v8_0>
[   75.805917] [drm] add ip block number 4 <sdma_v3_0>
[   75.805920] [drm] add ip block number 5 <powerplay>
[   75.805922] [drm] add ip block number 6 <dm>
[   75.805925] [drm] add ip block number 7 <uvd_v6_0>
[   75.805927] [drm] add ip block number 8 <vce_v3_0>
[   75.805934] kfd kfd: skipped device 1002:67ff, PCI rejects atomics
[   75.806191] resource sanity check: requesting [mem 0x000c0000-0x000dffff], which spans more than pnp 00:04 [mem 0x000ce800-0x000cffff]
[   75.806201] caller pci_map_rom+0x6a/0x17d mapping multiple BARs
[   75.806205] amdgpu 0000:02:00.0: No more image in the PCI ROM
[   75.807023] ATOM BIOS: 113-C98121-H01
[   75.807053] [drm] UVD is enabled in VM mode
[   75.807055] [drm] UVD ENC is enabled in VM mode
[   75.807059] [drm] VCE enabled in VM mode
[   75.807105] [drm] vm size is 64 GB, 2 levels, block size is 10-bit, fragment size is 9-bit
[   75.810362] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_k_mc.bin
[   75.810399] amdgpu 0000:02:00.0: VRAM: 4096M 0x000000F400000000 - 0x000000F4FFFFFFFF (4096M used)
[   75.810408] amdgpu 0000:02:00.0: GART: 256M 0x000000FF00000000 - 0x000000FF0FFFFFFF
[   75.810429] [drm] Detected VRAM RAM=4096M, BAR=256M
[   75.810433] [drm] RAM width 128bits GDDR5
[   75.811180] [TTM] Zone  kernel: Available graphics memory: 2016404 KiB
[   75.811185] [TTM] Initializing pool allocator
[   75.811192] [TTM] Initializing DMA pool allocator
[   75.811254] [drm] amdgpu: 4096M of VRAM memory ready
[   75.811261] [drm] amdgpu: 2953M of GTT memory ready.
[   75.811283] [drm] GART: num cpu pages 65536, num gpu pages 65536
[   75.811794] [drm] PCIE GART of 256M enabled (table at 0x000000F400300000).
[   75.813182] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_pfp_2.bin
[   75.814154] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_me_2.bin
[   75.814684] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_ce_2.bin
[   75.814703] [drm] Chained IB support enabled!
[   75.815365] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_rlc.bin
[   75.816980] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_mec_2.bin
[   75.818613] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_mec2_2.bin
[   75.820464] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_sdma.bin
[   75.820922] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_sdma1.bin
[   75.821111] amdgpu: [powerplay] hwmgr_sw_init smu backed is polaris10_smu
[   75.825597] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_uvd.bin
[   75.825619] [drm] Found UVD firmware Version: 1.130 Family ID: 16
[   75.829989] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_vce.bin
[   75.830010] [drm] Found VCE firmware Version: 53.26 Binary ID: 3
[   75.833241] amdgpu 0000:02:00.0: firmware: direct-loading firmware amdgpu/polaris11_k_smc.bin
[   75.907525] [drm] DM_PPLIB: values for Engine clock
[   75.907535] [drm] DM_PPLIB:	 214000
[   75.907537] [drm] DM_PPLIB:	 387000
[   75.907540] [drm] DM_PPLIB:	 843000
[   75.907542] [drm] DM_PPLIB:	 1011000
[   75.907545] [drm] DM_PPLIB:	 1080000
[   75.907547] [drm] DM_PPLIB:	 1126000
[   75.907549] [drm] DM_PPLIB:	 1168000
[   75.907551] [drm] DM_PPLIB:	 1196000
[   75.907554] [drm] DM_PPLIB: Validation clocks:
[   75.907557] [drm] DM_PPLIB:    engine_max_clock: 119600
[   75.907560] [drm] DM_PPLIB:    memory_max_clock: 175000
[   75.907563] [drm] DM_PPLIB:    level           : 8
[   75.907567] [drm] DM_PPLIB: values for Memory clock
[   75.907569] [drm] DM_PPLIB:	 300000
[   75.907572] [drm] DM_PPLIB:	 625000
[   75.907574] [drm] DM_PPLIB:	 1750000
[   75.907576] [drm] DM_PPLIB: Validation clocks:
[   75.907579] [drm] DM_PPLIB:    engine_max_clock: 119600
[   75.907582] [drm] DM_PPLIB:    memory_max_clock: 175000
[   75.907584] [drm] DM_PPLIB:    level           : 8
[   75.907722] [drm] Display Core initialized with v3.2.69!
[   75.918515] snd_hda_intel 0000:02:00.1: bound 0000:02:00.0 (ops amdgpu_dm_audio_component_bind_ops [amdgpu])
[   75.924439] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[   75.924460] [drm] Driver supports precise vblank timestamp query.
[   75.963583] [drm] UVD and UVD ENC initialized successfully.
[   76.063532] [drm] VCE initialized successfully.
[   76.063972] amdgpu 0000:02:00.0: [drm] Cannot find any crtc or sizes
[   76.068318] [drm] Initialized amdgpu 3.36.0 20150101 for 0000:02:00.0 on minor 0

Ну и чёрный экран.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от NiTr0

к слову, видяхи с умершей шиной памяти (те, что полосят) без подгрузки драйвера прекрасно себя чувствуют, даже через VESA рисуют картинку; после подгрузки драйвера - сразу же вешаются.

Вообще возможно, ранее у меня были сложности в работе браузеров с видеоускорением, хотя openmw работал нормально, да и артефвктов небыло.
А так да, у меня тоже создаётся такое впечатление, но с другой стороны я вот выше привёл лог dmesg, так там сообщений о ошибках нету.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от torvn77

[ 76.063972] amdgpu 0000:02:00.0: [drm] Cannot find any crtc or sizes

ошибка очевидно здесь, drm и/или amdgpudrmfb не может в монитор - чего-то ему не нравится.

возможно связанный баг - https://bugs.freedesktop.org/show_bug.cgi?id=107668 (он же https://gitlab.freedesktop.org/drm/amd/-/issues/490)

dhampire ★★★
()
Последнее исправление: dhampire (всего исправлений: 3)
Ответ на: комментарий от torvn77

amdgpu 0000:02:00.0: [drm] Cannot find any crtc or sizes

Разрешайку в явном виде задай.

Почему она не определилась - 3 варианта

1. В конфиге после обновления были удалены нужные строки

2. сломали в драйверах чтение EDID/DDC

3. Кабельно-контактные проблемы

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Ответ на: комментарий от vel
  1. Конфига у меня нет, или я его не трогал.
  2. Я воспользовался советом два из поста @Slaviro рабочий стол показывается, но иногда мигает.
    Но если переключится в консоль то переходит в чёрный экран, который при переключении обратно на иксы уже не восстанавливается, а так и остаётся.
  3. Если при запущенных иксах монитор потрясти, то он может на время погаснуть.
    Если ОС загружена с nomodesetting и иксы незапущены то экран не гаснет, но могут появлятся красные полосы шириной в один пиксель.
    Проверю с новым кабелем.

Добавлено: После замены кабеля работа нормализовалась.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 3)
Ответ на: комментарий от torvn77

Если при запущенных иксах монитор потрясти, то он может на время погаснуть.

Если ОС загружена с nomodesetting и иксы незапущены то экран не гаснет, но могут появлятся красные полосы шириной в один пиксель.

Это практически прямо указывало на проблемы с кабелем (ну если монитор в другом системнике ведёт себя нормально, разумеется)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.