Red Hat Bugzilla – Bug 495843
20090413 nouveau driver segfaults on start
Last modified: 2009-04-19 18:58:25 EDT
Created attachment 339614 [details]
X server log file
Description of problem:
Today, I updated to xorg-x11-drv-nouveau-0.0.12-26.20090413 and since then X won't start with the nouveau driver. It segfaults in the nouveau driver and exits.
Cards is an NV43, and was working fine prior to this latest nouveau update.
Xorg.log file contains a stack trace (see attached).
Version-Release number of selected component (if applicable):
Attempt to start X with NV43 card and nouveau driver selected. Happens every time.
(see attached log for full details)
0: X(xorg_backtrace+0x3b) [0x812e17b]
1: X(xf86SigHandler+0x9e) [0x80c0e0e]
3: /usr/lib/xorg/modules/drivers//nouveau_drv.so [0x313133]
4: X(InitOutput+0x4e9) [0x80a9339]
5: X(main+0x1d3) [0x806b933]
6: /lib/libc.so.6(__libc_start_main+0xe6) [0x51b856]
7: X [0x806afa1]
X starts properly.
Interesting.. What version was you using previously? Can I also see the output of the "dmesg" command after X has failed to start? For some reason your card failed to init, and the fallback mode seems to have failed (I'll test that here in a bit, and see why exactly).
Nevermind, I found the cause of the segfault. I'll post an update soon. I'd still like to know why acceleration gets disabled on your card however :)
Great! In case it's still needed, here's the bottom from dmesg:
nouveau 0000:01:00.0: Unable to allocate 16MB of scatter-gather pages for PCI DMA!<6>nouveau 0000:01:00.0: Allocating FIFO number 0
nouveau 0000:01:00.0: Invalid GART type 0
nouveau 0000:01:00.0: Error creating TT ctxdma: -22
nouveau 0000:01:00.0: gpuobj -22
nouveau 0000:01:00.0: nouveau_fifo_free: freeing fifo 0
nouveau 0000:01:00.0: Error allocating GPU channel: -22
I too would be interested to know why acceleration gets disabled! It stops me running any of the desktop effects. :)
oops ... this line precedes the above dmesg output and may be related:
vmap allocation for size 16781312 failed: use vmalloc=<size> to increase size.
Oh wow, yup it is related. I wonder what's eating all the vmalloc space.. Can I have your full /var/log/dmesg?
You still won't get desktop effects I'm afraid, there's no 3D driver yet :)
Bugger about the desktop effects. Oh well :)
Attached are the dmesg file and output from /proc/meminfo.
Created attachment 339623 [details]
Created attachment 339624 [details]
output of /proc/meminfo
Created attachment 339625 [details]
output of dmesg
Adding vmalloc=128M to the kernel boot args has "fixed" the problem.
The vmap allocation error is no longer displayed. X with the nouveau driver starts successfully.
The question is why so vmalloc needs to be so big?
NB: I have a dual-headed setup, and have the following xorg.conf screen config:
Virtual 2560 1024
Note the screen size ... so I can have a different desktop (side-by-side) on each monitor. Is this the reason for the memory requirements?
Created attachment 339660 [details]
In case it is useful, I have attached the output of: cat /proc/vmallocinfo
Hmm, it looks like your card may be one of the NVIDIA GPUs with a larger than normal register aperture.. Since we don't even know what lives there, it'd be safe for us to not map the unused parts of it. Can you post "lcpsi -vvn" for me so I can confirm?
Created attachment 339767 [details]
lspci -vvn output as requested
This should work fine for you as of kernel-18.104.22.168-95.fc11.