LINUX.ORG.RU
ФорумTalks

К владельцам NVIDIA


0

0

Ув. пользователи Linux и владельцы видеоадаптеров NVIDIA GeForce 6-7 (возможно 8) серии,
у кого из вас были проблемы с беспричинными зависаниями системы с 
включенным compiz или GL приложением? Раньше грешили на некорректную
работу драйверов с SMP системами. Но иногда зависания происходят и на
одном ядре. Есть мнение что виновником является offscreen rendering 
или/и GLXFB. 
Предлагаю простенький тест. Собрать  и запустить следующую программу:

//ofscreen-gl.c:
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>
#include <errno.h>

#include <GL/gl.h>
#include <GL/glx.h>

int main(void)
{
    const char *display_name = ":0";
    const int single_buffer_attribs[] = { GLX_DRAWABLE_TYPE, GLX_PBUFFER_BIT, None };
    GLXFBConfig *fbconfigs;
    int fbconfigs_len;
    Display *display;
    GLXPbuffer pbuffer;
    GLXContext context;

    fprintf(stderr, "XOpenDisplay\n");
    if (!(display = XOpenDisplay(display_name)))
    {
	fprintf(stderr, "Cannot open display %s\n", display_name);
	return 1;
    }
    fprintf(stderr, "glXChooseFBConfig\n");
    if (!(fbconfigs = glXChooseFBConfig(display, DefaultScreen(display),
		    single_buffer_attribs, &fbconfigs_len)))
    {
	fprintf(stderr, "Cannot choose GLX offscreen rendering "
		"configuration on display %s\n", display_name);
	return 1;
    }
    fprintf(stderr, "glXCreatePbuffer\n");
    if (!(pbuffer = glXCreatePbuffer(display, fbconfigs[0], NULL)))
    {
	fprintf(stderr, "Cannot create PBuffer for offscreen rendering\n");
	return 1;
    }
    fprintf(stderr, "glXCreateNewContext\n");
    if (!(context = glXCreateNewContext(display, fbconfigs[0], GLX_RGBA_TYPE, NULL, True)))
    {
	fprintf(stderr, "Cannot create GL context for offscreen rendering\n");
	return 1;
    }
    fprintf(stderr, "glXMakeContextCurrent\n");
    if (!glXMakeContextCurrent(display, pbuffer, pbuffer, context))
    {
    	fprintf(stderr, "Cannot make GL context current\n");
	return 1;
    }

    /* ... */

    fprintf(stderr, "glXDestroyContext\n");
    glXDestroyContext(display, context);
    fprintf(stderr, "glXDestroyPbuffer\n");
    glXDestroyPbuffer(display, pbuffer);
    fprintf(stderr, "XCloseDisplay\n");
    XCloseDisplay(display);

    return 0;
}
//-------

Собирается так:
gcc -W -Wall -o offscreen-gl offscreen-gl.c -lX11 -lGL

Затем запускаем в цикле (run.sh):
#!/bin/bash
while true; do
./offscreen-gl
done


Если не зависли после минуты работы, жмем CTRL+C и смотрим 
dmesg | grep -i nvrm в поисках сообщений типа:
NVRM: Xid (0006:00): 13, 0003 beef3097 00004497 0000021c 00000000 00000002
NVRM: Xid (0006:00): 30, L1 -> L0
Если нету, поздравляю!, ваша карта работает нормально.

Всем же кто завис или/и нашел сообщение типа NVRM Xid , милости прошу 
http://www.nvnews.net/vbulletin/forumdisplay.php?f=14 .  Тут можно 
оставить пару лесных сообщений для разработчиком NVIDIA и приложить 
свой nvidia-bug-report.log , который генерируется 
nvidia-bug-report.sh скриптом.

Спасибо за внимание!

PS: Есть подозрение что глюк может произрастать из bios видеокарты...

Не собирайте! Там вирус!!!1111одынодын

anonymous
()

Забыл сказать что у меня на gf7300LE стабильно виснет после 7-8 проходов :'-(

А на работе MX440 выполняет без малейшего скрипа хоть целый день....

SilentLexx
() автор топика

s/ofscreen-gl.c:/offscreen-gl.c:

i fixed typo for you. LOL

anonymous
()

GeForce 6600, драйвер 100.14.19.

Не зависло, хотя Compiz подтормаживал во время работы скрипта.

Сообщения в выводе dmesg действительно были.

На форуме отпишусь.

Sikon ★★★
()

ставил в цикл на 10 минут. ничего не повисло. карточка GeForce4 MX 4000

З.Ы.

Что я делаю не так?

anonymous
()
Ответ на: комментарий от Sikon

аналогично в dmesg

[10:04:59 ~/test]$ dmesg | grep -i nvrm

NVRM: loading NVIDIA UNIX x86 Kernel Module 100.14.19 Wed Sep 12 14:12:24 PDT 2007

NVRM: Xid (0005:00): 13, 0003 beef3097 00004097 0000021c 00000000 00000002

NVRM: Xid (0005:00): 30, L1 -> L0

NVRM: Xid (0005:00): 13, 0003 beef3097 00004097 0000021c 00000000 00000002

NVRM: Xid (0005:00): 30, L0 -> L0

NVRM: Xid (0005:00): 13, 0003 beef3097 00004097 0000021c 00000000 00000002

NVRM: Xid (0005:00): 13, 0003 beef3097 00004097 0000021c 00000000 00000002

NVRM: Xid (0005:00): 13, 0003 beef3097 00004097 0000021c 00000000 00000002

NVRM: Xid (0005:00): 13, 0003 beef3097 00004097 0000021c 00000000 00000002

NVRM: Xid (0005:00): 13, 0003 beef3097 00004097 0000021c 00000000 00000002

alo33
()
Ответ на: комментарий от SilentLexx

Пижоны и позёры получили по заслугам! Используйте _правильные_ карточки и не гоняйтесь за новомодным и сомнительным дерьмом. Вот!

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

> Пижоны и позёры получили по заслугам! Используйте _правильные_ карточки и не гоняйтесь за новомодным и сомнительным дерьмом. Вот!

Ононимус, найди мне МХ440 под PCI-E и с шейдерами 2.0 хотябы ;)

SilentLexx
() автор топика

не люблю XiD'ы

http://www.linux.org.ru/view-message.jsp?msgid=1145160

глюки пропали после тотального апгрейда (ядро, xorg, nvidia и тд) Хотя вот от таких приложений в логи валятся xid, но уже без зависонов.

WerNA ★★★★★
()

блин...собирать лень, компиз не пользую ибо нафиг не надо. Но всё пока работает, это факт. Игрушки старенькие в вине и т.п.

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

>блин...собирать лень, компиз не пользую ибо нафиг не надо. Но всё пока работает, это >факт. Игрушки старенькие в вине и т.п.

>amoralyrr (*) (09.01.2008 10:28:28)

Вот так из-за лени юзверов некоторые баги не фиксятся годами

alo33
()
Ответ на: комментарий от SilentLexx

s/Ононимус/anonymous

> МХ440 под PCI-E и с шейдерами 2.0 хотябы

А зачем это всё надо? вторые шейдеры нужны для работы Эмакса? Никогда не слышал...

anonymous
()

compiz'ом не пользуюсь.

BFG 8800GT OC 512mb

позле ~5ти минут работы:

dmesg | grep -i nvrm NVRM: loading NVIDIA UNIX x86_64 Kernel Module 169.04 Wed Nov 14 16:01:30 PST 2007

и всё.

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

>Правильная это безпроблемная. Что-то в духе второго или третьего GeForce.

+1. У самого до сих пор GeForce2 MX-400, из проблем с ней могу назвать только 2 раза за долгие годы службы сдохший кулер.

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

> А зачем это всё надо? вторые шейдеры нужны для работы Эмакса? Никогда не слышал...

А Эмаксом можно 3D моделировать? Никогда неслышал....

SilentLexx
() автор топика
Ответ на: комментарий от SilentLexx

Эмаском можно _всё_. Ты просто не научился им пользоваться.

anonymous
()

Хм, у меня не виснет, однако система работает странно при выполнении этой программы: периодически умирает на 20-30 секунд, потом очухивается и бежит дальше, и так несколько раз подряд.

P.S. сообщения были. 7600GS, SMP, Fedora8.

jr_A
()
Ответ на: комментарий от anonymous

Ононимус, как бы там небыло, это ни есть хорошо если систему валит маленькая програмулька в 63 строки.... Это ВиндоусВей прям какойто :((

SilentLexx
() автор топика

GeForce 8600M GS, дрова 169.07, всё в порядке. Не виснет и сообщений нету.

the_one
()
Ответ на: комментарий от SilentLexx

> Ононимус

Туповатый? Я-же написал как правильно. Не зли меня.

> систему валит маленькая програмулька в 63 строки

Некоторые вирусы, трояны и эксплоиты тоже были маленьких размеров.

> Это ВиндоусВей прям какойто

А на ЛОРе что-то другое обсуждают? о_О

anonymous
()

Если карточка только для компиза - это это однозначно ATI X700/800/850 и открытые дрова. Нвидию фтопку.

Gharik
()
Ответ на: комментарий от SilentLexx

>Ононимус, найди мне МХ440 под PCI-E и с шейдерами 2.0 хотябы ;)

Игры для лохов. Нормальные люди отдыхают в реале, а не в виртуале.

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

> Игры для лохов. Нормальные люди отдыхают в реале, а не в виртуале.

ну не надо быть таким категоричным, /b/рат. ну может не лохи, а сугубо задр*ченные люди? Так? А про виртуал или реал... не знаю. Как по мне, то человечество не придумало игр лучше, чем Nethack, Tetris и DooM.

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

Сам ты быдло! Разгон требует знаний между прочим, и очень прямых рук. Не зря 90% юзеров о нем и не слышали...

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

Я то нет, а вот Asus сука вздрючил заводской прошивкой эту карточку. 580/600 против рекомендованых NVIDIA 450/500. С пониженными вручную тоже виснет...

/me думает что прийдется менять карточку ((

SilentLexx
() автор топика

>Ув. пользователи Linux и владельцы видеоадаптеров NVIDIA GeForce 6-7 (возможно 8) серии

5-ая серия (GeForce FX 5200 (Leadtek)).

dmesg | grep -i nvrm
NVRM: loading NVIDIA UNIX x86_64 Kernel Module 100.14.19 Wed Sep 12 14:08:38 PDT 2007
NVRM: Xid (0001:00): 13, 0002 beef3097 00003497 0000021c 00000000 00000002
NVRM: Xid (0001:00): 30, L1 -> L0

При использовании compiz'а иксы иногда висли. оказывается сие не только у меня =(

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

А оно на разных драйверах по разному, от случая к случаю. То иксы подвиснут (по ssh грохнуть можно), то намертво виснет (alt+b+sysrq тож ниче недаёт и не пингуется машина, только reset). И от разных версий драйверов тоже зависит.

Здается мне у них там где то переполнение буффера идёт. Потомучто если единоразово запускаешь, только в логи какает. А если в цикле - виснет.

SilentLexx
() автор топика

NVIDIA GeForce 6 переодически всё дохнет из-за дров к видео. Чем больще 3d тем чаще дохнет. Ошибки типа "0003 beef3097 00004497 0000021c 00000000 00000002" есть и лезут даже в консоль без спросу. Собирать ничего не буду :Р

anonymous
()
Ответ на: комментарий от Midael

Гы мож на ЛОРе прям спец раздел выделить чтоб народ разные баги тестил и багрепортил

А то вот юзали все эти дрова и карточки с багом и бед незнали а тут раз и у всех оказалось что глючит

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

По тому что оно в логи пишет, хрен сним, лиш бы не висло ( А то задрало уже, все настроение портится прям ((

SilentLexx
() автор топика

01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600] (rev a2)
Linux battletoad 2.6.22-14-generic #1 SMP Tue Dec 18 08:02:57 UTC 2007 i686 GNU/Linux
MB: Intel-D915GAG
Сейчас idle=poll, maxcpus=1, NvAGP=0
Обновил BIOS до последнего - сообщения периодически появляются, но вроде бы без зависаний. До этого сообщений было много, появлялись артефакты (особенно - при работе OpenGL). Драйвер nvidia 100.14.19.
Тестирую дальше..

Nicko
()

>у кого из вас были проблемы с беспричинными зависаниями системы с включенным compiz или GL приложением?

Хаха, не пользователь NVIdia, а самой что нинаесть поганой АТИ, но симптомы наблюдаю один-в-один.

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

>Если карточка только для компиза - это это однозначно ATI X700/800/850 и открытые дрова.

откуда вещества? В 2008 году иметь от силы опенгл 1.3 на открытых дровах это маразм.

lester_dev ★★★★★
()

Compiz не стоит, карточка 7600GS, дрова 169.07
$ dmesg | grep -i nvrm
[442694.832404] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
[442694.903491] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
[442694.961705] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
[442695.015576] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
[442695.080289] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
[442695.144745] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
[442695.209666] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
[442695.273193] NVRM: Xid (0001:00): 13, 0004 beef3097 00004097 0000021c 00000000 00000002
k

snizovtsev ★★★★★
()

NVIDIA 6100 on board:

NVRM: RmPowerManagement: 3
NVRM: RmPowerManagement: 4
NVRM: Xid (0000:0d): 13, 0002 beef3097 00004497 0000021c 00000000 00000002
NVRM: Xid (0000:0d): 30,  L1 -> L0
NVRM: Xid (0000:0d): 13, 0002 beef3097 00004497 0000021c 00000000 00000002
NVRM: Xid (0000:0d): 30,  L1 -> L0
NVRM: Xid (0000:0d): 13, 0002 beef3097 00004497 0000021c 00000000 00000002
NVRM: Xid (0000:0d): 30,  L1 -> L0
NVRM: Xid (0000:0d): 13, 0002 beef3097 00004497 0000021c 00000000 00000002
NVRM: Xid (0000:0d): 30,  L1 -> L0
NVRM: Xid (0000:0d): 13, 0002 beef3097 00004497 0000021c 00000000 00000002
NVRM: Xid (0000:0d): 30,  L1 -> L0

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

> Ничего не виснет, но раз в 20-30 секунд случается небольшой подвисон.

У меня также, но подвисон на несколько секунд. Карточка GeForce 7600GS

dmesg | grep -i nvrm даёт:

NVRM: loading NVIDIA UNIX x86_64 Kernel Module  100.14.19  Wed Sep 12 14:08:38 PDT 2007
NVRM: Xid (0001:00): 13, 0002 beef3097 00004097 0000021c 00000000 00000002
NVRM: Xid (0001:00): 30,  L1 -> L0
NVRM: Xid (0001:00): 13, 0002 beef3097 00004097 0000021c 00000000 00000002
NVRM: Xid (0001:00): 30,  L1 -> L0
NVRM: Xid (0001:00): 13, 0002 beef3097 00004097 0000021c 00000000 00000002
NVRM: Xid (0001:00): 30,  L1 -> L0
NVRM: Xid (0001:00): 13, 0002 beef3097 00004097 0000021c 00000000 00000002
NVRM: Xid (0001:00): 30,  L1 -> L0
NVRM: Xid (0001:00): 13, 0002 beef3097 00004097 0000021c 00000000 00000002
NVRM: Xid (0001:00): 30,  L1 -> L0

anonymous_incognito ★★★★★
()

Всё умерло за 10-20 секунд :( Иксы впали в ступор и повешали всю систему.

Jan 10 01:48:22 tazik kernel: BUG: soft lockup - CPU#0 stuck for 11s! [X:2818]
Jan 10 01:48:22 tazik kernel:
Jan 10 01:48:22 tazik kernel: Pid: 2818, comm:                    X
Jan 10 01:48:22 tazik kernel: EIP: 0060:[<f9826bd4>] CPU: 0
Jan 10 01:48:22 tazik kernel: EIP is at _nv003834rm+0x23/0x24 [nvidia]
Jan 10 01:48:22 tazik kernel:  EFLAGS: 00003202    Tainted: P         (2.6.23.9-85.fc8 #1)
Jan 10 01:48:22 tazik kernel: EAX: 10a6e906 EBX: efc4b800 ECX: 00009410 EDX: f9d00000
Jan 10 01:48:22 tazik kernel: ESI: 00009410 EDI: f704c400 EBP: f05e9ef8 DS: 007b ES: 007b FS: 00d8
Jan 10 01:48:22 tazik kernel: CR0: 8005003b CR2: 09cc907c CR3: 3771e000 CR4: 000006d0
Jan 10 01:48:22 tazik kernel: DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
Jan 10 01:48:22 tazik kernel: DR6: ffff0ff0 DR7: 00000400
Jan 10 01:48:22 tazik kernel:  [<f97e93d0>] _nv008090rm+0x70/0x95 [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f98886f8>] _nv001559rm+0xc3/0xf9 [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f9887706>] _nv001578rm+0xc0/0x102 [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f96e5a83>] _nv009007rm+0x84/0x34b [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f96fae43>] _nv009026rm+0x31/0x3e [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f97ea969>] _nv008043rm+0x55/0x227 [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f97ea1fe>] _nv008044rm+0x61/0x9c [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f9830ea5>] _nv002945rm+0xc7/0xeb [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f982b7d0>] rm_disable_adapter+0x8b/0xd9 [nvidia]
Jan 10 01:48:22 tazik kernel:  [<f98c5479>] nv_kern_close+0x24a/0x3c2 [nvidia]
Jan 10 01:48:22 tazik kernel:  [<c0481f16>] __fput+0xbb/0x171
Jan 10 01:48:22 tazik kernel:  [<c047f889>] filp_close+0x51/0x58
Jan 10 01:48:22 tazik kernel:  [<c048091a>] sys_close+0x6e/0xa5
Jan 10 01:48:22 tazik kernel:  [<c040518a>] syscall_call+0x7/0xb
Jan 10 01:48:22 tazik kernel:  [<c0610000>] xfrm_state_sort+0x2e/0x5a
Jan 10 01:48:22 tazik kernel:  =======================

NVIDIA GeForce 5600 -- suxx :)

eveel ★★
()

Под gentoo когда комп был с compiz практически всегда раз в день такое случалось самое интересное что когда на ночь комп оставлял повисало все намертво а днем при работе на компе происходили 3-6 секундные повисания но гдето раз в день

Сейчас под debian без compiz такого не наблюдаю

Но теперь точно знаю что compiz ставить небуду пока ненайдеться решение такой проблемы

(карточка nvidia GeForce 7600 GS)

voiceel
()
Ответ на: комментарий от anonymous_incognito

работало где-то минут 40. compiz, etc не использую.

$ dmesg|grep -i nvrm
NVRM: loading NVIDIA UNIX x86 Kernel Module  169.07  Thu Dec 13 18:42:56 PST 2007

$ sudo lspci -v -d '10de:*'
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8600 GTS (rev a1) (prog-if 00 [VGA controller])
	Subsystem: XFX Pine Group Inc. Unknown device 2280
	Flags: bus master, fast devsel, latency 0, IRQ 16
	Memory at f6000000 (32-bit, non-prefetchable) [size=16M]
	Memory at e0000000 (64-bit, prefetchable) [size=256M]
	Memory at f4000000 (64-bit, non-prefetchable) [size=32M]
	I/O ports at 9000 [size=128]
	[virtual] Expansion ROM at f7000000 [disabled] [size=128K]
	Capabilities: [60] Power Management version 2
	Capabilities: [68] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable-
	Capabilities: [78] Express Endpoint IRQ 0
	Capabilities: [100] Virtual Channel
	Capabilities: [128] Power Budgeting
	Capabilities: [600] Unknown (11)

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

Поставил старый 9639. Минут 15-20 работает без зависов и сообщений, потом намертво вешает систему :`-(

Сегодня поменяю на время свою 7300 на 6600 , может чтото изменится...

SilentLexx
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.