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

Re: X11: Maximum number of clients reached

On 05/26/2009 05:53 PM, Adam Jackson wrote:
On Sat, 2009-05-23 at 13:53 +0200, Mildred Ki'Lya wrote:

So, it happened again. There are 234 opened sockets, and the last file
descriptor seems to be 255u, so perhaps there is a limit there. Any
ideas on how to find the program responsible for that?

This is a bit awkward since there's no obvious way to get the inode of
the peer socket.  The best you can do is hope that it was created
immediately before the corresponding fd in the X server.  So, something
like this:


from subprocess import Popen, PIPE

client_sockets = []
match = 0

ns = Popen(["netstat", "-an", "--unix"], stdout=PIPE)
output = ns.communicate()[0]
for line in output.split('\n'):
	if line.find("X11-unix") != -1:
		match = 1
	elif match:
		match = 0
		inode = line.split()[6]

lsof = Popen(["lsof", "-U", "+c0", "-w"], stdout=PIPE)
output = lsof.communicate()[0]
for line in output.split('\n'):
		inode = line.split()[7]
		if inode in client_sockets:
			print line

- ajax

Thanks a lot, I used a similar shell script:


inodes="$(netstat -an --unix | grep X11-unix | sed 's/  */ /g' | sed 's/\[ ACC \]/[ ]/' | cut -d' ' -f7)"

lsof +c0 | head -n 1  

while read line; do
        inode="$(sed 's/  */ /g' <<<"$line" | cut -d' ' -f8)"
        #echo $inode
        if grep "^$inode$" <<< "$inodes" >/dev/null; then
                echo "$line"
done <<<"$(lsof +c0 -w | tail -n +2)"

I removed the -U option of lsof, with it I couldn't find anything
I found a lot of instances of syndaemon, I think it's the cause.

Mildred Ki'Lya
╭───────── mildred593@online.fr ──────────
│ Jabber, GoogleTalk: <mildred jabber fr>
│ Website: <http://ki.lya.online.fr>           GPG ID: 9A7D 2E2B
│ Fingerprint: 197C A7E6 645B 4299 6D37 684B 6F9D A8D6 9A7D 2E2B

Attachment: signature.asc
Description: OpenPGP digital signature

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