Several days ago, after a round of extensive updates and large emerge runs, I noticed that the X process was using 50%+ of a processor when I wasn't doing anything. I did some digging, and tracked it down to my instance of conky. After fiddling with it for a few hours, I determined that if I turned off XFT, it worked perfectly without undo processor usage. In the process, I discovered that my terminals would use up a lot of processor if they were doing any updates as well. I don't have any easy way to disable XFT for them, so I haven't been able to test if it's the same issue, but I suspect it is. I've finished a complete emerge --depclean and emerge -e world, on the off chance that something was slightly broken somewhere, but it hasn't made any difference at all. What should I try next? What additional troubleshooting would you reccomend? Reproducible: Always Steps to Reproduce: 1. Boot box, log into KDE, watch conky load and show the X process using over 50% of one processor. 2. Kill conky, check with top on the console. See that X is now using < 5% of one processor. 3. Reconfigure conky to not use Xft. 4. Relaunch conky, and see that it's no longer causing a spike in CPU usage. Actual Results: Unusually high CPU usage. Expected Results: Normal levels of CPU usage. ;) mwalkerlinux ~ # emerge --info Portage 2.1.9.5 (default/linux/amd64/10.0, gcc-4.4.4, glibc-2.12.1-r1, 2.6.35-gentoo-r4 x86_64) ================================================================= System uname: Linux-2.6.35-gentoo-r4-x86_64-Pentium-R-_Dual-Core_CPU_E5400_@_2.70GHz-with-gentoo-2.0.1 Timestamp of tree: Tue, 14 Sep 2010 13:50:02 +0000 ccache version 2.4 [enabled] app-shells/bash: 4.1_p7 dev-java/java-config: 2.1.11 dev-lang/python: 2.6.5-r3, 3.1.2-r4 dev-util/ccache: 2.4-r8 dev-util/cmake: 2.8.1-r2 sys-apps/baselayout: 2.0.1 sys-apps/openrc: 0.6.3 sys-apps/sandbox: 2.3-r1 sys-devel/autoconf: 2.13, 2.67 sys-devel/automake: 1.7.9-r2, 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.4.4-r1 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.10 sys-devel/make: 3.81-r2 virtual/os-headers: 2.6.35 (sys-kernel/linux-headers) ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /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" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests ccache distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="en" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" 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="/var/lib/layman/mozilla /var/lib/layman/php /var/lib/layman/kde /usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="64bit X aac acl acpi aim alsa amd64 apache2 bash-completion berkdb bzip2 cairo cleartype cli cracklib crypt ctype cups curl cxx dbus dri embedded esd exif extras faac faad fam filter flac fontconfig fontforge foomaticdb fortran fuse gd gdbm git gpm hal hddtemp iconv icu idn inotify iostats ipod ipv6 jpeg json kde kde4 kdepim kdm lame lastfm lastfmradio latex lcms ldap libnotify lm_sensors mdnsresponder-compat meanwhile mmx mng modules mp3 mpd msn mudflap multilib mysql mysqli ncurses nls nptl nptlonly nsplugin nvidia ogg opengl openmp oscar pam pango pcntl pcre pdf perl php png ppds pppd prediction python qt3support qt4 rdesktop rdp readline samba semantic-desktop session simplexml smp sockets spell sql sse sse2 sse3 ssl startup-notification subversion svg sysfs tcpd theora threads tiff tk truetype udev unicode vim vim-syntax vnc vorbis webkit wicd xft xinerama xml xorg xscreensaver xulrunner yahoo zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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 authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS mwalkerlinux ~ # layman -l * kde [Git ] (git://git.overlays.gentoo.org/proj/kde.git) * mozilla [Git ] (git://git.overlays.gentoo.org/proj/mozilla.git) * php [Git ] (git://git.overlays.gentoo.org/proj/php.git) mwalkerlinux ~ # cat /etc/X11/xorg.conf Section "ServerLayout" Identifier "X.org Configured" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" EndSection Section "Files" ModulePath "/usr/lib/xorg/modules" FontPath "/usr/share/fonts/corefonts" FontPath "/usr/share/fonts/terminus" FontPath "/usr/share/fonts/arkpandora" FontPath "/usr/share/fonts/Type1" FontPath "/usr/share/fonts/ttf-bitstream-vera" FontPath "/usr/share/fonts/lyx" FontPath "/usr/share/fonts/dejavu" FontPath "/usr/share/fonts/misc" FontPath "/usr/share/fonts/urw-fonts" FontPath "/usr/share/fonts/ProFont" FontPath "/usr/share/fonts/inconsolata" FontPath "/usr/share/fonts/TTF" FontPath "/usr/share/fonts/100dpi/" FontPath "/usr/share/fonts/75dpi/" EndSection Section "Module" Load "dbe" Load "glx" EndSection Section "ServerFlags" Option "Xinerama" "0" EndSection Section "InputDevice" Identifier "Keyboard0" Driver "kbd" EndSection Section "InputDevice" Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/input/mice" Option "ZAxisMapping" "4 5 6 7" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Sceptre" ModelName "X22" HorizSync 30.0 - 83.0 VertRefresh 56.0 - 75.0 EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce 8500 GT" Option "RenderAccel" "true" Option "AllowGLXWithComposite" "true" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "TwinView" "1" Option "TwinViewXineramaInfoOrder" "CRT-0" Option "metamodes" "CRT-0: nvidia-auto-select +1920+0, CRT-1: nvidia-auto-select +0+0" SubSection "Display" Depth 24 EndSubSection EndSection mwalker@mwalkerlinux ~ $ xdpyinfo name of display: :0.0 version number: 11.0 vendor string: The X.Org Foundation vendor release number: 10900000 X.Org version: 1.9.0 maximum request size: 16777212 bytes motion buffer size: 256 bitmap unit, bit order, padding: 32, LSBFirst, 32 image byte order: LSBFirst number of supported pixmap formats: 7 supported pixmap formats: depth 1, bits_per_pixel 1, scanline_pad 32 depth 4, bits_per_pixel 8, scanline_pad 32 depth 8, bits_per_pixel 8, scanline_pad 32 depth 15, bits_per_pixel 16, scanline_pad 32 depth 16, bits_per_pixel 16, scanline_pad 32 depth 24, bits_per_pixel 32, scanline_pad 32 depth 32, bits_per_pixel 32, scanline_pad 32 keycode range: minimum 8, maximum 255 focus: window 0x220004f, revert to PointerRoot number of extensions: 28 BIG-REQUESTS Composite DAMAGE DOUBLE-BUFFER DPMS GLX Generic Event Extension MIT-SCREEN-SAVER MIT-SHM NV-CONTROL NV-GLX RANDR RECORD RENDER SHAPE SYNC X-Resource XC-MISC XFIXES XFree86-DGA XFree86-VidModeExtension XINERAMA XINERAMA XInputExtension XKEYBOARD XTEST XVideo XVideo-MotionCompensation default screen number: 0 number of screens: 1 screen #0: dimensions: 3840x1080 pixels (966x283 millimeters) resolution: 101x97 dots per inch depths (7): 24, 1, 4, 8, 15, 16, 32 root window id: 0x15a depth of root window: 24 planes number of colormaps: minimum 1, maximum 1 default colormap: 0x20 default number of colormap cells: 256 preallocated pixels: black 0, white 16777215 options: backing-store NO, save-unders NO largest cursor: 64x64 current input event mask: 0xfac031 KeyPressMask EnterWindowMask LeaveWindowMask KeymapStateMask ExposureMask StructureNotifyMask SubstructureNotifyMask SubstructureRedirectMask FocusChangeMask PropertyChangeMask ColormapChangeMask number of visuals: 84 default visual id: 0x21 visual: visual id: 0x21 class: TrueColor depth: 24 planes available colormap entries: 256 per subfield red, green, blue masks: 0xff0000, 0xff00, 0xff significant bits in color specification: 8 bits ***TRIM: Lots more 'visual:' sections***
Forum thread here: http://forums.gentoo.org/viewtopic-p-6426442.html
Solved, with this advice from #nvidia on Freenode: <Plagman_> Utoxin: X 1.9 introduced a change in behavior that resulted in the NVIDIA driver being unable to accelerate text rendering <Plagman_> this driver fixes it: http://www.nvnews.net/vbulletin/showthread.php?p=2318734 <Plagman_> please install it and it should address your issue