Package: libxml2 Version: 2.8.0+dfsg1-7+nmu2 Severity: important Tags: wheezy patch
Hi, I have found the probable cause of a number hard-to-reproduce, hard-to-debug gnome-shell failures on wheezy, especially when a11y is enabled. The problem is identical to LP#962604 but the crash can happen in a wide number of libxml2 functions. It is caused by a race condition in libxml2 which can occur only when some functions are used several times from different threads. The bug is fixed upstream: https://git.gnome.org/browse/libxml2/commit/?id=7a2215dbcd4882e45f618c5f78f8d975b7c47ed3 I’m attaching the patch. Since it’s mostly about GNOME, I can ask the release team and do the upload myself if you want. Thanks for considering. -- .''`. Josselin Mouette : :' : `. `' `-
Index: libxml2-2.8.0+dfsg1/threads.c =================================================================== --- libxml2-2.8.0+dfsg1.orig/threads.c 2010-12-20 13:56:24.000000000 +0100 +++ libxml2-2.8.0+dfsg1/threads.c 2014-03-21 12:03:44.898355001 +0100 @@ -915,6 +915,7 @@ #ifdef HAVE_PTHREAD_H if ((libxml_is_threaded) && (pthread_key_delete != NULL)) pthread_key_delete(globalkey); + once_control = PTHREAD_ONCE_INIT; #elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL)) if (globalkey != TLS_OUT_OF_INDEXES) { xmlGlobalStateCleanupHelperParams *p;