Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 217453 - >=x11-drivers/nvidia-drivers-100 displays wrong colors or standby mode
Summary: >=x11-drivers/nvidia-drivers-100 displays wrong colors or standby mode
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Tony Vroon (RETIRED)
URL: http://www.nvnews.net/vbulletin/showt...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-12 20:51 UTC by Evert
Modified: 2008-07-25 10:54 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
my /etc/X11/xorg.conf, configured for monitor and TV-out (xorg.conf,4.70 KB, text/plain)
2008-04-12 21:00 UTC, Evert
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Evert 2008-04-12 20:51:24 UTC
I have a GeForce FX 5500 and often, when switching to another DISPLAY or console, wrong colors are displayed, or the monitor switches to standby mode. The are always 2 users logged in (vt7=:0 and vt8=:20), both with 2 screens active (vt7: monitor=:0.0 and TV-out=:0.1 and vt8: monitor=:20.0 and TV-out=:20.1). When switching to another DISPLAY, the focus is always on the monitor (0:0 or 20:0).
I did some research and found out I can predict what happens when switching from one DISPLAY or console to another:

vt1 normal -> vt7: normal
vt1 normal -> vt8: wrong
vt1 wrong  -> vt7: normal
vt1 wrong  -> vt8: normal
vt1 stdby  -> vt7: wrong
vt1 stdby  -> vt8: normal
vt7 normal -> vt1: normal
vt7 normal -> vt8: wrong
vt7 wrong  -> vt1: wrong
vt7 wrong  -> vt8: wrong
vt8 normal -> vt1: stdby
vt8 normal -> vt7: wrong
vt8 wrong  -> vt1: stdby
vt8 wrong  -> vt7: wrong

Note: vt1 can also be read as vt2..vt6 which are all consoles.

So when I want to switch from vt7 -> vt8 and want the right colors, I have to switch from vt7 normal -> vt8 wrong -> vt1 stdby -> vt8 normal.
And when I want to switch from vt8 to vt7 and want the right colors, I have to switch from vt8 normal -> vt7 wrong -> vt1 wrong -> vt7 normal.

Something similar, but less extreme, happens when I configure X to only have one screen (monitor only). Using that configuration, the colors are always displayed normal, but the standby problem persists. So when switching from vt8 -> vt1, the monitor switches to standby mode.

The problem is NOT display manager related since I can reproduce the problem when only the X-servers are started using:
/usr/bin/X :0  -audit 0 -nolisten tcp vt7
/usr/bin/X :20 -audit 0 -nolisten tcp vt8

This problem prevents me from upgrading to nvidia-drivers-100.* or nvidia-drivers-169.* so I have to stick with nvidia-drivers-96.43.xx which doesn't have this problem.

Reproducible: Always

Steps to Reproduce:
1. Configure X for 2 screens (see my xorg.conf)
2. /usr/bin/X :0  -audit 0 -nolisten tcp vt7
3. /usr/bin/X :20 -audit 0 -nolisten tcp vt8
4. Switch to other DISPLAYs or consoles

Actual Results:  
Normal or wrong colors are displayed or the monitor switches to standby mode depending on which switch is made (see above).

Expected Results:  
Normal colors should be displayed

# lspci -s 02:00.0 -v
02:00.0 VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5500] (rev a1) (prog-if 00 [VGA controller])
	Subsystem: XFX Pine Group Inc. Unknown device 2030
	Flags: bus master, 66MHz, medium devsel, latency 248, IRQ 5
	Memory at e4000000 (32-bit, non-prefetchable) [size=16M]
	Memory at d0000000 (32-bit, prefetchable) [size=256M]
	[virtual] Expansion ROM at e5000000 [disabled] [size=128K]
	Capabilities: [60] Power Management version 2
	Capabilities: [44] AGP version 3.0
	Kernel driver in use: nvidia
	Kernel modules: nvidia

# emerge --info
Portage 2.1.4.4 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24.3 i686)
=================================================================
System uname: 2.6.24.3 i686 AMD Athlon(tm) XP 2600+
Timestamp of tree: Sat, 12 Apr 2008 02:15:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.4
dev-lang/python:     2.4.4-r9
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -mtune=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/bind"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -mtune=i686 -pipe"
DISTDIR="/data/linux/gentoo/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="C"
LINGUAS="en en_US en_GB nl de"
MAKEOPTS="-j2"
PKGDIR="/data/linux/gentoo/packages/amd_athlon-xp"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/compile"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.nl.gentoo.org/gentoo-portage"
USE="X a52 aac acl alsa apache2 apm berkdb cli cracklib crypt cups dri dvd dvdr dvdread encode esd exif fam fortran gdbm gif gnome gpm gstreamer gtk iconv imlib ipv6 isdnlog java jpeg ldap mad midi mikmod mmx mng mozilla mp3 mpeg mplayer mudflap ncurses nls nptl nptlonly nsplugin ogg opengl openmp oss pam pcre pdf perl png pppd python qt qt4 quicktime readline reflection samba sdl session spell spl sse ssl svg tcpd tiff truetype unicode v4l v4l2 vcd vhosts vorbis wmf x86 xinerama xml xorg xv xvmc zlib" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US en_GB nl de" USERLAND="GNU" VIDEO_CARDS="vesa fbdev v4l nv nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Evert 2008-04-12 21:00:36 UTC
Created attachment 149513 [details]
my /etc/X11/xorg.conf, configured for monitor and TV-out

I hereby attach my xorg.conf.
If the output of nvidia-bug-report.sh is needed too, then please tell me which version of nvidia-drivers you want me to use for that.
Comment 2 Doug Goldstein (RETIRED) gentoo-dev 2008-04-14 04:07:33 UTC
submit it all to linux-bugs@nvidia.com
Comment 3 Doug Goldstein (RETIRED) gentoo-dev 2008-05-07 14:58:31 UTC
Chainsaw is taking over this package.
Comment 4 Tony Vroon (RETIRED) gentoo-dev 2008-06-19 12:33:56 UTC
Several colour corruption fixes for specific displays went into the 17X branch of the nvidia-drivers since this bug was filed. Please try the following drivers in the order listed:
173.14.05
173.14.09
177.13 (masked)

Should none of these newer drivers resolve the issue, please reopen the bug and attach the EDID block for your specific Sony CRT display.
Comment 5 Evert 2008-06-24 17:00:12 UTC
The problem persists with 173.14.05 and 173.14.09.

With version 177.13 (masked) I get this problem:
# modprobe nvidia
FATAL: Error inserting nvidia (/lib/modules/2.6.25.7/video/nvidia.ko): No such device

And yes, I did submit this bug to linux-bugs@nvidia.com

So, how do you want me to extract the EDIT block for my Sony CRT display, get-edit or...?
Comment 6 Tony Vroon (RETIRED) gentoo-dev 2008-06-25 10:26:32 UTC
(In reply to comment #5)
> So, how do you want me to extract the EDIT block for my Sony CRT display,
> get-edit or...?

Not EDIT, EDID. x11-misc/read-edid should do the job nicely.

Regards,
Tony V. 

Comment 7 Evert 2008-06-25 20:13:06 UTC
This is the stderr (stdout is empty) of get-edid:

# get-edid
get-edid: get-edid version 1.4.1

	Performing real mode VBE call
	Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0
	Function supported
	Call successful

	VBE version 300
	VBE string at 0x11110 "NVIDIA"

VBE/DDC service about to be called
	Report DDC capabilities

	Performing real mode VBE call
	Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0
	Function supported
	Call successful

	Monitor and video card combination does not support DDC1 transfers
	Monitor and video card combination does not support DDC2 transfers
	0 seconds per 128 byte EDID block transfer
	Screen is not blanked during DDC transfer

Reading next EDID block

VBE/DDC service about to be called
	Read EDID

	Performing real mode VBE call
	Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
	Function supported
	Call failed

The EDID data should not be trusted as the VBE call failed
Error: output block unchanged
Comment 8 Tony Vroon (RETIRED) gentoo-dev 2008-07-24 10:36:06 UTC
Monitor and video card combination does not support DDC1 transfers
Monitor and video card combination does not support DDC2 transfers

Without EDID information there is no way for the drivers to get this right. Please report your bug upstream and work this out with nVidia. This is not caused by our packaging or kernels.
Good news: legacy nvidia drivers are still maintained.
Comment 9 Evert 2008-07-25 10:45:45 UTC
> Without EDID information there is no way for the drivers to get this right.
To get what right?

> Please report your bug upstream
That's what I did already...

> and work this out with nVidia.
Should I repeat the bugreport to nVidia?

> This is not caused by our packaging or kernels.
That's obvious, it's a bug in the driver software.

> Good news: legacy nvidia drivers are still maintained.
Does that mean I should switch to the legacy drivers or ...?
Comment 10 Tony Vroon (RETIRED) gentoo-dev 2008-07-25 10:54:27 UTC
(In reply to comment #9)
> To get what right?

The screen modeline (refresh rate, horizontal resolution, etc).

>> Please report your bug upstream
> That's what I did already...

Upstream would be nVidia, not Gentoo. They accept bug reports in the nvNews forums, I have linked the forum thread with instructions in the URL field.

> Should I repeat the bugreport to nVidia?

Yes, this should be reported to nVidia (upstream), not Gentoo (downstream).

>> This is not caused by our packaging or kernels.
> That's obvious, it's a bug in the driver software.

I'm glad we agree on that, which means that I am unable to fix it. With no access to the driver source code, I can only troubleshoot and fix problems with the way the driver is installed.

>> Good news: legacy nvidia drivers are still maintained.
> Does that mean I should switch to the legacy drivers or ...?

No, that means that ebuilds below version 100 are not scheduled for deletion, as owners of older GeForce hardware still require them.