[gajim/f14/master] Apply the workaround for RHBZ#529202 from F-13, it is still needed.

Michal Schmidt michich at fedoraproject.org
Mon Sep 6 17:59:28 UTC 2010


commit 8beb85da92294445f31f8d2be9cb619448f5c185
Author: Michal Schmidt <mschmidt at redhat.com>
Date:   Mon Sep 6 19:55:39 2010 +0200

    Apply the workaround for RHBZ#529202 from F-13, it is still needed.

 gajim-0.14-disable-libasyncns.patch |   24 ++++++++++++++++++++++++
 gajim.spec                          |   12 ++++++++++--
 2 files changed, 34 insertions(+), 2 deletions(-)
---
diff --git a/gajim-0.14-disable-libasyncns.patch b/gajim-0.14-disable-libasyncns.patch
new file mode 100644
index 0000000..03a34b2
--- /dev/null
+++ b/gajim-0.14-disable-libasyncns.patch
@@ -0,0 +1,24 @@
+Disable libasyncns usage in Gajim
+
+libasyncs creates several threads and lets them all block in recv() on a unix
+socket. Due to a kernel bug (RHBZ#529202) they go into uninterruptible sleep
+for a long time, causing inflated loadavg measurements and scary warnings from
+the hung task watchdog in dmesg.
+
+Thankfully libasyncns is not essential for Gajim to work.
+
+ -- Michal
+
+Index: gajim-0.14/src/common/resolver.py
+===================================================================
+--- gajim-0.14.orig/src/common/resolver.py
++++ gajim-0.14/src/common/resolver.py
+@@ -39,7 +39,7 @@ ns_type_pattern = re.compile('^[a-z]+$')
+ host_pattern = re.compile('^[a-z0-9\-._]*[a-z0-9]\.[a-z]{2,}$')
+ 
+ try:
+-    #raise ImportError("Manually disabled libasync")
++    raise ImportError("Manually disabled libasync")
+     import libasyncns
+     USE_LIBASYNCNS = True
+     log.info("libasyncns-python loaded")
diff --git a/gajim.spec b/gajim.spec
index 2afc605..2711d7e 100644
--- a/gajim.spec
+++ b/gajim.spec
@@ -2,13 +2,16 @@ Summary:	Jabber client written in PyGTK
 Name:		gajim
 %global		majorver 0.14
 Version:	0.14
-Release:	1%{?dist}
+Release:	1%{?dist}.1
 License:	GPLv3
 Group:		Applications/Internet
 URL:		http://gajim.org/
 Source0:	http://gajim.org/downloads/%{majorver}/%{name}-%{version}.tar.bz2
 Patch0:		gajim-0.13.90-gnome-keyring-CancelledError.patch
 Patch1:		gajim-0.13.90-pygtk-crash-python2.7-workaround.patch
+# libasyncns triggers a kernel bug (RHBZ#529202), so let's not use it until
+# it's fixed.
+Patch2:		gajim-0.14-disable-libasyncns.patch
 BuildArch:	noarch
 
 Requires:	avahi-ui-tools
@@ -27,7 +30,8 @@ Requires:	pyOpenSSL
 Requires:	python-crypto
 Requires:	python-GnuPGInterface
 Requires:	python-kerberos
-Requires:	python-libasyncns
+# See above comment for Patch1
+#Requires:	python-libasyncns
 
 # these are dlopen'd using ctypes find_library/LoadLibrary:
 Requires:	gtkspell
@@ -59,6 +63,7 @@ Gajim does not require GNOME to run, even though it exists with it nicely.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
 %configure --docdir=%{_docdir}/%{name}-%{version}
@@ -112,6 +117,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 %{_datadir}/%{name}/src
 
 %changelog
+* Mon Sep 06 2010 Michal Schmidt <mschmidt at redhat.com> 0.14-1.fc14.1
+- Apply the RHBZ#529202 workaround from F-13, it is still needed.
+
 * Mon Sep 06 2010 Michal Schmidt <mschmidt at redhat.com> 0.14-1
 - Update to 0.14 release.
 


More information about the scm-commits mailing list