Bug 39108 - guess-drm добавляет лишние модули
Summary: guess-drm добавляет лишние модули
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: make-initrd (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Alexey Gladkov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-10-21 17:41 MSK by Sergey V Turchin
Modified: 2020-10-22 14:41 MSK (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey V Turchin 2020-10-21 17:41:21 MSK
Если загружены модули nvidia, добавляет их в initrd, чего ранее не делал и чего не следует делать, т.к. это ломает мою переключалку дров nvidia.

Или будем считать это нормальным и мне стоит самому дописывать blacklist в /etc/initrd.mk ?
Comment 1 Alexey Gladkov 2020-10-21 18:11:38 MSK
Модули могут добавляться только для какой-то фичи (например для plymouth). Вывод команды: `make-initrd -v guess-config` должен показать кто добавляет модуль nvidia.
Comment 2 Sergey V Turchin 2020-10-22 09:06:16 MSK
> Вывод команды: `make-initrd -v guess-config` должен показать кто добавляет
> модуль nvidia.
Module "guess-drm" propose modules:
i915 nvidiafb nvidia-drm nvidia
последние 2 лишние.
Comment 3 Sergey V Turchin 2020-10-22 09:09:26 MSK
Т.е. предпоалгаю, что когда-нибудь nvidia nvidia-drm и nvidia-modeset надо будет добавлять в inird, но не при текущей ситуации.
Comment 4 Sergey V Turchin 2020-10-22 10:59:05 MSK
Ааа, есть же /etc/initrd.mk.d/ . Может, я просто упакую туда файлик со строкой
BLACKLIST_MODULES += nvidia nvidia-drm nvidia-modeset
в пакет nvidia_glx_common?
Comment 5 Alexey Gladkov 2020-10-22 13:22:26 MSK
(Ответ для Sergey V Turchin на комментарий #3)
> Т.е. предпоалгаю, что когда-нибудь nvidia nvidia-drm и nvidia-modeset надо
> будет добавлять в inird, но не при текущей ситуации.

make-initrd кладёт модули для всех /sys/class/drm/* и в вашем случае захватывает лишние. Возможно, стоит придумать более правильный способ добавления.

(Ответ для Sergey V Turchin на комментарий #4)
> Ааа, есть же /etc/initrd.mk.d/ . Может, я просто упакую туда файлик со
> строкой
> BLACKLIST_MODULES += nvidia nvidia-drm nvidia-modeset
> в пакет nvidia_glx_common?

Этот каталог для других конфигов initrd, а не для дополнения /etc/initrd.mk. Пакеты не могут и не должны влиять на конфигурацию initrd.
Comment 6 Sergey V Turchin 2020-10-22 13:35:06 MSK
(Ответ для Alexey Gladkov на комментарий #5)
> Этот каталог для других конфигов initrd, а не для дополнения /etc/initrd.mk.
Ок. Я после починки уберу оттуда файл.

> Пакеты не могут и не должны влиять на конфигурацию initrd.
Но в этом случае должны. Мантейнеру nvidia нужно иметь выключатель возможности попадания nvidia в inird.
Comment 7 Alexey Gladkov 2020-10-22 13:52:00 MSK
(Ответ для Sergey V Turchin на комментарий #6)
> > Этот каталог для других конфигов initrd, а не для дополнения /etc/initrd.mk.
> Ок. Я после починки уберу оттуда файл.

Ваш файл с таким содержимым ни на что не влияет.

> > Пакеты не могут и не должны влиять на конфигурацию initrd.
> Но в этом случае должны.

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

> Мантейнеру nvidia нужно иметь выключатель
> возможности попадания nvidia в inird.

Есть фичи, которые добавляют или не добавляют модули или программы в образ. Конфиг же позволяет пользователю контролировать этот процесс. Если мантейнеру nvidia необходимо контролировать на каких-то версиях ядра (или на всех) попадание модулей в образ, то пусть сделает фичу.
Comment 8 Sergey V Turchin 2020-10-22 14:03:44 MSK
(Ответ для Alexey Gladkov на комментарий #5)
> Этот каталог для других конфигов initrd, а не для дополнения /etc/initrd.mk.
Так, это баг. Файлы в /etc/initrd.mk.d/ должны соответствовать /etc/initrd.mk .
Видимо, текущий /etc/initrd.mk.d/ надо переименовать в /etc/make-initrd/ , иначе вводит в заблуждение.
Comment 9 Sergey V Turchin 2020-10-22 14:05:50 MSK
(Ответ для Alexey Gladkov на комментарий #7)
> Через фичи пожалуйста.
Ок, попробую.
Comment 10 Alexey Gladkov 2020-10-22 14:15:54 MSK
(Ответ для Sergey V Turchin на комментарий #8)
> (Ответ для Alexey Gladkov на комментарий #5)
> > Этот каталог для других конфигов initrd, а не для дополнения /etc/initrd.mk.
> Так, это баг. Файлы в /etc/initrd.mk.d/ должны соответствовать
> /etc/initrd.mk .

Это не баг, но я согласен, что в самом начале название директории было выбрано неудачно.

> Видимо, текущий /etc/initrd.mk.d/ надо переименовать в /etc/make-initrd/ ,
> иначе вводит в заблуждение.

Можно попробовать переименовать.
Comment 11 Sergey V Turchin 2020-10-22 14:39:59 MSK
(Ответ для Sergey V Turchin на комментарий #8)
> надо переименовать в /etc/make-initrd/ ,
Боюсь, это тоже может быть неудачно. Новые пользователи начнут думать, что настройка там, а не в /etc/initrd.mk .
Comment 12 Repository Robot 2020-10-22 14:41:42 MSK
nvidia_glx_common-450.80.02-alt231 -> sisyphus:

 Thu Oct 22 2020 Sergey V Turchin <zerg@altlinux> 450.80.02-alt231
 - package make-initrd feature to exclude nvidia from initrd (closes: 39108)