X server occupying >1GB of memory

Omari Stephens xsdg at mit.edu
Tue Oct 30 23:23:12 PDT 2007


Hi all.  I'm experiencing what I believe is a torrential memory leak in Debian
sid's packaged version of 7.3.

Running the script at [1] gives me the following numbers:
   PID    VSZ DEVMAP LIBMAP  ALLOC    RSS  CMDLINE
  2494  10028      0   9988     40    220  xinit /etc/X11/xinit/xinitrc --
/etc/X11/xinit/xserverrc -auth /tmp/serverauth.GrOiPb2484
  2495 1416932 278848 1137940    144 768972  /usr/bin/X11/X -dpi 100 -nolisten tcp

Looking at /proc/2495/maps, as the page suggests, gives me the following for
memory allocated on the heap, of note (the entire file is up at [2])
007be000-4098a000 rw-p 007be000 00:00 0                                  [heap]

Note, that this is enormous (the range covers 1075625984 bytes) and a reasonable
measurement, given how much memory X seems to be using.  I'll also note that I
was watching this two days ago, and got the range 007be000-36df6000, which is
912490496 bytes.  So X packed on 170 megs in 2 days.  Though I don't exactly
remember the reported memory usage 2 days ago, I believe this difference matches
the difference in VSZ between 2-days-ago and tonight (definitely on the order of
100 megs).

xrestop has the following to say:
Pixmaps:   42551K total, Other:     207K total, All:   42758K total

I should note that this machine is an AMD Athlon-64 X2 running in 64-bit mode.
I do actively use nspluginwrapper to use the (32-bit only) Flash plugin that
Adobe provides for Firefox, but don't run any other 32-bit code.

My xorg.conf is up at [3] and my Xorg.0.log (the active log for this server) is
at [4].  I'll try to not restart X to aid debugging, but my system is growing
less and less usable by the day.

I have the following package versions:
$dpkg -l '*xorg*' | grep ^ii
ii  xserver-xorg                     1:7.3+2
ii  xserver-xorg-core                2:1.4-3
ii  xserver-xorg-input-kbd           1:1.2.2-3
ii  xserver-xorg-input-mouse         1:1.2.2-6
ii  xserver-xorg-video-nv            1:2.1.5-1

$dpkg -l *libc6* | grep ^ii
ii  libc6                            2.6.1-5
ii  libc6-dev                        2.6.1-5
ii  libc6-i386                       2.6.1-5

A more complete list (a manually-filtered version of `dpkg -l '*x*' | grep ^ii`)
is up at [5].  General computer info is at [6], [7], and [8].

Any help would be appreciated -- I have 2GB of memory because I expected MATLAB
and friends to eat it up, not X.

--xsdg

[1] http://www.xfree86.org/pipermail/forum/2003-April/003370.html
[2] http://people.csail.mit.edu/xsdg/x-mem/2495-maps
[3] http://people.csail.mit.edu/xsdg/x-mem/xorg.conf
[4] http://people.csail.mit.edu/xsdg/x-mem/Xorg.0.log
[5] http://people.csail.mit.edu/xsdg/x-mem/pkg-versions
[6] http://people.csail.mit.edu/xsdg/x-mem/cpuinfo
[7] http://people.csail.mit.edu/xsdg/x-mem/meminfo
[8] http://people.csail.mit.edu/xsdg/x-mem/vmstat




More information about the xorg mailing list