Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.LINUX.CHAINIK
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.LINUX.CHAINIK с датами от 15 Jul 13 07:24:14 до 25 Apr 24 19:14:34, всего сообщений: 3144
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 2965 из 3144 ================================= RU.LINUX.CHAINIK =
От   : Rinat H. Sadretdinow             2:5020/620.1       25 Dec 21 06:04:18
Кому : Zhenja Kaliuta                                      25 Dec 21 06:04:18
Тема : Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
FGHI : area://RU.LINUX.CHAINIK?msgid=2:5020/620.1+61c68a34
На   : area://RU.LINUX.CHAINIK?msgid=2:4500/1.59+0ae8c656
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.LINUX.CHAINIK?msgid=2:5020/620.1+61c68ceb
Ответ: area://RU.LINUX.CHAINIK?msgid=2:4500/1.59+89d141c8
==============================================================================
Hello Zhenja!

24 Dec 21 20:54, you wrote to me:

[...]

ZK> судя по man, lsinitrd -- часть dracut (initrd инфраструктура) и
ZK> должен по-умолчанию брать initramfs для текущего ядра.

Да, man я читал, так оно и есть.

ZK> Если dkms не обновил initrd (лень смотреть его скрипты) и модули
ZK> грузятся оттуда, то логично, хоть и странно (что не обновил). dracut
ZK> --force должен перегенерировать.

Это я пока не пробовал, честно признаюсь. Вдруг перестанет грузиться вообще? Безусловно с этим (с возможной не загрузкой) я разберусь, не вчера с компами и не совсем тупой, просто не хотелось бы тратить на это время ежели такое произойдёт, хотелось обойтись малой кровью.

ZK> А depmod -v | grep nvidia  что показывает?

Сейчас у меня [временно] 470.82, но на безуспешно установленном 470.94 он показывает то же самое, уж поверь.

Ядро вот такое:

~~~
[rhs@sys3175 ~]$ uname -r
5.15.10-200.fc35.x86_64
[rhs@sys3175 ~]$
~~~

depmod -v | grep nvidia показывает так:

~~~
[rhs@sys3175 ~]$ sudo depmod -v | grep nvidia
/lib/modules/5.15.10-200.fc35.x86_64/kernel/drivers/usb/typec/altmodes/typec_nvidia.ko.xz needs "__typec_altmode_register_driver": /lib/modules/5.15.10-200.fc35.x86_64/kernel/drivers/usb/typec/typec.ko.xz
/lib/modules/5.15.10-200.fc35.x86_64/kernel/drivers/usb/typec/altmodes/typec_nvidia.ko.xz needs "dp_altmode_remove": /lib/modules/5.15.10-200.fc35.x86_64/kernel/drivers/usb/typec/altmodes/typec_displayport.ko.xz
/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-modeset.ko.xz needs "nvidia_register_module": /lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia.ko.xz
/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-drm.ko.xz needs "drm_framebuffer_cleanup": /lib/modules/5.15.10-200.fc35.x86_64/kernel/drivers/gpu/drm/drm.ko.xz
/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-drm.ko.xz needs "drm_kms_helper_poll_fini": /lib/modules/5.15.10-200.fc35.x86_64/kernel/drivers/gpu/drm/drm_kms_helper.ko.xz
/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-drm.ko.xz needs "nvKmsKapiGetFunctionsTable": /lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-modeset.ko.xz
/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-uvm.ko.xz needs "nvUvmInterfaceDisableAccessCntr": /lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia.ko.xz
/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia.ko.xz needs "drm_gem_object_free": /lib/modules/5.15.10-200.fc35.x86_64/kernel/drivers/gpu/drm/drm.ko.xz
[rhs@sys3175 ~]$
~~~

Это для текущего 470.82.

RHS>> Так и есть, модули старые, 28 октября, от 470.82.

RHS>> Изучаю /boot/initramfs$(uname -r).img, там кроме
RHS>> microcode/GenuineIntel.bin больше нифига ничего нет.

ZK> Звучит странно.

Я не вру. Кроме микрокода в initramfs больше нет ничего:

~~~
[rhs@sys3175 ~]$ sudo file /boot/initramfs-$(uname -r).img
/boot/initramfs-5.15.10-200.fc35.x86_64.img: ASCII cpio archive (SVR4 with no CRC)
[rhs@sys3175 ~]$ sudo cat /boot/initramfs-$(uname -r).img | cpio --list
.
early_cpio
kernel
kernel/x86
kernel/x86/microcode
kernel/x86/microcode/GenuineIntel.bin
30 blocks
[rhs@sys3175 ~]$
~~~

RHS>> 1) где, чёрт возьми, хранится инфа о том, что ведро хочет
RHS>> 470.82, хотя уже установлено 470.94?

ZK> У тебя установлены библиотеки и драйвер X новые, но ядерный модуль
ZK> старый.

Вот! В initrd почему-то именно *старые* драйвера/модули:

~~~
[rhs@sys3175 ~]$ sudo lsinitrd | grep -i extra/nvidia
-rw-r--r--   1 root     root        24028 Oct 28 22:55 usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-drm.ko.xz
-rw-r--r--   1 root     root     23809056 Oct 28 22:55 usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia.ko.xz
-rw-r--r--   1 root     root       515404 Oct 28 22:55 usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-modeset.ko.xz
[rhs@sys3175 ~]$
~~~

Обрати внимание на дату модулей из вывода lsinitrd, они все 28 октября (я в то время как раз Fedora 35 себе заапгрейдил через dnf с Fedora 34 чтобы не делать "pere install", так что эти модули от 470.82 остались ещё с Fedora 34, там с ними было всё нормально, я просто время от времени апгрейдил драйвера nvidia и подобных проблем не возникало никогда (я апгрыжусь с версии на версию Fedora через dnf ещё со времён Fedora 32, то есть года два уже, "pure install" с тех пор ни разу не делал).

А фактически в usr/lib/modules/5.15.10-200.fc35.x86_64/extra/ лежат модули за вчерашнее число, за 24 декабря уже:

~~~
[rhs@sys3175 ~]$ ls -l /lib/modules/$(uname -r)/extra
total 24120
-rw-r--r-- 1 root root    24028 Dec 24 09:16 nvidia-drm.ko.xz
-rw-r--r-- 1 root root 23809056 Dec 24 09:16 nvidia.ko.xz
-rw-r--r-- 1 root root   515404 Dec 24 09:16 nvidia-modeset.ko.xz
-rw-r--r-- 1 root root     1008 Dec 24 09:16 nvidia-peermem.ko.xz
-rw-r--r-- 1 root root   342612 Dec 24 09:16 nvidia-uvm.ko.xz
[rhs@sys3175 ~]$
~~~

Сейчас у меня, повторюсь, 470.82, поэтому и модули из lsinitrd, и модули из usr/lib/modules/5.15.10-200.fc35.x86_64/extra/ совпадают по API версии NVRM и всё пучком, все довольны. Hо стОит мне установить 470.94, как в usr/lib/modules/5.15.10-200.fc35.x86_64/extra/ образуются модули 470.94 (инсталлятор в процессе установки их компилит под текущее ведро и туда копирует), а в выводе lsinitrd остаются старые, от 470.82, за 28 октября, и ведро начинает орать что "Я хочу 470.82, а в usr/lib/modules/5.15.10-200.fc35.x86_64/extra/ лежат 470.94, непорядок, не буду их грузить!". Явно что initrd не обновляется. Hо вот почему?

RHS>> 2) откуда lsinitrd эту инфу берёт? (можно конечно на его исходники
RHS>> глянуть и узнать откуда оно инфу цепляет, но не хотелось бы сразу же
RHS>> нырять в такие дебри).

ZK> Можно в man глянуть.

Там я ничего не увидел. Может плохо смотрел?

Похоже придётся всё же смотреть на исходники lsinitrd чтобы узнать где же и как же и почему же упорно берутся старые модули для ведра при наличии новых. Если внутри initramfs про них ни слова нет.

RHS>> 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и
RHS>> стало юзать 470.94?

Я бы руками сам изменил initramfs, добавил бы в него (заменил бы в нём) модули 470.82 на 470.94, но см. выше, в initramfs кроме микрокода ничего нет.

Откуда lsinitrd берёт инфу что модули 470.82? Я бы прям там поменял. Если бы знал откуда эта конфигурация берётся.

[offtopic ON]

В декабре прошлого года я в дранках попросил сеть друзей, FIDO, помочь мне и дать в долг кто сколько сможет на похороны. Многие откликнулись и ты в том числе, спасибо великое все откликнувшимся за это. В июле этого года я смог отдать долги тем, кто не высказал явное желание не получать долг обратно. Отдал всем, остался ты единственный. С июля я тебе отправлял аж три netmail'а с периодичностью в месяц каждое с вопросом "Как вернуть долго?", но ни ответа, ни привета. Или мои netmail'ы до тебя почему-то не доходят, или ты их игнорируешь. Поэтому, как говориться "пользуясь случаем", раз уж эхи ты точно читаешь и даже отвечаешь, то вопрошаю тут: "Как вернуть тебе долг?"

[offtopic OFF]

Bye!

--- GoldED+/LNX 1.1.5-b20180707
* Origin: -= Thunder Bird @ home =- (2:5020/620.1)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.045504 секунды