mirror of
https://github.com/Poltern/lfs-ru.git
synced 2025-07-29 12:52:32 +00:00
drm-panic: kernel: Enable SimpleDRM
kernel: Enable DRM_PANIC kernel: Explain DRM panic settings grub: Set up the VESA framebuffer for the kernel
This commit is contained in:
@ -122,6 +122,7 @@ set timeout=5
|
||||
insmod part_gpt
|
||||
insmod ext2
|
||||
set root=(hd0,2)
|
||||
set gfxpayload=1024x768x32
|
||||
|
||||
menuentry "GNU/Linux, Linux &linux-version;-lfs-&version;" {
|
||||
linux /boot/vmlinuz-&linux-version;-lfs-&version; root=/dev/sda2 ro
|
||||
@ -143,6 +144,13 @@ EOF</userinput></screen>
|
||||
вреда, но они могут понадобиться в некоторых редких конфигурациях.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Команда <command>set gfxpayload=1024x768x32</command> устанавливает разрешение и
|
||||
глубину цвета кадрового буфера VESA, которые будут переданы ядру. Драйвер SimpleDRM
|
||||
ядра должен использовать фреймбуфер VESA. Вы можете использовать другое разрешение
|
||||
или значение глубины цвета, которое больше подходит для вашего монитора.
|
||||
</para>
|
||||
|
||||
<note><para>С точки зрения <application>GRUB</application>,
|
||||
файлы ядра относятся к используемому разделу. Если вы используется отдельный раздел
|
||||
/boot, удалите /boot из приведенной выше строки <emphasis>linux</emphasis>. Вам также
|
||||
|
@ -259,6 +259,62 @@
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
Display a user-friendly message when a kernel panic occurs
|
||||
</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Этот параметр заставит ядро корректно отображать сообщение в случае возникновения
|
||||
аварийной ситуации в ядре, запущенный драйвер DRM поддерживает это. Без этого
|
||||
было бы сложнее диагностировать панику: если драйвер DRM не запущен, мы бы
|
||||
находились на консоли VGA, которая может содержать только 24 строки, и соответствующее
|
||||
сообщение ядра скорее всего удалилось бы; если драйвер DRM запущен, отображение часто
|
||||
полностью портится при панике. Начиная с Linux-6.12, ни один из драйверов для основных
|
||||
моделей GPU на самом деле не поддерживает это, но это поддерживается <quote>Простым
|
||||
драйвером фреймбуфера</quote>, который запускается в буфере кадров VESA (или EFI) до
|
||||
загрузки внешнего драйвера GPU. Если внешний драйвер графического процессора собран как
|
||||
модуль (а не часть образа ядра) и initramfs не используется, эта функциональность будет
|
||||
работать нормально до монтирования корневой файловой системы, и ее уже достаточно для
|
||||
предоставления информации о большинстве ошибок конфигурации LFS, вызывающих панику (например,
|
||||
неверная настройка <parameter>root=</parameter> в <xref linkend='ch-bootable-grub'/>).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
Panic screen formatter
|
||||
</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Установите значение <literal>kmsg</literal>, чтобы убедиться, что последние строки
|
||||
сообщений ядра отображаются при возникновении паники ядра. Значение по умолчанию,
|
||||
<literal>user</literal>, заставит ядро отображать только <quote>дружественное пользователю</quote>
|
||||
сообщение о панике, которое бесполезно при диагностике. Третий вариант, <literal>qr_code</literal>,
|
||||
заставит ядро сжать последние строки сообщений ядра в QR-код и отобразить его. QR-код может
|
||||
содержать больше строк сообщений, чем обычный текст, и его можно декодировать с помощью
|
||||
внешнего устройства (например, смартфона). Но для этого требуется компилятор Rust, который
|
||||
LFS не предоставляет.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
Mark VGA/VBE/EFI FB as generic system framebuffer
|
||||
</parameter> и
|
||||
<parameter>Simple framebuffer driver</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Эти параметры позволяют использовать буфер кадра VESA (или буфер кадра EFI, если загрузка
|
||||
системы LFS осуществляется через UEFI) в качестве устройства DRM. Буфер кадра VESA будет настроен
|
||||
GRUB (или буфер кадра EFI будет настроен прошивкой UEFI), поэтому обработчик паники DRM может
|
||||
работать до загрузки драйвера DRM, специфичного для GPU.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
@ -268,9 +324,9 @@
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Они необходимы для отображения консоли Linux на графическом процессоре, управляемом
|
||||
драйвером DRI (Direct Rendering Infrastructure - инфраструктура прямого рендеринга). Если
|
||||
драйвером DRI (Direct Rendering Infrastructure - инфраструктура прямого рендеринга). Поскольку
|
||||
<option>CONFIG_DRM</option> (Direct Rendering Manager - диспетчер прямого рендеринга) включен,
|
||||
вам также следует включить эти две опции, иначе вы увидите пустой экран после загрузки драйвера
|
||||
нам также следует включить эти две опции, иначе мы увидим пустой экран после загрузки драйвера
|
||||
DRI.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -1 +1 @@
|
||||
6.10.5
|
||||
6.12.1
|
||||
|
@ -13,7 +13,13 @@ STACKPROTECTOR_STRONG='*'
|
||||
UEVENT_HELPER=' '
|
||||
DEVTMPFS='*'
|
||||
DEVTMPFS_MOUNT='*'
|
||||
DRM=' *M'
|
||||
SYSFB_SIMPLEFB='*'
|
||||
DRM='*'
|
||||
DRM_PANIC='*'
|
||||
DRM_PANIC_SCREEN='kmsg'
|
||||
DRM_FBDEV_EMULATION='*'
|
||||
DRM_SIMPLEDRM='*'
|
||||
FRAMEBUFFER_CONSOLE='*'
|
||||
NET='*'
|
||||
INET='*'
|
||||
IPV6='*'
|
||||
@ -30,11 +36,3 @@ revision='systemd'
|
||||
[RT_GROUP_SCHED]
|
||||
value = ' '
|
||||
comment = 'This may cause some systemd features malfunction'
|
||||
|
||||
[DRM_FBDEV_EMULATION]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
||||
[FRAMEBUFFER_CONSOLE]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
@ -42,15 +42,18 @@
|
||||
... [FW_LOADER_USER_HELPER]
|
||||
<emphasis role='blue'>F</emphasis>irmware Drivers --->
|
||||
[*] <emphasis role='blue'>E</emphasis>xport DMI identification via sysfs to userspace [DMIID]
|
||||
[*] M<emphasis role='blue'>a</emphasis>rk VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB]
|
||||
<emphasis role='blue'>G</emphasis>raphics support --->
|
||||
< /*/M> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
<*> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
... [DRM]
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
[*] <emphasis role='blue'>D</emphasis>isplay a user-friendly message when a kernel panic occurs
|
||||
... [DRM_PANIC]
|
||||
(kmsg) <emphasis role='blue'>P</emphasis>anic screen formatter [DRM_PANIC_SCREEN]
|
||||
[*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
... [DRM_FBDEV_EMULATION]
|
||||
<*> <emphasis role='blue'>S</emphasis>imple framebuffer driver [DRM_SIMPLEDRM]
|
||||
<emphasis role='blue'>C</emphasis>onsole display driver support --->
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]
|
||||
[*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]
|
||||
|
||||
<emphasis role='blue'>F</emphasis>ile systems --->
|
||||
[*] <emphasis role='blue'>I</emphasis>notify support for userspace [INOTIFY_USER]
|
||||
|
@ -12,14 +12,12 @@ STACKPROTECTOR_STRONG='*'
|
||||
UEVENT_HELPER=' '
|
||||
DEVTMPFS='*'
|
||||
DEVTMPFS_MOUNT='*'
|
||||
DRM=' *M'
|
||||
SYSFB_SIMPLEFB='*'
|
||||
DRM='*'
|
||||
DRM_PANIC='*'
|
||||
DRM_PANIC_SCREEN='kmsg'
|
||||
DRM_FBDEV_EMULATION='*'
|
||||
DRM_SIMPLEDRM='*'
|
||||
FRAMEBUFFER_CONSOLE='*'
|
||||
|
||||
revision='sysv'
|
||||
|
||||
[DRM_FBDEV_EMULATION]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
||||
[FRAMEBUFFER_CONSOLE]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
@ -28,12 +28,16 @@
|
||||
[*] M<emphasis role='blue'>a</emphasis>intain a devtmpfs filesystem to mount at /dev [DEVTMPFS]
|
||||
[*] <emphasis role='blue'>A</emphasis>utomount devtmpfs at /dev, after the kernel mounted the rootfs
|
||||
... [DEVTMPFS_MOUNT]
|
||||
<emphasis role='blue'>F</emphasis>irmware Drivers --->
|
||||
[*] M<emphasis role='blue'>a</emphasis>rk VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB]
|
||||
<emphasis role='blue'>G</emphasis>raphics support --->
|
||||
< /*/M> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
<*> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
... [DRM]
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
[*] <emphasis role='blue'>D</emphasis>isplay a user-friendly message when a kernel panic occurs
|
||||
... [DRM_PANIC]
|
||||
(kmsg) <emphasis role='blue'>P</emphasis>anic screen formatter [DRM_PANIC_SCREEN]
|
||||
[*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
... [DRM_FBDEV_EMULATION]
|
||||
<*> <emphasis role='blue'>S</emphasis>imple framebuffer driver [DRM_SIMPLEDRM]
|
||||
<emphasis role='blue'>C</emphasis>onsole display driver support --->
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]</screen>
|
||||
[*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]</screen>
|
||||
|
Reference in New Issue
Block a user