Bug 39948 - grub нарушает вывод видеосигнала (черный экран до следующей перезагрузки)
Summary: grub нарушает вывод видеосигнала (черный экран до следующей перезагрузки)
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: grub (show other bugs)
Version: unstable
Hardware: aarch64 Linux
: P5 normal
Assignee: Николай Костригин
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-04-16 11:37 MSK by Alexey Sheplyakov
Modified: 2021-11-01 17:13 MSK (History)
12 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Sheplyakov 2021-04-16 11:37:02 MSK
После установки ОС (Simply Linux) на моноблоке "Эдельвейс" [1] не отображается меню grub. Вместо этого - черный экран, т.е. встроенный монитор переключается в режим ожидания. После загрузки ядра монитор остается в режиме ожидания до следующей перезагрузки. В логе ядра появляются сообщения

[ 2408.382973] Hardware name: Baikal Electronics Baikal-M mitx board (DT)
[ 2408.382977] pstate: 80000005 (Nzcv daif -PAN -UAO)
[ 2408.382981] pc : drm_atomic_helper_wait_for_vblanks.part.26+0x2a4/0x2b0
[ 2408.382985] lr : drm_atomic_helper_wait_for_vblanks.part.26+0x2a4/0x2b0
[ 2408.382987] sp : ffff800012d6b940
[ 2408.382990] x29: ffff800012d6b940 x28: 0000000000022fb0 
[ 2408.382994] x27: ffff00093f804980 x26: 0000000000000000 
[ 2408.382998] x25: 0000000000000000 x24: ffff0009722c6800 
[ 2408.383002] x23: 0000000000000001 x22: 0000000000000038 
[ 2408.383006] x21: 0000000000000001 x20: ffff00096fff24f8 
[ 2408.383009] x19: 0000000000000000 x18: ffffffffffffffff 
[ 2408.383012] x17: 0000000000000000 x16: 0000000000000000 
[ 2408.383015] x15: ffff8000110885c8 x14: ffff80001120ff70 
[ 2408.383019] x13: ffff80001120fb98 x12: 0000003c00000000 
[ 2408.383022] x11: ffff8000110a5000 x10: ffff8000111ed000 
[ 2408.383025] x9 : 0000000000000000 x8 : ffff800011202f0b 
[ 2408.383028] x7 : 0000000000000000 x6 : 0000000000000001 
[ 2408.383032] x5 : 0000000000000000 x4 : 0000000000000001 
[ 2408.383035] x3 : 0000000000000007 x2 : 0000000000000006 
[ 2408.383038] x1 : 7279fdc52803da00 x0 : 0000000000000000 
[ 2408.383041] Call trace:
[ 2408.383047]  drm_atomic_helper_wait_for_vblanks.part.26+0x2a4/0x2b0
[ 2408.383050]  drm_atomic_helper_commit_tail+0x68/0x80
[ 2408.383054]  commit_tail+0x10c/0x118
[ 2408.383057]  drm_atomic_helper_commit+0xdc/0x158
[ 2408.383063]  drm_atomic_commit+0x54/0x60
[ 2408.383069]  drm_client_modeset_commit_atomic.isra.11+0x180/0x1f0
[ 2408.383073]  drm_client_modeset_commit_force+0x68/0x1a0
[ 2408.383078]  drm_fb_helper_pan_display+0xe8/0x1e0
[ 2408.383085]  fb_pan_display+0xc4/0x160
[ 2408.383088]  do_fb_ioctl+0x344/0x650
[ 2408.383091]  fb_ioctl+0x5c/0x78
[ 2408.383096]  do_vfs_ioctl+0xc8/0xa40
[ 2408.383099]  ksys_ioctl+0x50/0x80
[ 2408.383102]  __arm64_sys_ioctl+0x28/0xb8
[ 2408.383108]  el0_svc_common.constprop.3+0x74/0x170
[ 2408.383110]  el0_svc_handler+0x80/0xa0
[ 2408.383115]  el0_svc+0x8/0x1fc
[ 2408.383118] ---[ end trace 80e9557d5ce8a379 ]---

А через полчаса -- час система зависает намертво.

На этом месте может возникнут вопрос "а при чем здесь grub"?
По умолчанию grub переключает видеорежим в 800x600:

set gfxmode=800x600
terminal_output gfxterm

Встроенный монитор "Эдельвейса" поддерживает только 1920x1080@60, а при
попытке использовать неподдерживаемый видеорежим переходит в режим ожидания.
Непосредственного доступ к display port (lvds) bridge имеет только UEFI.
Потому после загрузки ядра выставить подходящий видеорежим невозможно.

Чтобы избежать подобных проблем, лучше по умолчанию использовать видеорежим 'auto'
(по крайней мере на ARM)


[1] https://edelweiss-tech.ru/product/personalnye-ustroystva-edelveys/monoblok-edelveys
Comment 1 Anton Farygin 2021-04-16 12:11:34 MSK
2.06 пробовали ?
Comment 2 Anton Farygin 2021-04-16 12:15:27 MSK
task #269217
Comment 3 Николай Костригин 2021-04-16 12:19:24 MSK
(Ответ для Alexey Sheplyakov на комментарий #0)
> 
> Чтобы избежать подобных проблем, лучше по умолчанию использовать видеорежим
> 'auto'
> (по крайней мере на ARM)
> 
>

Я подготовлю тестовое задание с 'auto' - нужно убедиться, что оно не сломает загрузку всем остальным.
Comment 4 Николай Костригин 2021-04-16 18:15:35 MSK
Вообще, появление явного указания значения по-умолчанию восходит корнями к баге #24257, где просто просили внести переменную в файл конфигурации для версии 1.98.

Возможно, действительно пришло время сменить значение на auto, т.к. попробовав это на своей машине и еще нескольких, до которых руки дотянулись, не увидел  особых ухудшений: фоновое изображение растянутое до 1920х1080 выглядит приемлемо гладко, разве что шрифт немного мелковат на маленьких диагоналях. Plymouth работает.

У кого-то из выпускающих дистрибутивы будут возражения?
Comment 5 Антон Мидюков 2021-04-16 18:24:50 MSK
(Ответ для nickel@altlinux.org на комментарий #4)
> Вообще, появление явного указания значения по-умолчанию восходит корнями к
> баге #24257, где просто просили внести переменную в файл конфигурации для
> версии 1.98.
> 
> Возможно, действительно пришло время сменить значение на auto, т.к.
> попробовав это на своей машине и еще нескольких, до которых руки дотянулись,
> не увидел  особых ухудшений: фоновое изображение растянутое до 1920х1080
> выглядит приемлемо гладко, разве что шрифт немного мелковат на маленьких
> диагоналях. Plymouth работает.
> 
> У кого-то из выпускающих дистрибутивы будут возражения?

Разрешение 800x600 имеет смысл только на Legacy BIOS, так как, какое высокое разрешение не выставляй, при загрузке ядра разрешение сменится всё равно на 800x600. Т.е. одно дополнительное моргание получается. На UEFI auto предпочтительнее, с ним всё ок. Так что я за auto.
Comment 6 Anton V. Boyarshinov 2021-04-16 18:51:35 MSK
Я за auto везде
Comment 7 AEN 2021-04-18 07:17:29 MSK
(Ответ для Anton V. Boyarshinov на комментарий #6)
> Я за auto везде

+1
Comment 8 Антон Мидюков 2021-05-17 07:19:51 MSK
Если сейчас на Сизифе grub не собирается, то может хоть на p9 исправим?
А то уже для mkimage-profiles целую фичу под это дело сконструировали и по дистрибутивам растащили. А её брать в основную ветку, разумеется, не собираюсь.
Comment 9 Николай Костригин 2021-05-17 08:45:59 MSK
Хорошо
Comment 10 Repository Robot 2021-06-10 10:37:45 MSK
grub-2.06-alt1.rc1 -> sisyphus:

 Wed May 19 2021 Nikolai Kostrigin <nickel@altlinux> 2.06-alt1.rc1
 - new version
   + includes fixes for BootHole vulnerabilities so drop corresponding patches
   + includes fixes for SB Bypass 2021 vulnerabilities
     (fixes: CVE-2020-14372, CVE-2020-25632, CVE-2020-25647, CVE-2020-27749)
     (fixes: CVE-2020-27779, CVE-2021-20225, CVE-2021-20233, CVE-2021-3418)
 - update os-alt-xen patch
 - remove upstreamed ubuntu-efi-setup patch
 - update fedora SB patch set
 - update fedora-Rework-how-the-fdt-command-builds patch
 - add fedora patches to revert os-prober disabling in SB
 - switch default graphics mode from "800x600" to "auto" (closes: #39948)
 - grub-efi-autoupdate: fix --removable installations were not updated
 - update alt-add-strings-and-translation-for-OS-ALT patch (antohami@)
 - add alt-fix-build-with-new-gnulib patch (egori@)
Comment 11 AEN 2021-06-10 10:45:47 MSK
Николай, спасибо!