I run emerge to update world, the following occurs: If xorg-x11-6.8.0-r1 is installed, portage attempts to downgrade to xorg-x11-6.7.0-r2; if xorg-x11-6.7.0-r2 is installed, portage attempts to upgrade to xorg-x11-6.8.0-r1. This results in a loop that steps every time I try to update my world. Reproducible: Always Steps to Reproduce: Portage 2.0.51-r2 (default-x86-2004.2, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.8-gentoo-r3 i686) ================================================================= System uname: 2.6.8-gentoo-r3 i686 mobile AMD Athlon(tm) XP2800+ Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.14.90.0.8-r1 Headers: sys-kernel/linux-headers-2.4.21-r1 Libtools: sys-devel/libtool-1.5.2-r5 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=athlon-xp -mcpu=athlon-xp -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -march=athlon-xp -mcpu=athlon-xp -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache distlocks sandbox" GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X acpi aim alsa apm arts avi berkdb bitmap-fonts bzlib calendar cdr crypt cups divx4linux dmx doc dvd emacs encode f77 flac foomaticdb gatos gcj gdbm gif gpm gtk gtk2 imagemagick imap imlib java jpeg kde kerberos krb4 libg++ libwww mad mcal mikmod mime mmap mmx motif mpeg msn ncurses nls oggvorbis opengl oscar oss pam pdflib perl png posix python qt quicktime readline sdl slang spell sse ssl svga tcpd tetex truetype usb wmf x86 xml2 xmms xosd xpm xprint xv xvid zlib video_cards_radeon"
Your answer is to not install a package that depends on <6.8.0, then emerge -u world without masking >=6.8.0. Either add >=x11-base/xorg-x11-6.8.0 to your package.mask (man portage) until ati releases drivers that work with 6.8 or emerge -C ati-drivers.
Yes, the presence of the ati-drivers explains that xorg-x11 gets installed in version 6.7.0 instead of 6.8.0. But why does portage insist on upgrading 6.7.0 to 6.8.0 with the ati-drivers present, when these drivers are declared incompatible with it in their ebuild? That seems to be a bug; perhaps in portage.
Perhaps so, Oliver. If you can show that this is a more abstract problem, perhaps you'd like to file a bug with the portage team. For example, portage _always_ ignores runtime dependencies of installed packages when calculating upgrades.