Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 274672 - gentoo-sources-2.6.30, nvidia-drivers and compiz together cause a very unresponsive system
Summary: gentoo-sources-2.6.30, nvidia-drivers and compiz together cause a very unresp...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Doug Goldstein (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-06-19 08:27 UTC by Tommaso Pasini
Modified: 2009-10-19 09:45 UTC (History)
5 users (show)

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


Attachments
nvidia-bug-report log (nvidia-bug-report.log.gz,28.46 KB, application/zip)
2009-06-19 08:29 UTC, Tommaso Pasini
Details
nvidia-bug-report log with PAT support disabled inside the kernel (nvidia-bug-report.log-nopat.gz,28.55 KB, application/zip)
2009-06-19 08:30 UTC, Tommaso Pasini
Details
ebuild using patch (nvidia-drivers-180.60-r1.ebuild,16.65 KB, text/plain)
2009-07-11 00:49 UTC, Alexey Parshin
Details
Patch fixing PAT mode detection (pat_mode.patch,580 bytes, patch)
2009-07-11 00:51 UTC, Alexey Parshin
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tommaso Pasini 2009-06-19 08:27:20 UTC
Hi,
I recentry tried to upgrade from 2.6.29 to 2.6.30; I had no issue with nvidia-drivers+compiz, but with the new kernel screen redraws take even *seconds*.

I noticed a thread on nvnews, http://www.nvnews.net/vbulletin/showthread.php?t=133112 where this guy reports the same problem. He also made a small video to explain the problem, it can be seen here (youtube) http://www.youtube.com/watch?v=w1XbpUkyD_0

Since the only difference in my system was the kernel version, I did a git-bisect: I found out the offending patch is this

75a048119e76540d73132cfc8e0fa0c0a8bb6c83 is first bad commit
commit 75a048119e76540d73132cfc8e0fa0c0a8bb6c83
Author: H. Peter Anvin <hpa@linux.intel.com>
Date:   Thu Jan 22 16:17:05 2009 -0800

    x86: handle PAT more like other CPU features
    
    Impact: Cleanup
    
    When PAT was originally introduced, it was handled specially for a few
    reasons:
    
    - PAT bugs are hard to track down, so we wanted to maintain a
      whitelist of CPUs.
    - The i386 and x86-64 CPUID code was not yet unified.
    
    Both of these are now obsolete, so handle PAT like any other features,
    including ordinary feature blacklisting due to known bugs.
    
    Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>

:040000 040000 797f3c5ac48ae28779466500f56d74087356cda8 735eebc5f228ba78a377a5c27f33d8f7a51aba8e M	arch

Inside nvidia-bug-report.log the weird part shows: "CPU does not support the PAT, falling back to MTRRs." many times, so I hope I nailed the right patch.

I don't know if this is a kernel issue or has to do with how nvidia drivers work with it - I mean, I don't know if either nvidia or the kernel team has to fix this.

By now I'm waiting for an answer on that thread on nvnews.

For the record: I have a GeForce Go 7400 (mobile chip); different xorg configurations don't show any difference; metacity doesn't suffer from this bug.

Reproducible: Always

Steps to Reproduce:
1.gentoo-sources-2.6.30*
2.nvidia-drivers-180.60 (180.29 don't compile on kernel 2.6.30)
3.compiz-0.8.2-r2

Actual Results:  
Compiz redraws the screen really slowly

Expected Results:  
Everything should be smooth as always.
Comment 1 Tommaso Pasini 2009-06-19 08:29:56 UTC
Created attachment 195145 [details]
nvidia-bug-report log
Comment 2 Tommaso Pasini 2009-06-19 08:30:29 UTC
Created attachment 195147 [details]
nvidia-bug-report log with PAT support disabled inside the kernel
Comment 3 Tommaso Pasini 2009-06-19 08:32:11 UTC
In the opening post there is an error: I wrote "I had no issue with nvidia-drivers+compiz", I should have added "...with 2.6.29".

emerge --info 
Portage 2.1.6.13 (default/linux/x86/2008.0/desktop, gcc-4.3.3, glibc-2.8_p20080602-r1, 2.6.29-rc1-00535-gb1882e6 i686)
=================================================================
System uname: Linux-2.6.29-rc1-00535-gb1882e6-i686-Genuine_Intel-R-_CPU_T2400_@_1.83GHz-with-gentoo-2.0.1
Timestamp of tree: Thu, 18 Jun 2009 17:30:01 +0000
app-shells/bash:     3.2_p39
dev-java/java-config: 2.1.7
dev-lang/python:     2.6.2-r1
dev-util/cmake:      2.6.4
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.4.3-r3
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63
sys-devel/automake:  1.5, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=prescott -pipe -fomit-frame-pointer -fforce-addr -mfpmath=sse"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=prescott -pipe -fomit-frame-pointer -fforce-addr -mfpmath=sse"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://de-mirror.org/distro/gentoo/ http://de-mirror.org/distro/gentoo/ http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/"
LANG="it_IT.utf8"
LC_ALL="it_IT.utf8"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed"
LINGUAS="it"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_COMPRESS="bzip2"
PORTAGE_CONFIGROOT="/"
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="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/gnome /usr/local/portage/layman/desktop-effects /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acpi alsa bash-completion berkdb bluetooth branding bzip2 cairo caps cddb cdr cli consolekit cracklib crypt cups dbus dmx dri dvd dvdr dvdread emboss encode evo fam ffmpeg firefox fortran gdbm gif glib gmp gnome gnome-keyring gstreamer gtk hal iconv isdnlog java java6 jpeg jpeg2k kpathsea lcms libnotify mad midi mikmod mmap mmx mng mp3 mpeg musepack nautilus ncurses networkmanager nls nptl nptlonly nsplugin nvidia offensive ogg opengl openmp pam pch pcre pdf perl png ppds pppd python quicktime readline reflection samba sdl session sndfile spell spl sse sse2 sse3 ssl startup-notification svg sysfs tcpd theora threads tiff tracker truetype unicode usb vorbis win32codecs x86 xinerama xml xorg xulrunner xv xvid xvmc zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul 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" CAMERAS="ptp2 sierra" ELIBC="glibc" INPUT_DEVICES="keyboard mouse synaptics evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="it" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 4 Alexey Parshin 2009-06-20 21:33:42 UTC
I have the same effect. 2.6.30 + nvidia-drivers + compiz gives me incredibly slow graphics. 2.6.29 + nvidia-drivers + compiz have no problems.
Comment 5 Tommaso Pasini 2009-07-05 23:42:22 UTC
The problem has been solved with the patch posted here http://www.nvnews.net/vbulletin/showthread.php?t=133112&page=2 so we just have to wait for nvidia's next release.
Comment 6 Alexey Parshin 2009-07-11 00:49:26 UTC
Created attachment 197494 [details]
ebuild using patch
Comment 7 Alexey Parshin 2009-07-11 00:51:39 UTC
Created attachment 197496 [details, diff]
Patch fixing PAT mode detection

This patch resolves the problem for nvidia-drivers-180-60 and kernel 2.6.30
Comment 8 Doug Goldstein (RETIRED) gentoo-dev 2009-07-11 20:06:45 UTC
The patch is a copy and paste of the patch posted by Christian from NVIDIA. He however clearly states in his post that its a hack and not the correct/complete solution.

I've discussed this issue with NVIDIA in detail and the net result is that we're really going to recommend users of NVIDIA cards + OpenGL to steer clear of 2.6.30 until a full work around the regression is completed and tested. It will be out with the next driver bump.
Comment 9 Doug Goldstein (RETIRED) gentoo-dev 2009-08-03 03:55:59 UTC
Please upgrade to the in tree 185.x.y series for a resolution.
Comment 10 James Dominy 2009-09-20 17:33:31 UTC
Upgrading to nvidia-drivers-185.18.14 exhibits the same behaviour for me, and 185.18.29 and 185.18.31 crash completely on X startup (Black screen, forced to hard reboot). Reopen the bug?
Comment 11 Tommaso Pasini 2009-10-19 09:45:11 UTC
The fix, as written in the thread linked in the opening post, is in nvidia-drivers-190.40, I'm using this version with 2.6.31 kernel and I confirm that it's working.