The branch, master has been updated via 9ea6e7a0f2bb0102082e893b0a4139353f552c1b (commit) from c5981026bd3dc77f6d33adf8d170d606e65de9fd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9ea6e7a0f2bb0102082e893b0a4139353f552c1b Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Nov 20 14:47:09 2013 +0100 Ship python2.6 asyncore patch (Debian squeeze python2.6 version) in python-x2gobroker's docs folder. ----------------------------------------------------------------------- Summary of changes: debian/changelog | 2 + debian/python-x2gobroker.docs | 1 + .../python26_debian-squeeze_asyncore.patch | 41 ++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 patches/python-x2gobroker/python26_debian-squeeze_asyncore.patch The diff of changes is: diff --git a/debian/changelog b/debian/changelog index 180f147..c78385c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -54,6 +54,8 @@ x2gobroker (0.0.3.0-0~x2go1) UNRELEASED; urgency=low if the --password option is not used. - New authentication mechanism: none. Always authenticate a user, even if password is not provided or wrong. + - Ship python2.6 asyncore patch (Debian squeeze python2.6 version) in + python-x2gobroker's docs folder. * /debian/control: + Replace LDAP support with session brokerage support in LONG_DESCRIPTION. + Recommend apache2 and libapache2-mod-wsgi for x2gobroker-wsgi. diff --git a/debian/python-x2gobroker.docs b/debian/python-x2gobroker.docs index 5502ed8..37d2b55 100644 --- a/debian/python-x2gobroker.docs +++ b/debian/python-x2gobroker.docs @@ -1,3 +1,4 @@ NEWS README TODO +patches/python-x2gobroker \ No newline at end of file diff --git a/patches/python-x2gobroker/python26_debian-squeeze_asyncore.patch b/patches/python-x2gobroker/python26_debian-squeeze_asyncore.patch new file mode 100644 index 0000000..9bf976a --- /dev/null +++ b/patches/python-x2gobroker/python26_debian-squeeze_asyncore.patch @@ -0,0 +1,41 @@ +Author: Charles-François Natali (neologix) +Description: 100% cpu usage when using asyncore with UNIX socket +Origin: http://bugs.python.org/issue12502 +Abstract: + It's looping in Lib/asyncore.py:poll + . + select(4, [3], [3], [3], {30, 0}) = 1 (out [3], left {29, 999994}) + select(4, [3], [3], [3], {30, 0}) = 1 (out [3], left {29, 999994}) + select(4, [3], [3], [3], {30, 0}) = 1 (out [3], left {29, 999994}) + . + loop sets the Unix domain socket in the writable set, and contrarily to + AF_INET/AF_INET6 sockets, bound AF_UNIX SOCK_STREAM sockets are reported + as writable before any client connects to them, which triggers the loop. + . + The patch just doesn't add the socket to the writable set if it's in the + accepting state. It fixes the loop, and doesn't seem to cause any regression + in test_asyncore. + . + Apply this patch to python2.6 package on Debian squeeze. +--- /usr/lib/python2.6/asyncore.py.orig 2013-11-20 14:39:41.000000000 +0100 ++++ /usr/lib/python2.6/asyncore.py 2013-11-20 14:39:00.000000000 +0100 +@@ -128,7 +128,8 @@ + is_w = obj.writable() + if is_r: + r.append(fd) +- if is_w: ++ # accepting sockets should not be writable ++ if is_w and not obj.accepting: + w.append(fd) + if is_r or is_w: + e.append(fd) +@@ -175,7 +176,8 @@ + flags = 0 + if obj.readable(): + flags |= select.POLLIN | select.POLLPRI +- if obj.writable(): ++ # accepting sockets should not be writable ++ if obj.writable() and not obj.accepting: + flags |= select.POLLOUT + if flags: + # Only check for exceptions if object was either readable hooks/post-receive -- x2gobroker.git (HTTP(S) Session broker for X2Go) This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "x2gobroker.git" (HTTP(S) Session broker for X2Go).