[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Maximum number of clients reache .. can't open display




2013/8/24 Andrew Sackville-West <andrew@swclan.homelinux.org>
> not releasing resources it's not using anymore

Which resources other than connections (and why do you suspect it would be something else than connections if the error message explicitely mention number of clients is the culprit)?

There's one subsystem that's a pain re non-released resources, SysV IPC, but

# ipcs |grep ^0x |wc -l
42

that's hardly the problem here.

xwininfo -root -children

$ xwininfo -root -children|grep children
     549 children:

Well now I wonder how that's possible considering that every X client needs a connection to the server which is an fd that would show up in proc?

> Here[3] is an example of the kind of thing that can go wrong...

That just looks like one of the dozen (hundreds?) of mentions of some particular app that "causes" it. To me it looks just like people kill some program that may well have multiple connections open, but why would it matter? They were just close to the limit anyway. They might even have run into the limit again later on but not reported it back.

Since I don't see any kind of problem like slowdowns in X, why would it limit me? I really think I just want to increase the limit. Please let me do that, X developers (if you read that). I'd even beg you to mention in the error message (given by the X client library, I guess) to state how to increase the limit, so that people can avoid having to write bug reports everywhere.

> Or you've got a whole lotta windows open ;)

Not really that many. Normal workflow, and I'm pretty good at closing unused windows. I've now closed about 20 windows to make space for new ones, and that's about as far as I could get without closing stuff I'm still working on. I'm counting about 200-210 windows in the Xfce window list. And they all fit into my 4G of RAM and 3G of swap on an SSD just fine. I guess the limit is outdated for today's powerful machines.

> xrestop

Runs about 30-60 seconds taking up 20%, and Xorg 100%, until it gives a result (i.e. to return when using the --batch option, or just runs forever using up 100%+ cpu). Odd? (iotop does not report any activity, thus it's not swapping.) (I'm on a dual core system, which can be rather slow when communicating across cores (i.e. Xorg running on one core eating all of it, xrestop on the other core), but still. Some O(n^2) algorithm I guess.)

xrestop - Display: localhost
          Monitoring 210 clients. XErrors: 1
          Pixmaps:   79524K total, Other:     870K total, All:   80394K total

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier    
1000000  3306   30    1 1321 2433    28706K    136K  28842K  3492 xfwm4
dc00000    69   63    1  269  474     8905K     15K   8920K 17253 Chromium
5e00000   167   61    1  478  699     8217K     22K   8240K  5428 Chromium
..


> Apparently debian is patched[1] to allow 512 clients. 

# apt-get install xserver-xorg-dev
$ cat /usr/include/xorg/misc.h | grep MAXCLIENTS
#define MAXCLIENTS 256

Nope.

> that the 256 value is just a coincidence.

Nah :)

Alright, time to rebuild Xorg I guess.

Thanks.

Christian.





Reply to: