1 |
I have an old but good graphics card, "NVIDIA Corporation GT200GL |
2 |
[Quadro FX 3800]". The proprietary driver is EOL, not supported after |
3 |
kernel 3.14.*, so I'd like to switch to nouveau. I'm having trouble |
4 |
getting nouveau to work at all, it is giving me a blank screen and |
5 |
apparently not grabbing my keyboard (ctrl:swapcaps has no effect). |
6 |
|
7 |
Nothing stands out as errors in Xorg.0.log, same errors are both under |
8 |
nvidia and nouveau, but nvidia gives me a useable desktop. Both seem to |
9 |
detect my monitor (benq) correctly. |
10 |
|
11 |
--- |
12 |
$ grep '(EE)' Xorg.0.log.nvidia Xorg.0.log.nouveau | grep -v '(WW)' |
13 |
Xorg.0.log.nvidia:[ 39.193] (EE) systemd-logind: failed to get |
14 |
session: PID 2112 does not belong to any known session |
15 |
Xorg.0.log.nouveau:[ 35.428] (EE) systemd-logind: failed to get |
16 |
session: PID 2167 does not belong to any known session |
17 |
Xorg.0.log.nouveau:[ 37.322] (EE) NOUVEAU(0): [COPY] failed to |
18 |
allocate class. |
19 |
--- |
20 |
The PID belongs to /usr/bin/X, see below. |
21 |
--- |
22 |
I'm running gentoo-sources-4.3.3 kernel with experimental feature to |
23 |
select Haswell architecture. The host is a virtual machine running under |
24 |
app-emulation/xen-4.6.0-r6. Driver is |
25 |
x11-drivers/xf86-video-nouveau-1.0.11, use-flag glamor enabled. |
26 |
|
27 |
I've run emerge -e @world after installing the kernel, just in case some |
28 |
part of the system was incompatible with the kernel. Specifically pam |
29 |
has been recompiled several times. I have jiggled countless other knobs, |
30 |
to no effect. |
31 |
|
32 |
-- systemctl log for kdm (disabled means it is loaded manually, |
33 |
autologin into fluxbox works) : --- |
34 |
# systemctl status -l kdm |
35 |
● kdm.service - KDM Display Manager |
36 |
Loaded: loaded (/etc/systemd/system/kdm.service; disabled; vendor |
37 |
preset: enabled) |
38 |
Active: active (running) since ma. 2016-01-11 16:56:11 CET; 28min ago |
39 |
Main PID: 2157 (kdm) |
40 |
CGroup: /system.slice/kdm.service |
41 |
├─2157 /usr/bin/kdm -debug 0x108 -nodaemon |
42 |
└─2167 /usr/bin/X -br -novtswitch -quiet :0 vt7 -nolisten |
43 |
tcp -auth /var/run/xauth/A:0-y7Kmbb |
44 |
|
45 |
jan. 11 16:56:18 gt kdm[2157]: receiving command from sub-daemon for |
46 |
display :0 ... |
47 |
jan. 11 16:56:18 gt kdm[2157]: -> 1 |
48 |
jan. 11 16:56:18 gt kdm[2157]: receiving int from sub-daemon for display |
49 |
:0 ... |
50 |
jan. 11 16:56:18 gt kdm[2157]: -> 1001 (0x3e9) |
51 |
jan. 11 16:56:18 gt kdm[2157]: receiving string from sub-daemon for |
52 |
display :0 ... |
53 |
jan. 11 16:56:18 gt kdm[2157]: -> 6 bytes |
54 |
jan. 11 16:56:18 gt kdm[2157]: -> "hakon" |
55 |
jan. 11 16:56:18 gt kdm[2157]: receiving string from sub-daemon for |
56 |
display :0 ... |
57 |
jan. 11 16:56:18 gt kdm[2157]: -> 8 bytes |
58 |
jan. 11 16:56:18 gt kdm[2157]: -> "fluxbox" |
59 |
------ |
60 |
-- |
61 |
The [COPY] message is supposed to be harmless according to a discussion |
62 |
with the developers I found on some website, since my card does not |
63 |
support that feature. |
64 |
|
65 |
I'm using this script to switch graphics-driver, before rebooting and |
66 |
launching kdm with autologin: |
67 |
---- |
68 |
cat `which graphics-nvidia ` |
69 |
#!/bin/bash |
70 |
NEW=`basename $0` |
71 |
case $NEW in |
72 |
graphics-nouveau) |
73 |
eselect opengl set xorg-x11 |
74 |
eselect opencl set mesa |
75 |
rm -f /etc/modprobe.d/blacklist.conf.gml |
76 |
mv /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf.gml |
77 |
perl -pe 's(^ *blacklist nouveau)(#$&);s(^ *# *blacklist |
78 |
nvidia$)(blacklist nvidia)' /etc/modprobe.d/blacklist.conf.gml > |
79 |
/etc/modprobe.d/blacklist.conf |
80 |
# dummy empty nvidia.rules |
81 |
touch /etc/udev/rules.d/99-nvidia.rules |
82 |
cat <<XORGX11 > /etc/X11/xorg.conf.d/10device.conf |
83 |
Section "Device" |
84 |
Identifier "noveau device" |
85 |
Driver "nouveau" |
86 |
EndSection |
87 |
XORGX11 |
88 |
;; |
89 |
graphics-nvidia) |
90 |
rm -f /etc/modprobe.d/blacklist.conf.gml |
91 |
mv /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf.gml |
92 |
perl -pe 's(^ *blacklist nvidia$)(#$&);s(^ *# *blacklist |
93 |
nouveau)(blacklist nouveau)' /etc/modprobe.d/blacklist.conf.gml > |
94 |
/etc/modprobe.d/blacklist.conf |
95 |
eselect opengl set nvidia |
96 |
eselect opencl set nvidia |
97 |
# remove dummy empty nvidia.rules |
98 |
rm /etc/udev/rules.d/99-nvidia.rules |
99 |
cat <<XORGNV > /etc/X11/xorg.conf.d/10device.conf |
100 |
Section "Device" |
101 |
Identifier "nvidia device" |
102 |
Driver "nvidia" |
103 |
EndSection |
104 |
XORGNV |
105 |
|
106 |
;; |
107 |
esac |
108 |
--- |
109 |
|
110 |
The script is not pretty, I know :-/ |
111 |
|
112 |
So, it seems everything is working with nouveau, except there is no |
113 |
picture and no keyboard. |