#1
|
|||
|
|||
Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Rinat H. Sadretdinow написал(а) к All в Dec 21 09:56:42 по местному времени:
Нello All! У меня сейчас установлен драйвер NVIDIA вот такой версии: ~~~ [rhs@sys3175 ~]$ nvidia-installer -v nvidia-installer: version 470.82.00 The NVIDIA Software Installer for Unix/Linux. This program is used to install, upgrade and uninstall The NVIDIA Accelerated Graphics Driver Set for Linux-x86_64. [rhs@sys3175 ~]$ ~~~ Захотел я его проапгрейдить. Ну сходил на сайт: https://www.nvidia.ru/Download/index.aspx?lang=ru и скачал там: NVIDIA-Linux-x86_64-470.94.run Запустил его из-под root, он мне сказал что "Обнаружен 470.82, он будет предварительно удалён, а после я тебе 470.94 установлю". Я согласился. Он попыхтел, сказал что 470.82 удалён, а 470.94 установлен. Перезагружаюсь -- не входит в X вообще. Лезу в /var/log/messages. А там: ~~~ Dec 24 12:09:14 sys3175 kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module 470.82.00 Thu Oct 14 10:24:40 UTC 2021 Dec 24 12:09:14 sys3175 kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 470.82.00 Thu Oct 14 10:17:58 UTC 2021 ~~~ Ну и после этого: ~~~ Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the version 470.94, but#012NVRM: this kernel module has the version 470.82.00. Please#012NVRM: make sure that this kernel module and all NVIDIA driver#012NVRM: components have the same version. Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the version 470.94, but#012NVRM: this kernel module has the version 470.82.00. Please#012NVRM: make sure that this kernel module and all NVIDIA driver#012NVRM: components have the same version. Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the version 470.94, but#012NVRM: this kernel module has the version 470.82.00. Please#012NVRM: make sure that this kernel module and all NVIDIA driver#012NVRM: components have the same version. Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the version 470.94, but#012NVRM: this kernel module has the version 470.82.00. Please#012NVRM: make sure that this kernel module and all NVIDIA driver#012NVRM: components have the same version. ~~~ со всеми вытекающими. Причём dkms говорит что у меня отныне 470.94: ~~~ [rhs@sys3175 ~]$ dkms status nvidia/470.94, 5.15.10-200.fc35.x8664, x8664: installed [rhs@sys3175 ~]$ ~~~ но ведро считает что у меня до сих пор 470.82.00: ~~~ [root@sys3175 ~]# lsinitrd | grep 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 [root@sys3175 ~]# ~~~ Так и есть, модули старые, 28 октября, от 470.82. Изучаю /boot/initramfs$(uname -r).img, там кроме microcode/GenuineIntel.bin больше нифига ничего нет. Откатился пока что обратно на 470.82 чтобы была возможность загрузить GoldEd и тут поспрашивать. В принципе мне ничуть не критичны драйвера 470.94, я и на 470.82 прекрасно живу, но тут у меня уже принцип полез -- какого хрена ведро считает себя умнее меня? Посему вопрос (вопросы): 1) где, чёрт возьми, хранится инфа о том, что ведро хочет 470.82, хотя уже установлено 470.94? 2) откуда lsinitrd эту инфу берёт? (можно конечно на его исходники глянуть и узнать откуда оно инфу цепляет, но не хотелось бы сразу же нырять в такие дебри). 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и стало юзать 470.94? И гуглил, и FAQ'и всякие читал, но нифига ответ так и не нашёл. Что называется "и унитаз свой приносил, и задницу показывал, но не продают мне нужную туалетную бумагу!" Bye! --- GoldED+/LNX 1.1.5-b20180707 |
#2
|
|||
|
|||
Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Alexey Vissarionov написал(а) к Rinat H. Sadretdinow в Dec 21 12:34:56 по местному времени:
Доброго времени суток, Rinat! 24 Dec 2021 09:56:42, ты -> All: RНS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client ^^^^^^^^^^^^ RНS> has the version 470.94, but this kernel module has the version RНS> 470.82.00. Please make sure that this kernel module and all RНS> NVIDIA driver components have the same version. RНS> [rhs@sys3175 ~]$ dkms status RНS> nvidia/470.94, 5.15.10-200.fc35.x8664, x8664: installed RНS> [rhs@sys3175 ~]$ Ну оно же тебе все пишет человеческим по фоновому... RНS> Откатился пока что обратно на 470.82 чтобы была возможность RНS> загрузить GoldEd и тут поспрашивать. В принципе мне ничуть не RНS> критичны драйвера 470.94, я и на 470.82 прекрасно живу, но тут RНS> у меня уже принцип полез -- какого хрена ведро считает себя RНS> умнее меня? Потому что люди, которые пишут ядерные модули, действительно умнее. RНS> Посему вопрос (вопросы): RНS> 1) где, чёрт возьми, хранится инфа о том, что ведро хочет 470.82, RНS> хотя уже установлено 470.94? В linux/drivers/gpu/drm/nouveau/include/ :-) Модуль собирается под строго определенную версию ядра. А некоторые (как я) дополнительно включают цифровые подписи, чтобы никакой левый модуль вообще загрузить нельзя было (CONFIGCНECKSIGNATURE=y в ядерном конфиге). RНS> 2) откуда lsinitrd эту инфу берёт? Из засунутого туда ядрен-модуля. RНS> 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и стало RНS> юзать 470.94? Скорее всего, просто обновить. Актуальное ядро - позавчерашнее 5.15.11 RНS> И гуглил, и FAQ'и всякие читал, но нифига ответ так и не нашёл. RНS> Что называется "и унитаз свой приносил, и задницу показывал, но RНS> не продают мне нужную туалетную бумагу!" А какую проблему ты хотел решить этим обновлением? -- Alexey V. Vissarionov aka Gremlin from Kremlin gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii ... $='print"\$_=\x27$\x27;eval\n"';eval --- /bin/vi |
#3
|
|||
|
|||
Re: Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Zhenja Kaliuta написал(а) к Rinat H. Sadretdinow в Dec 21 20:54:58 по местному времени:
Нi, Rinat! On Fri, 24 Dec 2021 09:56:42 +0300 Rinat Н. Sadretdinow writes: RНS> Нello All! RНS> У меня сейчас установлен драйвер NVIDIA вот такой версии: У меня нет ни nvidia, ни dkms сейчас, поэтому попробую погадать. RНS> ~~~ RНS> [rhs@sys3175 ~]$ nvidia-installer -v RНS> nvidia-installer: version 470.82.00 RНS> The NVIDIA Software Installer for Unix/Linux. RНS> This program is used to install, upgrade and uninstall The NVIDIA Accelerated Graphics Driver Set for Linux-x86_64. RНS> [rhs@sys3175 ~]$ RНS> ~~~ RНS> Захотел я его проапгрейдить. Ну сходил на сайт: RНS> https://www.nvidia.ru/Download/index.aspx?lang=ru RНS> и скачал там: RНS> NVIDIA-Linux-x86_64-470.94.run RНS> Запустил его из-под root, он мне сказал что "Обнаружен 470.82, он RНS> будет предварительно удалён, а после я тебе 470.94 установлю". Я RНS> согласился. Он попыхтел, сказал что 470.82 удалён, а 470.94 RНS> установлен. Перезагружаюсь -- не входит в X вообще. Лезу в RНS> /var/log/messages. А там: RНS> ~~~ RНS> Dec 24 12:09:14 sys3175 kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module 470.82.00 Thu Oct 14 10:24:40 UTC 2021 RНS> Dec 24 12:09:14 sys3175 kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 470.82.00 Thu Oct 14 10:17:58 UTC 2021 RНS> ~~~ RНS> Ну и после этого: RНS> ~~~ RНS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the RНS> version 470.94, but#012NVRM: this kernel module has the version RНS> 470.82.00. Please#012NVRM: make sure that this kernel module and all RНS> NVIDIA driver#012NVRM: components have the same version. RНS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the RНS> version 470.94, but#012NVRM: this kernel module has the version RНS> 470.82.00. Please#012NVRM: make sure that this kernel module and all RНS> NVIDIA driver#012NVRM: components have the same version. RНS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the RНS> version 470.94, but#012NVRM: this kernel module has the version RНS> 470.82.00. Please#012NVRM: make sure that this kernel module and all RНS> NVIDIA driver#012NVRM: components have the same version. RНS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the RНS> version 470.94, but#012NVRM: this kernel module has the version RНS> 470.82.00. Please#012NVRM: make sure that this kernel module and all RНS> NVIDIA driver#012NVRM: components have the same version. RНS> ~~~ RНS> со всеми вытекающими. Причём dkms говорит что у меня отныне 470.94: RНS> ~~~ RНS> [rhs@sys3175 ~]$ dkms status RНS> nvidia/470.94, 5.15.10-200.fc35.x8664, x8664: installed RНS> [rhs@sys3175 ~]$ RНS> ~~~ RНS> но ведро считает что у меня до сих пор 470.82.00: RНS> ~~~ RНS> [root@sys3175 ~]# lsinitrd | grep extra/nvidia RНS> -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 RНS> -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 RНS> -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 RНS> [root@sys3175 ~]# RНS> ~~~ судя по man, lsinitrd -- часть dracut (initrd инфраструктура) и должен по-умолчанию брать initramfs для текущего ядра. Если dkms не обновил initrd (лень смотреть его скрипты) и модули грузятся оттуда, то логично, хоть и странно (что не обновил). dracut --force должен перегенерировать. А depmod -v | grep nvidia что показывает? RНS> Так и есть, модули старые, 28 октября, от 470.82. RНS> Изучаю /boot/initramfs$(uname -r).img, там кроме microcode/GenuineIntel.bin больше нифига ничего нет. Звучит странно. RНS> Откатился пока что обратно на 470.82 чтобы была возможность загрузить RНS> GoldEd и тут поспрашивать. В принципе мне ничуть не критичны драйвера RНS> 470.94, я и на 470.82 прекрасно живу, но тут у меня уже принцип полез RНS> -- какого хрена ведро считает себя умнее меня? RНS> Посему вопрос (вопросы): RНS> 1) где, чёрт возьми, хранится инфа о том, что ведро хочет 470.82, хотя уже установлено 470.94? У тебя установлены библиотеки и драйвер X новые, но ядерный модуль старый. RНS> 2) откуда lsinitrd эту инфу берёт? (можно конечно на его исходники глянуть и узнать откуда оно инфу цепляет, но не хотелось бы сразу же нырять в такие дебри). Можно в man глянуть. RНS> 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и стало юзать 470.94? RНS> И гуглил, и FAQ'и всякие читал, но нифига ответ так и не нашёл. Что называется "и унитаз свой приносил, и задницу показывал, но не продают мне нужную туалетную бумагу!" RНS> Bye! --- Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
#4
|
|||
|
|||
Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Rinat H. Sadretdinow написал(а) к Zhenja Kaliuta в Dec 21 06:04:18 по местному времени:
Нello 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.x8664/kernel/drivers/usb/typec/altmodes/typec_nvidia.ko.xz needs "__typec_altmode_register_driver": /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/usb/typec/typec.ko.xz /lib/modules/5.15.10-200.fc35.x8664/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/typecdisplayport.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-modeset.ko.xz needs "nvidia_register_module": /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-drm.ko.xz needs "drm_framebuffer_cleanup": /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/gpu/drm/drm.ko.xz /lib/modules/5.15.10-200.fc35.x8664/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_kmshelper.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-drm.ko.xz needs "nvKmsKapiGetFunctionsTable": /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-modeset.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-uvm.ko.xz needs "nvUvmInterfaceDisableAccessCntr": /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia.ko.xz needs "drm_gem_object_free": /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/gpu/drm/drm.ko.xz [rhs@sys3175 ~]$ ~~~ Это для текущего 470.82. RНS>> Так и есть, модули старые, 28 октября, от 470.82. RНS>> Изучаю /boot/initramfs$(uname -r).img, там кроме RНS>> 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 ~]$ ~~~ RНS>> 1) где, чёрт возьми, хранится инфа о том, что ведро хочет RНS>> 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.x8664/extra/ совпадают по API версии NVRM и всё пучком, все довольны. Но стОит мне установить 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.x8664/extra/ лежат 470.94, непорядок, не буду их грузить!". Явно что initrd не обновляется. Но вот почему? RНS>> 2) откуда lsinitrd эту инфу берёт? (можно конечно на его исходники RНS>> глянуть и узнать откуда оно инфу цепляет, но не хотелось бы сразу же RНS>> нырять в такие дебри). ZK> Можно в man глянуть. Там я ничего не увидел. Может плохо смотрел? Похоже придётся всё же смотреть на исходники lsinitrd чтобы узнать где же и как же и почему же упорно берутся старые модули для ведра при наличии новых. Если внутри initramfs про них ни слова нет. RНS>> 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и RНS>> стало юзать 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 |
#5
|
|||
|
|||
Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Rinat H. Sadretdinow написал(а) к Zhenja Kaliuta в Dec 21 06:11:10 по местному времени:
Нello Zhenja! 25 Dec 21 06:04, I wrote to you: ZK>> Если dkms не обновил initrd (лень смотреть его скрипты) и модули ZK>> грузятся оттуда, то логично, хоть и странно (что не обновил). ZK>> dracut --force должен перегенерировать. RS> Это я пока не пробовал, честно признаюсь. Попробовал. Это не спасло смертельно раненного кота, модули nvidia как были от 28 октября, так и остались такими же, а свежие от 24 декабря нифига не подключились: ~~~ [rhs@sys3175 ~]$ sudo dracut --force [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 ~]$ ls -l /usr/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 ~]$ ~~~ Bye! --- GoldED+/LNX 1.1.5-b20180707 |
#6
|
|||
|
|||
Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Rinat H. Sadretdinow написал(а) к Alexey Vissarionov в Dec 21 06:16:08 по местному времени:
Нello Alexey! 24 Dec 21 12:34, you wrote to me: RНS>> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client AV> ^^^^^^^^^^^^ AV> Ну оно же тебе все пишет человеческим по фоновому... Да это я вижу. Только не могу понять почему так, откуда оно, мать его, берёт старые модули! AV> Потому что люди, которые пишут ядерные модули, действительно умнее. Не спорю. Сам я ядерные модули не пишу и никогда не пробовал, последние мои драйвера были для OS/2, перед этим для DOS, с тех пор я в системные дебри не залезал ни разу. RНS>> Посему вопрос (вопросы): RНS>> 1) где, чёрт возьми, хранится инфа о том, что ведро хочет RНS>> 470.82, хотя уже установлено 470.94? AV> В linux/drivers/gpu/drm/nouveau/include/ :-) 1) nouveau у меня заблеклистен везде где только можно: ~~~ [rhs@sys3175 ~]$ cat /etc/default/grub | grep nouveau GRUBCMDLINE_LINUX="rhdb quiet rd.driver.blacklist=nouveau resume=UUID=d5b6be1c-49e7-4afd-b720-b3244a5888fe systemd.unified_cgrouphierarchy=0 selinux=0" [rhs@sys3175 ~]$ cat /etc/modprobe.d/blacklist.conf blacklist nouveau [rhs@sys3175 ~]$ ~~~ 2) причём тут linux/drivers/gpu/drm/nouveau/include/ если драйвера для nvidia туда вообще никаким боком? AV> Модуль собирается под строго определенную версию ядра. Да, именно это инсталлятор и делает. И прописывает их в /usr/lib/modules/$(uname -r)/extra но вот при изначальной загрузке ведро почему-то берёт их не оттуда, а невесть откуда, где оказываются старые модули, а не только что установленные. RНS>> 2) откуда lsinitrd эту инфу берёт? AV> Из засунутого туда ядрен-модуля. Не понятно вообще. Модули в ведро не вкомпилированы. RНS>> 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и RНS>> стало юзать 470.94? AV> Скорее всего, просто обновить. Актуальное ядро - позавчерашнее 5.15.11 Не, просто обновить не получается, пробовал уже, не один раз, три обновления уже через себя пропустил с тем же самым не результатом. RНS>> И гуглил, и FAQ'и всякие читал, но нифига ответ так и не нашёл. RНS>> Что называется "и унитаз свой приносил, и задницу показывал, но RНS>> не продают мне нужную туалетную бумагу!" AV> А какую проблему ты хотел решить этим обновлением? Именно обновлением драйверов nvidia? Никакую. Просто хочу чтобы у меня была наипоследняя версия ;-) А теперь уже принцип пошёл, надо обязательно обновиться чтобы хотя бы знать почему сейчас обновления не проходят и запомнить все нюансы на будущее -- мало ли реально почему-то придётся обновляться (к примеру мышиный курсор будет другой, более плавный или что-то в этом роде), а я обновиться не могу, ведро всё время старые драйвера будет продолжать требовать. Bye! --- GoldED+/LNX 1.1.5-b20180707 |
#7
|
|||
|
|||
Re: Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Zhenja Kaliuta написал(а) к Rinat H. Sadretdinow в Dec 21 06:07:03 по местному времени:
Нi, Rinat! On Sat, 25 Dec 2021 06:11:10 +0300 Rinat Н. Sadretdinow writes: ZK>>> Если dkms не обновил initrd (лень смотреть его скрипты) и модули ZK>>> грузятся оттуда, то логично, хоть и странно (что не обновил). ZK>>> dracut --force должен перегенерировать. RS>> Это я пока не пробовал, честно признаюсь. RНS> Попробовал. Это не спасло смертельно раненного кота, модули nvidia как были от 28 октября, так и остались такими же, а свежие от 24 декабря нифига не подключились: Как-то очень странно звучит, если новые модули установлены как и раньше и поверх старых, то при перегенерации старым взяться неоткуда. Если старые были как-то иначе в другом месте и замещают новые, то старые либо убрать, либо подконфигурировать приоритеты. modinfo nvidia что говорит? dracut --debug --force в крайнем случае расскажет очень подробно в частности все обрабатываемые модули. RНS> ~~~ RНS> [rhs@sys3175 ~]$ sudo dracut --force RНS> [rhs@sys3175 ~]$ sudo lsinitrd | grep -i extra/nvidia RНS> -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 RНS> -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 RНS> -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 RНS> [rhs@sys3175 ~]$ ls -l /usr/lib/modules/$(uname -r)/extra RНS> total 24120 RНS> -rw-r--r-- 1 root root 24028 Dec 24 09:16 nvidia-drm.ko.xz RНS> -rw-r--r-- 1 root root 23809056 Dec 24 09:16 nvidia.ko.xz RНS> -rw-r--r-- 1 root root 515404 Dec 24 09:16 nvidia-modeset.ko.xz RНS> -rw-r--r-- 1 root root 1008 Dec 24 09:16 nvidia-peermem.ko.xz RНS> -rw-r--r-- 1 root root 342612 Dec 24 09:16 nvidia-uvm.ko.xz RНS> [rhs@sys3175 ~]$ RНS> ~~~ --- Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
#8
|
|||
|
|||
Re: Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Zhenja Kaliuta написал(а) к Rinat H. Sadretdinow в Dec 21 06:11:10 по местному времени:
Нi, Rinat! On Sat, 25 Dec 2021 06:04:18 +0300 Rinat Н. Sadretdinow writes: RНS> Или мои netmail'ы до тебя почему-то не доходят, или ты их игнорируешь. Не дошли. Ответил в нетмейл, посмотрим. --- Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
#9
|
|||
|
|||
Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Rinat H. Sadretdinow написал(а) к Zhenja Kaliuta в Dec 21 08:16:30 по местному времени:
Нello Zhenja! 25 Dec 21 06:07, you wrote to me: RНS>> Попробовал. Это не спасло смертельно раненного кота, модули RНS>> nvidia как были от 28 октября, так и остались такими же, а RНS>> свежие от 24 декабря нифига не подключились: ZK> Как-то очень странно звучит, если новые модули установлены как и ZK> раньше и поверх старых, то при перегенерации старым взяться неоткуда. Ну вот откуда-то берутся! В /usr/lib/modules/$(uname -r)/extra лежат новые, только что собранные, а lsinitrd показывает старые. ZK> Если старые были как-то иначе в другом месте и замещают новые, то ZK> старые либо убрать, либо подконфигурировать приоритеты. Знать бы где они лежат -- убрал бы. ZK> modinfo nvidia что говорит? 470.94 я пока не пробовал ставить (иначе бы не смог это написать), а так 470.82 само собой. ZK> dracut --debug --force в крайнем случае расскажет очень подробно в ZK> частности все обрабатываемые модули. Ой! Он мне такую портянку выдал, что сходу не я не разобрался, буду вдумчиво сидеть и рассматривать. Bye! --- GoldED+/LNX 1.1.5-b20180707 |
#10
|
|||
|
|||
Где NVIDIA прячет свои модули или как же мне проапгрейдить драйвер?
Rinat H. Sadretdinow написал(а) к Zhenja Kaliuta в Dec 21 09:07:50 по местному времени:
Нello Zhenja! 25 Dec 21 08:16, I wrote to you: [...] Всё страньше и страньше. Перегрузился в 'init 3'. 'modinfo nvidia' нормально говорит про текущий 470.82: ~~~ [rhs@sys3175 ~]$ sudo modinfo nvidia filename: /lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia.ko.xz firmware: nvidia/470.82.00/gsp.bin alias: char-major-195-* version: 470.82.00 supported: external license: NVIDIA srcversion: E66753074ED62D36C634AF6 alias: pci:v000010DEdsv*sd*bc03sc02i00 alias: pci:v000010DEdsv*sd*bc03sc00i00 depends: drm retpoline: Y name: nvidia vermagic: 5.15.10-200.fc35.x8664 SMP modunload [...] [rhs@sys3175 ~]$ ~~~ depmod тоже прекрасно всё видит: ~~~ [rhs@sys3175 ~]$ sudo depmod -v | grep nvidia /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/usb/typec/altmodes/typec_nvidia.ko.xz needs "__typec_altmode_register_driver": /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/usb/typec/typec.ko.xz /lib/modules/5.15.10-200.fc35.x8664/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/typecdisplayport.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-modeset.ko.xz needs "nvidia_register_module": /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-drm.ko.xz needs "drm_framebuffer_cleanup": /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/gpu/drm/drm.ko.xz /lib/modules/5.15.10-200.fc35.x8664/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_kmshelper.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-drm.ko.xz needs "nvKmsKapiGetFunctionsTable": /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-modeset.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia-uvm.ko.xz needs "nvUvmInterfaceDisableAccessCntr": /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia.ko.xz /lib/modules/5.15.10-200.fc35.x8664/extra/nvidia.ko.xz needs "drm_gem_object_free": /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/gpu/drm/drm.ko.xz [rhs@sys3175 ~]$ ~~~ lsinitrd показывает всё те же модули от 28 октября, ещё от прежнего 470.82, вместо новых от 24 декабря, но тоже от 470.82: ~~~ [rhs@sys3175 ~]$ sudo lsinitrd | grep 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 ~] ~~~ Удаляю драйвер штатным анисталлером: ~~~ [rhs@sys3175 ~]$ sudo nvidia-uninstall [rhs@sys3175 ~] ~~~ Проверяю modinfo, так и есть, никакого nvidia больше нет: ~~~ [rhs@sys3175 ~]$ sudo modinfo nvidia modinfo: ERROR: Module nvidia not found. [rhs@sys3175 ~] ~~~ Запускаю depmod, он показывает какие-то ядерные огрызки, которые к драйверам nvidia с их сайта явно не относятся, а все модули nvidia отсутствуют бляго nvidia-uninstall их прекрасно удалил: ~~~ [rhs@sys3175 ~]$ sudo depmod -v | grep nvidia /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/usb/typec/altmodes/typec_nvidia.ko.xz needs "__typec_altmode_register_driver": /lib/modules/5.15.10-200.fc35.x8664/kernel/drivers/usb/typec/typec.ko.xz /lib/modules/5.15.10-200.fc35.x8664/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/typecdisplayport.ko.xz [rhs@sys3175 ~] ~~~ Консультируюсь у lsinitrd... И БАЦ! ~~~ [rhs@sys3175 ~]$ sudo lsinitrd | grep 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 ~] ~~~ Вот откуда, ОТКУДА он упорно продолжает показывать всё те же самые модули от 28 октября? Откуда он их достаёт? Где они лежат? Если в /boot/initramfs$(uname -r).img кроме микрокода GenuineIntel.bin нет больше вообще ничего! Надо ли говорить что после установки 470.94 ядро опять возопило: "У меня тут 470.82, а мне пихают 470.94, API другой, не буду работать, идите все в пень!" Откатился опять на 470.82, чьи модули упорно сидят где-то (ГДЕ???) и которые lsinitrd показывает всегда, даже после команды nvidia-unistall, которая по идее должна удалить все упоминания про nvidia, включая эти. Буду думать дальше. Bye! --- GoldED+/LNX 1.1.5-b20180707 |