View Single Post
Old 12-26-03, 10:35 AM   #36
juhl
Registered User
 
Join Date: Dec 2003
Posts: 2
Angry 1.0-5328 == a disapointment :(

These drivers are a step back for me compared to 1.0-4496. 4496 was stable, quite fast and generally worked well. With 5328 I'm getting random X lockups, I can't run 'glxgears', I can't play Never Winter Nights any longer and general performance feels worse (especially the time it takes to start X seems to have lengthened).

I must say that I'm seriously considering getting rid of my NVidia graphics card and move to something else where specs are out in the open and drivers can be developed (or at least fixed) by the community. NVidia may make great cards, but the drivers don't seem to be of consistent quality (yes, I've had problems with older versions as well), and if moving to another product means fewer features, lesser speed and some money out the window, well, I'll just have to live with that.

When I try to run 'glxgears' I get

$ glxgears
Error: couldn't get an RGB, Double-buffered visual

If I go back to 1.0-4496 glxgears run fine with the same X config.

Never Winter Nights just gives me :

$ nwn
Error

and then it hangs and has to be killed.

But the worst bit by far is the, seemingly random, X lockups. It can happen after a few minutes of use or after several hours, but I've yet to see the system run for 6+ hours without a lockup. When X locks up, I can move the mouse pointer around the screen, but that's /it/, *nothing* else works. I can't even switch to a text console to kill X, but have to hit the reset or power button.


Some details about my system:

OS: Slackware Linux 9.1

bash-2.05b$ cat /proc/driver/nvidia/version
NVRM version: NVIDIA Linux x86 nvidia.o Kernel Module 1.0-5328 Wed Dec 17 13:54:51 PST 2003
GCC version: gcc version 3.2.3

bash-2.05b$ cat /proc/driver/nvidia/cards/0
Model: GeForce3
IRQ: 11
Video BIOS: 03.20.00.10.00
Card Type: AGP

bash-2.05b$ cat /proc/driver/nvidia/agp/card
Fast Writes: Not Supported
SBA: Not Supported
AGP Rates: 4x 2x 1x
Registers: 0x1f000007:0x0f000104

bash-2.05b$ cat /proc/driver/nvidia/agp/host-bridge
Host Bridge: Advanced Micro Devic AMD-760 [IGD4-1P] Sy
Fast Writes: Supported
SBA: Supported
AGP Rates: 4x 2x 1x
Registers: 0x0f000217:0x00000104

bash-2.05b$ cat /proc/driver/nvidia/agp/status
Status: Enabled
Driver: AGPGART
AGP Rate: 4x
Fast Writes: Disabled
SBA: Disabled

bash-2.05b$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 4
model name : AMD Athlon(tm) Processor
stepping : 4
cpu MHz : 1400.870
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr syscall mmxext 3dnowext 3dnow
bogomips : 2760.70

bash-2.05b$ lsmod
Module Size Used by
uhci_hcd 29448 0
ohci_hcd 14016 0
nvidia 2070248 10

bash-2.05b$ uname -a
Linux dragon 2.6.0 #5 Thu Dec 25 01:11:09 CET 2003 i686 unknown unknown GNU/Linux

As you can see I'm using a custom 2.6.0 kernel. I'm using the patches from http://www.minion.de/ in order to install the driver, but I've been doing this with the 1.0-4496 drivers as well without trouble.
I have also tested the 1.0-5328 drivers with the 2.4.23 kernel, and there I also get X lockups, so it's not purely a 2.6.0 issue.

One last data point I can provide is that I keep getting loads of these messages in /var/log/syslog when using a 2.6.0 kernel + the minion.de patches :

Dec 26 04:18:17 dragon kernel: Badness in pci_find_subsys at drivers/pci/search.c:132
Dec 26 04:18:17 dragon kernel: Call Trace:
Dec 26 04:18:17 dragon kernel: [<c01fcb15>] pci_find_subsys+0xe5/0xf0
Dec 26 04:18:17 dragon kernel: [<c01fcb4f>] pci_find_device+0x2f/0x40
Dec 26 04:18:17 dragon kernel: [<c01fca08>] pci_find_slot+0x28/0x50
Dec 26 04:18:17 dragon kernel: [<e1f2d03a>] os_pci_init_handle+0x3a/0x70 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1dc186f>] _nv001243rm+0x1f/0x24 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1e729dd>] _nv003797rm+0xa9/0x128 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1edf421>] _nv001490rm+0x55/0xe4 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1f080d4>] _nv000816rm+0x334/0x384 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1e708ac>] _nv003801rm+0xd8/0x100 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1f07bcf>] _nv000809rm+0x2f/0x34 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1e716d0>] _nv003816rm+0xf0/0x104 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1e6ff8e>] _nv003795rm+0x6ea/0xaec [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1dda277>] _nv004046rm+0x3a3/0x3b0 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1edbb27>] _nv001476rm+0x277/0x45c [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1dc43aa>] _nv000896rm+0x4a/0x64 [nvidia]
Dec 26 04:18:17 dragon kernel: [<e1dc5bc4>] rm_isr_bh+0xc/0x10 [nvidia]
Dec 26 04:18:17 dragon kernel: [<c011f246>] tasklet_action+0x46/0x70
Dec 26 04:18:17 dragon kernel: [<c011f059>] do_softirq+0x99/0xa0
Dec 26 04:18:17 dragon kernel: [<c010b217>] do_IRQ+0x117/0x150
Dec 26 04:18:17 dragon kernel: [<c0109648>] common_interrupt+0x18/0x20

Dec 26 16:37:39 dragon kernel: Debug: sleeping function called from invalid context at mm/slab.c:1856
Dec 26 16:37:39 dragon kernel: in_atomic():1, irqs_disabled():0
Dec 26 16:37:39 dragon kernel: Call Trace:
Dec 26 16:37:39 dragon kernel: [<c0118deb>] __might_sleep+0xab/0xd0
Dec 26 16:37:39 dragon kernel: [<c013b089>] __kmalloc+0x89/0x90
Dec 26 16:37:39 dragon kernel: [<e1f2cb6c>] os_alloc_mem+0x7c/0x90 [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1dc1a20>] _nv001308rm+0x10/0x28 [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1da9863>] _nv005631rm+0x7f/0x100 [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1daf8b0>] _nv000858rm+0x348/0xe14 [nvidia]
Dec 26 16:37:39 dragon kernel: [<c0151cad>] bh_lru_install+0xbd/0x100
Dec 26 16:37:39 dragon kernel: [<c0117136>] scheduler_tick+0x226/0x4a0
Dec 26 16:37:39 dragon kernel: [<c0123466>] update_process_times+0x46/0x50
Dec 26 16:37:39 dragon kernel: [<c012373e>] do_timer+0xde/0xf0
Dec 26 16:37:39 dragon kernel: [<e1dabb1d>] _nv002962rm+0x2c5/0x3b8 [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1dc64d9>] _nv000899rm+0x4c9/0xf70 [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1dc64ec>] _nv000899rm+0x4dc/0xf70 [nvidia]
Dec 26 16:37:39 dragon kernel: [<c0116c0a>] wake_up_state+0x1a/0x20
Dec 26 16:37:39 dragon kernel: [<c012568f>] send_group_sig_info+0x2f/0x50
Dec 26 16:37:39 dragon kernel: [<c0116c0a>] wake_up_state+0x1a/0x20
Dec 26 16:37:39 dragon kernel: [<c0116c0a>] wake_up_state+0x1a/0x20
Dec 26 16:37:39 dragon kernel: [<c012568f>] send_group_sig_info+0x2f/0x50
Dec 26 16:37:39 dragon kernel: [<c0116c0a>] wake_up_state+0x1a/0x20
Dec 26 16:37:39 dragon kernel: [<c012568f>] send_group_sig_info+0x2f/0x50
Dec 26 16:37:39 dragon kernel: [<c0160edb>] send_sigio_to_task+0xeb/0x110
Dec 26 16:37:39 dragon kernel: [<c0160f55>] send_sigio+0x55/0x100
Dec 26 16:37:39 dragon kernel: [<e1db740a>] _nv001344rm+0x22/0x6c [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1e8d40b>] _nv001556rm+0x5b/0x6c [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1f10cc4>] _nv001803rm+0x14/0x18 [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1f0fa55>] _nv000426rm+0x39/0x5c [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1db7595>] _nv001338rm+0x1d/0x24 [nvidia]
Dec 26 16:37:39 dragon kernel: [<c0160f55>] send_sigio+0x55/0x100
Dec 26 16:37:39 dragon kernel: [<c0116c0a>] wake_up_state+0x1a/0x20
Dec 26 16:37:39 dragon kernel: [<e1f22d5f>] _nv000176rm+0x57/0x3ec [nvidia]
Dec 26 16:37:39 dragon kernel: [<c02b945b>] input_event+0xdb/0x3d0
Dec 26 16:37:39 dragon kernel: [<c02bd2d9>] psmouse_process_packet+0x159/0x2a0
Dec 26 16:37:39 dragon kernel: [<c02bd543>] psmouse_interrupt+0x123/0x1c0
Dec 26 16:37:39 dragon kernel: [<c0116c0a>] wake_up_state+0x1a/0x20
Dec 26 16:37:39 dragon kernel: [<c0116960>] recalc_task_prio+0x90/0x1a0
Dec 26 16:37:39 dragon kernel: [<c01179e1>] __wake_up_common+0x31/0x50
Dec 26 16:37:39 dragon kernel: [<c01612de>] kill_fasync+0x2e/0x50
Dec 26 16:37:39 dragon kernel: [<c0116960>] recalc_task_prio+0x90/0x1a0
Dec 26 16:37:39 dragon kernel: [<c01179e1>] __wake_up_common+0x31/0x50
Dec 26 16:37:39 dragon kernel: [<c03025a2>] sock_sendmsg+0x92/0xb0
Dec 26 16:37:39 dragon kernel: [<c0137dd2>] __get_free_pages+0x22/0x50
Dec 26 16:37:39 dragon kernel: [<c030274e>] sock_aio_read+0xce/0xe0
Dec 26 16:37:39 dragon kernel: [<c0302921>] sock_readv_writev+0x71/0xa0
Dec 26 16:37:39 dragon kernel: [<e1dc5be1>] rm_ioctl+0x19/0x20 [nvidia]
Dec 26 16:37:39 dragon kernel: [<e1f2a59c>] nv_kern_ioctl+0x7c/0x480 [nvidia]
Dec 26 16:37:39 dragon kernel: [<c01232dd>] update_wall_time+0xd/0x40
Dec 26 16:37:39 dragon kernel: [<c012373e>] do_timer+0xde/0xf0
Dec 26 16:37:39 dragon kernel: [<c014f107>] vfs_read+0xe7/0x120
Dec 26 16:37:39 dragon kernel: [<c010ef2a>] do_gettimeofday+0x2a/0xc0
Dec 26 16:37:39 dragon kernel: [<c01615d4>] sys_ioctl+0xf4/0x2a0
Dec 26 16:37:39 dragon kernel: [<c01094db>] syscall_call+0x7/0xb


Would you please, Please, *Please* consider Open Source'ing these drivers so we can help you fix them? I know they probably contain info related to your hardware that you don't want your competitors to have access to, but I would bet that the increased competition you would get from disclosing some secrets would be more then equally offset by the increased peer-review and co-development work that would happen with your drivers. You /could/ get a set of kick-ass drivers and a lot more happy customers. Nvidia cards on Linux would end up as the ultimate choice (and it would probably bennefit your windows customers as well).... *Please* consider it again...

/Jesper Juhl - a currently unhappy nvidia customer
juhl is offline   Reply With Quote