Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 240226 - app-text/evince-2.22.2 - extremely slow zoom level adjusting
Summary: app-text/evince-2.22.2 - extremely slow zoom level adjusting
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-10-06 09:05 UTC by Marek Kozlowski
Modified: 2008-10-07 15:50 UTC (History)
0 users

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


Attachments
xorg.conf (xorg.conf,5.80 KB, text/plain)
2008-10-07 11:55 UTC, Marek Kozlowski
Details
xorg log (Xorg.0.log,54.98 KB, text/plain)
2008-10-07 11:57 UTC, Marek Kozlowski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Marek Kozlowski 2008-10-06 09:05:44 UTC
Unfortunately: I used a LiveCD 2006.0 and it worked fine. 

I have an up-to-date (and revdep-rebuilt) stable Gentoo on ThinkPad T42. When I'm changing the document zoom level (especially with the toolbar buttons) or switching into fullscreen mode it takes up to ten seconds (I looks like freezing the whole GNOME)! I really can't figure out what's involved...



Portage 2.1.4.4 (default-linux/x86/2007.0/desktop, gcc-4.1.2, glibc-2.6.1-r0, 2.6.26-gentoo-r1 i686)
=================================================================
System uname: 2.6.26-gentoo-r1 i686 Intel(R) Pentium(R) M processor 1.70GHz
Timestamp of tree: Mon, 06 Oct 2008 06:45:05 +0000
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.5.2-r7
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-r2
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1
sys-devel/binutils:  2.18-r3
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="-march=pentium-m -O2 -pipe -fomit-frame-pointer"
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/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=pentium-m -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.mirror.pw.edu.pl/ "
LINGUAS="en pl"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
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"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X acl acpi alsa berkdb cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss encode esd evo fam firefox fortran gdbm gif gnome gpm gstreamer gtk hal iconv isdnlog java jpeg kerberos ldap mad midi mikmod mmx mp3 mpeg mudflap ncurses nls nptl nptlonly nsplugin ogg opengl openmp oss pam pcre pdf perl png pppd python qt3support quicktime readline reflection sdl session spell spl sse sse2 ssl svg tcpd tiff truetype unicode vorbis win32codecs x86 xml xorg xulrunner xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 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 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 synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en pl" USERLAND="GNU" VIDEO_CARDS="radeon fbdev vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] app-text/evince-2.22.2-r1  USE="dbus gnome tiff -debug -djvu -doc -dvi -gnome-keyring -t1lib" 0 kB 
[ebuild   R   ] app-text/poppler-0.8.7  USE="jpeg zlib -cjk" 0 kB 
[ebuild   R   ] x11-libs/cairo-1.6.4-r1  USE="X opengl svg -debug -directfb -doc -glitz -test -xcb" 0 kB 


Reproducible: Always
Comment 1 Rémi Cardona (RETIRED) gentoo-dev 2008-10-06 22:29:53 UTC
With what kind of documents? What X driver are you using?

Thanks
Comment 2 Marek Kozlowski 2008-10-07 07:56:03 UTC
(In reply to comment #1)
> With what kind of documents? What X driver are you using?

All pdf documents. I have an ATI Radeon 7500. I'm using the open source ati drivers -- there are no binary ATI drivers for this card -- it's to old (although those notebooks were sold by Lenovo/IBM less than 3 years ago). I don't have such problems with other applications.
Comment 3 Rémi Cardona (RETIRED) gentoo-dev 2008-10-07 10:03:38 UTC
Your only shot here is to use a profiling tool such as oprofile or sysprof to figure out which piece of the chain is slowing everything down.

You can run these tools to first figure out which application is hogging the CPU.

Once you've done that, you'll have to follow http://www.gentoo.org/proj/en/qa/backtraces.xml for better results.

However may I first suggest you disable EXA on your graphics driver if it is enabled, or enable it if it's not?

Thanks
Comment 4 Marek Kozlowski 2008-10-07 10:26:09 UTC
systrace -f show horrible number of lines like this:
[pid  8975] gettimeofday({1223375015, 575831}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 575919}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 575995}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576068}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576144}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576229}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576313}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576387}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576458}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576535}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576605}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576687}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 576769}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577093}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577165}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577240}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577309}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577394}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577479}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577549}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577620}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577692}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577761}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577883}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 577999}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 578104}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 578230}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 578324}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 578416}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 578487}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 578569}, NULL) = 0
[pid  8975] gettimeofday({1223375015, 578653}, NULL) = 0
...
during such switching but I don't know if it's the issue. I can attach a full strace log if necessary. 
What is an EXA?
Comment 5 Rémi Cardona (RETIRED) gentoo-dev 2008-10-07 11:14:52 UTC
strace is mostly useless in this. We need to figure out where the CPU time is spent. System calls are somewhat irrelevant (at least for now).

As for EXA, it's a graphical acceleration architecture provided by the X server.

Could you please attach your xorg.conf and /var/log/Xorg.0.log here?

Thanks
Comment 6 Marek Kozlowski 2008-10-07 11:55:51 UTC
Created attachment 167529 [details]
xorg.conf
Comment 7 Marek Kozlowski 2008-10-07 11:57:13 UTC
Created attachment 167530 [details]
xorg log
Comment 8 Rémi Cardona (RETIRED) gentoo-dev 2008-10-07 12:19:23 UTC
From Xorg.0.log:

(==) RADEON(0): Using XAA acceleration architecture

That's not very good. But then again, you're using a stable X stack...

Try enabling EXA by putting :

   Option "AccelMethod" "EXA"

into your "Device" section.

Thanks
Comment 9 Marek Kozlowski 2008-10-07 15:03:26 UTC
It's still not perfect but *much* better, let's say: acceptable. 
I'm just wondering why I had this problem only with the Evince. Other appliactions that are part of the GNOME Dekstop Environment used to work fine. 
Comment 10 Rémi Cardona (RETIRED) gentoo-dev 2008-10-07 15:50:30 UTC
Because evince stresses cairo (and thus the graphics pipeline) more than any other application on a standard Gnome desktop.

Closing invalid.

Thanks for the quick follow up.