[mdk-re] Pro Nvidia , glx, etc...

avl =?iso-8859-1?q?info_=CE=C1_atmsk=2Eru?=
Вс Май 27 19:26:01 MSD 2001


Ставил я себе и 769 и 1-1251 драйвера и обнаружил все глюки о которых тут 
писали.
1) Сначала не работали  скрнсаверы (gl) - оказалось, надо запустить их из 
терминала и они ругательски покажут на ссылку типа libgl.so.1.2 
У меня такой не было и я ее создал и направил на libgl.so.1-1251 из 
драйверов. Все заработало.

2) Попробовал оставить opengl скринсейвер и он через некоторое время завесил 
всю машину... (уже писали)

3) Игра с настройками драйвера не дала ничего. (по умолчанию ставятся самые 
нормальные режимы)
например, попытка включить NVAGP=2 привела к дикой нестабильности системы. 
(spring2001, ядро 2.2-19 linuxup)

3) Меза у меня с самого начала работала. Но где то я вычитал, что fps  
(gears) не должен существенно меняться от размеров окна с шестеренками. А у 
меня он изменяется от 5000 (при минимуме) до 500 (шестеренки на весь 
экран)... непонятка. 

Проверка используемых библиотек по readme из драйверов ничего криминального 
не обнаружила...

4) По моему с новыми драйверами у меня некоторые приложения перестали 
запускаться. Причем то идут, то не идут...
Например gears, а ltris (тетрис такой) не желает работать в режиме 
multyplayer на одной машине. Причем если раньше запускался два раза из трех, 
то теперь вообще не запускается - только покажет два игровых поля рядом и 
хлоп! нету тетриса, а во всех остальных режимах работает как часы.
Ошибка с этими прогами каждый раз одна и та же - segmentation fault. И 
осознать, что это такое у меня чего то не получается.

Вот пример такой фигни...

glVertex3f(0x3fa66666, 0x34740f89, 0x3e800000, 10, 0) = 0
glEnd(0, 0x3fe00000, 0x40327cd0, 0x3e800000, 0)   = 0
glEndList(0xbffff7f8, 0x4000cd80, 300, 1, 0xbffff864) = 0x44866378
glEnable(2977, 0, 0x0804b7fc, 0x0804a417, 0xbffff7f8) = 0x44865008
glutDisplayFunc(0x08049ef0, 0xbffff864, 0xbffff808, 0x08048f5f, 0x0804b80c) = 
0x08051708
glutReshapeFunc(0x0804a220, 0xbffff864, 0xbffff808, 0x08048f5f, 0x0804b80c) = 
0x08051708
glutKeyboardFunc(0x0804a120, 0xbffff864, 0xbffff808, 0x08048f5f, 0x0804b80c) 
= 0x08051708
glutSpecialFunc(0x0804a190, 0xbffff864, 0xbffff808, 0x08048f5f, 0x0804b80c) = 
0x08051708
glutVisibilityFunc(0x0804a520, 0xbffff864, 0xbffff808, 0x08048f5f, 
0x0804b80c) = 0x08051708
glutMainLoop(0x0804a520, 0xbffff864, 0xbffff808, 0x08048f5f, 0x0804b80c 
<unfinished ...>
glutIdleFunc(0x0804a100, 0x01c00001, 0x08052aa8, 0x40047f8a, 0x4005a9b5) = 
0x400568f0
glViewport(0, 0, 300, 300, 0x0804a220)            = 1
glMatrixMode(5889, 0, 300, 300, 0x0804a220)       = 0x44865008
glLoadIdentity(5889, 0, 300, 300, 0x0804a220)     = 0x40623ffc
glFrustum(0, 0xbff00000, 0, 0x3ff00000, 0)        = 0x40623ffc
glMatrixMode(5888, 0, 300, 300, 0x0804a220)       = 0x44865008
glLoadIdentity(5888, 0, 300, 300, 0x0804a220)     = 0x08077930
glTranslatef(0, 0, 0xc2200000, 300, 0x0804a220)   = 0x40623ffc
glClear(16640, 0, 0xc2200000, 0x40046ff3, 0x0804bb20) = 0
glPushMatrix(16640, 0, 0xc2200000, 0x40046ff3, 0x0804bb20) = 0x0807afec
glRotatef(0x41a00000, 0x3f800000, 0, 0, 16640)    = 0x40623ffc
glRotatef(0x41f00000, 0, 0x3f800000, 0, 0x0804bb20) = 0x40623ffc
glRotatef(0, 0, 0, 0x3f800000, 0x41f00000)        = 0x44864020
glPushMatrix(0x0804bb20, 0x01c00001, 0x08052aa8, 0, 0x4005fe9c) = 0x0807afec
glTranslatef(0xc0400000, 0xc0000000, 0, 0x0807afec, 0x0804bb20) = 0x40623ffc
glRotatef(0, 0, 0, 0x3f800000, 0xc0400000)        = 0x44864020
glCallList(1, 0xc0000000, 0, 0x0807afec, 0x0804bb20) = 0
glPopMatrix(1, 0xc0000000, 0, 0x0807afec, 0x0804bb20) = 0x1fbfffee
glPushMatrix(1, 0xc0000000, 0, 0x0807afec, 0x0804bb20) = 0x0807afec
glTranslatef(0x40466666, 0xc0000000, 0, 0x0807afec, 0x0804bb20) = 0x40623ffc
glRotatef(0xc1100000, 0, 0, 0x3f800000, 0x40466666) = 0x40623ffc
glCallList(2, 0xc0000000, 0, 0x0807afec, 0)       = 0
glPopMatrix(2, 0xc0000000, 0, 0x0807afec, 0)      = 0x1fbfffee
glPushMatrix(2, 0xc0000000, 0, 0x0807afec, 0)     = 0x0807afec
glTranslatef(0xc0466666, 0x40866666, 0, 0x0807afec, 0) = 0x40623ffc
glRotatef(0xc1c80000, 0, 0, 0x3f800000, 0xc0466666) = 0x40623ffc
glCallList(3, 0x40866666, 0, 0x0807afec, 0)       = 0
glPopMatrix(3, 0x40866666, 0, 0x0807afec, 0)      = 0x1fbfffee
glPopMatrix(3, 0x40866666, 0, 0x0807afec, 0)      = 0x1fbfffee
glutSwapBuffrs(3, 0x40866666, 0, 0x0807afec, 0 <unfinished ...>
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++





Я тут на LOR нашел ссылку на статейку мандраковского спеца и он там дал 
несколько идей. Первое, драйвера ставить из тарбола, второе, не пользоваться 
xdm (граф. вход в систему?) , так как из за быстрого двойного инита драйверов 
они (драйвера) глючат и всякие там регистры у них заплетаются. И последнее - 
снизить частоту шины до 90-95 МГц и отключить AGP.
При этом он утверждает, что драйвера перестают виснуть со временем, но 
происходит это не из за снижения температуры, а из за всего остального ...

А потом...

Посмотрел я cat proc/nv/card0  и приуныл...

----- Driver Info -----
NVRM Version: 1.0-1251
------ Card Info ------
Model:        Riva TNT2
IRQ:          11
------ AGP Info -------
AGP status:   Enabled
AGP Driver:   NVIDIA
Bridge:       Via Apollo Pro KT133


SBA:          Supported [disabled]            
FW:           Supported [disabled]                    
ЧЕГО ЭТО ТАКОЕ И КАК ИХ ВКЛЮЧИТЬ?


Rates:        4x 2x 1x  [4x]
Registers:    0x1f000217:0x00000104


Если чей то глаз сюда добрался, то не в порядке раздувания и без того 
неувядающего флейма, а в порядке очень важной на мой взгляд идеи,  хочу 
предложить составить ограниченный список оборудования, с которым линух не 
просто работает, а работает ОТЛИЧНО. Я бы, например с удовольствием выкинул 
свой asus 3800, если бы знал, что поставить на его место.  При покупке нового 
железа, очень нужна такая информация, при попытке внедрения чего либо на 
предприятии - еще важней.

-- 
С уважением Алексей

PS. Пишу сюда впервые и не могу не пнуть добрым словом команду разработчиков 
этого дистрибутива. Если бы не они - я бы до сих пор был уверен, что линух и 
рабочая станция в офисе (секретутское, менеджерское и тому подобные места) - 
это больная фантазия, а теперь вот приходится ломать голову - как бы мне 
своим клиентам повнедрять не только сервера, но и рабочие места... ;)

Пусть вам чаще икается.




Подробная информация о списке рассылки community