LINUX.ORG.RU

NVIDIA: критические сбои драйверов на ядре Linux 6.10

 , ,

NVIDIA: критические сбои драйверов на ядре Linux 6.10

0

1

Компания NVIDIA занимается расследованием критического бага, при котором их драйверы начинают сбоить при работе на последних версиях ядра Linux (начиная с версии 6.10 и выше). Эта проблема затрагивает драйверы версии 550, 555 и даже последний на текущий момент драйвер 560. Проблема проявляется как на закрытых драйверах NVIDIA, так и на их открытых версиях.

Судя по данным на форуме NVIDIA, эта ошибка возникла в результате регрессии, связанной с обновлением ядра Linux до версии 6.10. Ошибки возникают в ситуациях, когда активируется механизм приостановки системы (suspension) или когда какое-либо приложение начинает обрабатывать 3D-графику. Проблема заключается в появлении системных сбоев (kernel oops), что доставляет массу неудобств как разработчикам, так и пользователям.

Пример сбоя драйвера

Система неожиданно начинает зависать и давать сбои в самых неожиданных моментах, особенно при запуске игр или работе с графическими приложениями. Пример из системного журнала:

[ 29.168385] ------------[ cut here ]------------

[ 29.168385] WARNING: CPU: 13 PID: 7032 at include/linux/rwsem.h:80 follow_pte+0x1de/0x200

[ 29.168387] Modules linked in: rfcomm nvidia_drm(OE) nvidia_uvm(OE) nvidia_modeset(OE) nvidia(OE)
...

[ 29.168456] CPU: 13 PID: 7032 Comm: nv_queue Tainted: P W OE 6.10.6-arch1-1 #1 703d152c24f1971e36f16e505405e456fc9e23f8

[ 29.168457] Hardware name: ASUSTeK COMPUTER INC. ASUS TUF Dash F15 FX517ZR_FX517ZR/FX517ZR, BIOS FX517ZR.317 05/03/2023

[ 29.169159] ret_from_fork+0x31/0x50

[ 29.169164] ---[ end trace 0000000000000000 ]---

Проблема проявляется следующим образом:

  • Видео становится дерганым и каждые 45 секунд случаются кратковременные «фризы».
  • В играх происходит разрыв между изображением и игровым процессом: игра продолжается, пока экран заморожен.
  • После 30 минут игры средняя нагрузка на систему может взлететь до трёхзначных значений, при этом инструменты мониторинга, такие как top, iostat, vmstat или free, не показывают явных признаков ухудшения производительности системы.
  • Команда dmesg заполняется похожими трассировочными сообщениями стека (stack trace).

На данный момент временным решением может быть использование предыдущих версий ядра. Например, переход на ветку linux-lts (долгосрочная поддержка) с версией ядра 6.6 в сочетании с драйверами NVIDIA версий 550 или 555 может помочь избежать сбоев.

>>> Подробности

★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)

А это точно не проблема конкретной железки ?

И не понятно что означает строка :

[ 29.168457] Hardware name: ASUSTeK COMPUTER INC. ASUS TUF Dash F15 FX517ZR_FX517ZR/FX517ZR, BIOS FX517ZR.317 05/03/2023

Я глянул на https://www.asus.com/laptops/for-gaming/tuf-gaming/asus-tuf-dash-f15-2022/helpdesk_bios?model2Name=FX517ZR

У биоса 317 другая дата : Version 317 10.93 MB 2023/08/24

mx__ ★★★★★
()

Пользуюсь 6.10 с Nvidia 560 уже где-то пару недель, с такой проблемой не сталкивался.

Kron4ek ★★★★★
()

Я правильно понимаю, что если suspension вырублен в ядре, то проблемы не будет?

keeper_b ★★★★
()

Я иногда наблюдал эффекты как в описании. Не слишком часто. Но вот что в dmesg нашёл

[andalevor@maibenben ~]$ sudo dmesg | grep -i rwsem.h
[   40.535269] WARNING: CPU: 5 PID: 1419 at include/linux/rwsem.h:80 follow_pte+0x1f0/0x220
[   40.537631] WARNING: CPU: 3 PID: 1419 at include/linux/rwsem.h:80 follow_pte+0x1f0/0x220
[   40.539710] WARNING: CPU: 3 PID: 1419 at include/linux/rwsem.h:80 follow_pte+0x1f0/0x220
[andalevor@maibenben ~]$ sudo dmesg | grep -i nv_queue
[   40.535511] CPU: 5 PID: 1419 Comm: nv_queue Tainted: P           OE      6.10.3-200.fc40.x86_64 #1
[   40.537803] CPU: 3 PID: 1419 Comm: nv_queue Tainted: P        W  OE      6.10.3-200.fc40.x86_64 #1
[   40.539863] CPU: 3 PID: 1419 Comm: nv_queue Tainted: P        W  OE      6.10.3-200.fc40.x86_64 #1
andalevor ★★★
()

Ах вот оно что? Я тут в игрульку решил поиграть, а там вставки тормозят. Раньше такого небыло. Видимо проявляется эта проблема? Вот зараза. Надо было брать лаптоп вообще без энвидии.

R_He_Po6oT ★★★★
()

[x] Пользуюсь LTS-ядром

annulen ★★★★★
()

После 30 минут игры средняя нагрузка на систему может взлететь до трёхзначных значений

Очень интересное утверждение. Единственное валидное трёхзначное значение в интервале допустимых значений — 100%. Если средняя нагрузка взлетает «до трёхзначных значений», то это равносильно «загрузка держится на уровне 100%», потому что иначе среднее будет двузначным.

Smacker ★★★★★
()
Ответ на: комментарий от Smacker

Наверное имеется в виду LA. Максимум что видел для 4х ядерной системы la в районе 24. Для большего количества ядер наверное и la поднимется выше 100.

einhander ★★★★★
()
Ответ на: комментарий от Smacker

Имеется в виду load average. Трёхзначный load average в системе, в которой меньше 100 ядер — это значит, что в консерватории что-то очень не так.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от Smacker

Очень интересное утверждение

Насколько я понимаю из контекста имеется в виду нагрузка на процессор. А там расчитывается 100 процентов - это загрузка одного потока. То есть трехзначное знаечение это значит что как минимум один поток полностью загружен. А если будет загружено допустим 8 потоков, то будет выдавать 800 процентов.

vbcnthfkmnth123 ★★★★★
()
Последнее исправление: vbcnthfkmnth123 (всего исправлений: 2)
Ответ на: комментарий от vbcnthfkmnth123

А если будет загружено допустим 8 потоков, то будет выдавать 800 процентов.

Тогда всё равно не вижу проблемы. У меня вот 2 ядра по 2 потока, того 4. Если загрузка будет 300, значит я использую систему на ¾ потенциала, вполне нормально КМК, я за это деньги и платил, когда покупал. В чём магия «трехзначного числа»-то?

Smacker ★★★★★
()

критические сбои
критического бага
Проблема заключается в появлении системных сбоев (kernel oops), что доставляет массу неудобств как разработчикам, так и пользователям.

пропустил, видать, хотел написать: «критическую массу неудобств»?

kott ★★★★★
()
Ответ на: комментарий от Smacker

Тогда всё равно не вижу проблемы

Проблема в том, что тут нагрузка вызывается не чем-то полезным, а в результате бага. Соотвественно, я например не уверен что при такой нагрузке останутся доступные ресурсы на что-то полезное.

vbcnthfkmnth123 ★★★★★
()
Ответ на: комментарий от intelfx

Трёхзначный load average в системе, в которой меньше 100 ядер

Это функция размера runqueue - чем меньше ядер тем при прочих равных значение будет выше.

bugfixer ★★★★★
()
Ответ на: комментарий от vbcnthfkmnth123

Так опять-таки, фраза про «среднюю нагрузку в трёхзначном виде» тогда значит только то, что на 100% загружено минимум одно ядро (или один поток). Чем больше ядер и потоков, тем меньше в этом проблем — хотя, конечно, загрузка из-за бага, просто за здорово живёшь, ради ничего полезного, это плохо. Но как ни крути, но эта фраза про «трёхзначное число в среднем» ничего толком не передаёт. Под это подходит и 185 из 200, и 101 из 1600, но ситуации совсем разные.

Smacker ★★★★★
()
Ответ на: комментарий от kott

И тогда уж и в заголовок надо было ещё раз вынести, для драматизма: «Для разработчиков nvidia настали критические дни: критические сбои драйверов 550+ на ядре 6.10».

Smacker ★★★★★
()
Ответ на: комментарий от X512

Это форумный вброс был, там ему в комментах даже народ отвечает что на такой же железке с ядром 610 нет проблем. Правда они юзали Федору40 а что юзал автор не понятно.

Ну по крайне мере у него на ноуте бета биос.

mx__ ★★★★★
()

когда активируется механизм приостановки системы (suspension)

Так эта проблема вроде была гораздо раньше. А тут уже когда совсем уже критической стала петух в задницу клюнул, тогда и занялись «расследованием». Ну ок, забавно, чем закончится.

Gonzo ★★★★★
()

драйвер NVIDIA-Linux-x86_64-560.35.03

всё норм. кс2 шустро идёт

жаль только на иксах. драйвер сам вайланд выключает

Отчет о подробностях системы


Подробности отчета

  • Дата создания: 2024-08-26 10:53:57

Аппаратная информация:

  • Модель оборудования: ASUSTeK COMPUTER INC. PRIME B450-PLUS
  • Память: 32,0 ГиБ
  • Процессор: AMD Ryzen™ 5 5600G with Radeon™ Graphics × 12
  • Графика: NVIDIA GeForce GTX 1660 SUPER
  • Ёмкость диска: 384,1 ГБ

Программная информация:

  • Версия прошивки: 3802
  • Название ОС: Fedora Linux 40 (Workstation Edition)
  • Сборка ОС: (null)
  • Тип ОС: 64-бит
  • Версия GNOME: 46
  • Оконный интерфейс: X11
  • Версия ядра: Linux 6.10.6-200.fc40.x86_64
vstartsev
()
Последнее исправление: vstartsev (всего исправлений: 1)

Написано как будто для какого-то бытового сайта новостей, зачем там делать?

начинают сбоить при работе на последних версиях ядра Linux (начиная с версии 6.10 и выше)

Судя по данным на форуме NVIDIA, эта ошибка возникла в результате регрессии, связанной с обновлением ядра Linux до версии 6.10.

Ты очень догадливый. Если проблемы начались с 6.10, то это наверно в результате регрессии, связанной с 6.10. Мог бы и без чтения «данных с форма нвидиа» обойтись чтобы сделать эту гениальную догадку. 🤦

активируется механизм приостановки системы (suspension)

Вот это ты выразился!

Вобщем, держи клоуна и учись нормально писать тексты.

firkax ★★★★★
()
Ответ на: комментарий от vstartsev

жаль только на иксах. драйвер сам вайланд выключает

Да закопай ты уже свой вайланд. Вот же упёртые.

firkax ★★★★★
()
Ответ на: комментарий от einhander

Чтобы LA стало больше 100 надо всего лишь запустить параллельно 100 тредов бесконечных числодробилок. Количество ядер не особо при чём, ну кроме того что запускать 100 числодробилок на меньше 100 ядер неразумно. LA это количество тредов, которые хотят выполняться прямо сейчас (и может быть выполняются, а может и нет. если им не хватает проца или например производительности i/o).

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)

когда какое-либо приложение начинает обрабатывать 3D-график

Так нецелевое использование же.

ya-betmen ★★★★★
()
[689611.714027] CPU: 14 PID: 644 Comm: nv_queue Tainted: G        W  OE      6.10.4-x64v3-xanmod1-1-edge-x64v3 #1
[689611.714029] Hardware name: ASUSTeK COMPUTER INC. ROG Strix G713IM_G713IM/G713IM, BIOS G713IM.329 03/01/2023
[689611.714030] RIP: 0010:follow_pte+0x1c6/0x1f0
[689611.714033] Code: 60 00 ad 00 48 81 e2 00 00 00 c0 48 09 c2 c4 e2 e8 f2 d7 75 20 e8 ba f7 ff ff 48 8b 35 33 d0 25 01 48 81 e6 00 00 00 c0 eb 93 <0f> 0b 4c 3b 07 0f 83 59 fe ff ff 41 bc ea ff ff ff eb bb 48 8b 3b
[689611.714034] RSP: 0018:ffffbb7881febb70 EFLAGS: 00010246
[689611.714036] RAX: 0000000000000000 RBX: ffffbb7881febb98 RCX: ffffbb7881febb98
[689611.714038] RDX: ffffbb7881febb90 RSI: 000075bcaab8d000 RDI: ffff98be0ea5b420
[689611.714039] RBP: ffffbb7881febb90 R08: 000075bcaab8d000 R09: ffff98be000a8b00
[689611.714041] R10: 0000000000000200 R11: 0000000000000000 R12: ffff98be0ea5b420
[689611.714042] R13: ffffbb7881febbe0 R14: ffffbb7881febc70 R15: ffffffffffffffff
[689611.714043] FS:  0000000000000000(0000) GS:ffff98c0df900000(0000) knlGS:0000000000000000
[689611.714045] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[689611.714047] CR2: 000070367f200020 CR3: 00000001d4030000 CR4: 0000000000350ef0

не прошло и пол года…

уже давно наблюдаю такое. на стандартном рачевском ядре система еще и зависала.

usi_svobodi
()
Ответ на: комментарий от firkax

ну кстати на иксах ошибки с координатами начали появляться. Контра долго не могла найти 0 на нужном мониторе. В других приложениях всплывающие меню как-то раз улетели не понятно куда.

В вайланде такого не было)

vstartsev
()
Последнее исправление: vstartsev (всего исправлений: 1)

Лучше бы вырубаться на оптимусе научились, задолбали, ничего на дискретке не выполняется - а она не спит

DumLemming ★★
()
Ответ на: комментарий от mx__

Вероятно, на сайте дата публикации файла, а в логе дата, когда прошивка собрана.

Либо эту прошивку позже пересобрали и перевыложили, «Update2» в ссылке https://dlcdnets.asus.com/pub/ASUS/GamingNB/Image/BIOS/113136/ASUS_FX517ZR_317_BIOS_Update_2.exe как бы намекает

MozillaFirefox ★★★★★
()
Последнее исправление: MozillaFirefox (всего исправлений: 1)

Чот у меня дежавю. Помню, в начале нулевых инвидия начала выпускать драйвера под линукс, но лет 10 подряд они опсили ядро в разных местах. И юзера не знали, куда жаловаться: разрабы ядра им говорили «опс указывает на проприетарный драйвер, до свидания», а инвидия говорила, что официальной поддержки линукса у них нет.

Когда наконец проблема была пофикшена (что-то было не так с когерентностью дма-маппингов чтоль), то все праздновали, в тч и на этом сайте. Кто-нить помнит эту историю? Если да - подкиньте ссылку. Гляну, где они что там тогда поправили, и поностальгирую. :)

anonmyous ★★
()
Ответ на: комментарий от I-Love-Microsoft

Так а всё равно «достигает трёхзначных значений» это пустой звук. На четырехядерной системе 300% из 400% это плохо, а на шестнадцатиядерной 101% из 1600% это ок; технически в обоих случаях речь о «трёхзначных числах». Вот я и говорю, что это выражение задумывалось как олицетворение хтонического шмерца и ангста, а получилось так себе. Конкретно бы сказали, сколько оно жрёт. Например, «отжирает полный поток» — вот это конкретно.

Smacker ★★★★★
()
Ответ на: комментарий от firkax

При такой базе достичь трёхзначных значений на обычных системах вообще не получится. Это будет означать более 10000 % загрузки, на четырёхпоточном процессоре это будет перегрузка в 25 раз. При такой перегрузке системы небось даже не получится замерить эту самую перегрузку.

Smacker ★★★★★
()
Ответ на: комментарий от Smacker

Ты тему вообще читаешь? Я уже писал как достичь - запусти 300 потоков числодробилок и будет тебе загрузка 300. На любой системе, хоть на 1-ядерной, хоть на 1000-ядерной. Померить всё получится, конечно.

firkax ★★★★★
()
Ответ на: комментарий от firkax

На любой системе, хоть на 1-ядерной, хоть на 1000-ядерной.

Так на 1-ядерной это катастрофа, а на 1000-ядерной это менее трети от ресурсов. Ты сам-то тред читаешь? Я говорю про то, что фраза про трёхзначное число ничего однозначно не означает. От контекста зависит, трёхзначная нагрузка — это трындец или ничего особенного.

Smacker ★★★★★
()
Последнее исправление: Smacker (всего исправлений: 1)
Ответ на: комментарий от Smacker

Поскольку речь про домашние компы, у которых в самом топовом случае около 100 ядер - однозначно плохо.

firkax ★★★★★
()

О, зачесались.

Я баг такой создавал даже, правда в гите liquorix думал, что их вина. Тоже граф артефакты и зависон.

i3draven ★★
()

У меня чего-то видео стало тормозить, просто каждые десять секунд кэширует данные на Smplayer. Не знаю из-за драйвера или нет, но проблема есть. Причем на лубом плеере (VLC, mpv) Железо rtx4070ti, intel 9900k, 32gb ddr4

Midnight_commander
()
Ответ на: комментарий от R_He_Po6oT

брать лаптоп вообще без энвидии.

для меня второй критерий выбора лаптопа - первый чтобы памяти 32 учитывая что с подачи Кука впаивают чуть больше чем все. И второй - без нвидии.

Qui-Gon ★★★★★
()

как на закрытых драйверах NVIDIA, так и на их открытых версиях.

Открытой версией называется тот самый код в котором закрытая версия прописана в виде НЕХ-массива?

Qui-Gon ★★★★★
()
Ответ на: комментарий от vstartsev

я таки победил. вайланд федора 40 гном на последних дровах нвидии по манам https://www.if-not-true-then-false.com/2015/fedora-nvidia-guide/

драйвер NVIDIA-Linux-x86_64-560.35.03

ядро Linux 6.10.7-200.fc40.x86_64

баги которые были на иксах в идеи пропали на вайланде)

vstartsev
()
Последнее исправление: vstartsev (всего исправлений: 1)
Ответ на: комментарий от Qui-Gon

Это прошивка видеокарты. К ядру линукс это не имеет отношения.

ox55ff ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.