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.
Created attachment 195145 [details] nvidia-bug-report log
Created attachment 195147 [details] nvidia-bug-report log with PAT support disabled inside the kernel
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
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.
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.
Created attachment 197494 [details] ebuild using patch
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
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.
Please upgrade to the in tree 185.x.y series for a resolution.
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?
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.