[Xcb] libxcb1: breaks alsamixer

Jonathan Nieder jrnieder at gmail.com
Sat Feb 18 01:16:49 PST 2012


# symbol pollution introduced in v1.0.21~12 (alsamixer: show channel
# names for multichannel controls, 2009-05-25)
found 657342 alsa-utils/1.0.21-1
unmerge 657538
# harmless in squeeze
tags 657342 + wheezy sid experimental
severity 657538 serious
reassign 657538 libxcb1 1.8-1
tags 657538 + patch
quit

Cyril Brulebois wrote:
> Julien Cristau <jcristau at debian.org> (27/01/2012):

>> Core was generated by `alsamixer'.
>> Program terminated with signal 11, Segmentation fault.
>> #0  0x00007f96c1c34fd0 in snd_mixer_class_unregister ()
>>    from /usr/lib/x86_64-linux-gnu/libasound.so.2
>> (gdb) where
>> #0  0x00007f96c1c34fd0 in snd_mixer_class_unregister ()
>>    from /usr/lib/x86_64-linux-gnu/libasound.so.2
>> #1  0x00007f96c1c350cd in snd_mixer_close ()
>>    from /usr/lib/x86_64-linux-gnu/libasound.so.2
>> #2  0x0000000000409a0a in ?? ()
>> #3  0x00007f96bf6fccb6 in xcb_disconnect (c=0x25fb8d0)
>>     at ../../src/xcb_conn.c:307
>
> In the new libxcb version, xcb_disconnect calls shutdown() on a socket
> (http://pubs.opengroup.org/onlinepubs/000095399/functions/shutdown.html
> or man 2 shutdown), but alsa-utils exposes such a function. → kaboom.
>
> Reassigning to alsa-utils, which needs to stop using already-taken
> names.

Thanks for a clear analysis.  Fixed in alsa-utils/sid.  How about this
patch, to take care of the upgrade path?
---
 debian/changelog |    7 +++++++
 debian/control   |    2 +-
 2 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 28cc311..e3e7a12 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+libxcb (1.8-3) UNRELEASED; urgency=low
+
+  * Breaks alsa-utils (<< 1.0.24.2-5) to avoid leaving alsamixer
+    broken during partial upgrades (closes: #657538)
+
+ -- Jonathan Nieder <jrnieder at gmail.com>  Sat, 18 Feb 2012 03:06:33 -0600
+
 libxcb (1.8-2) unstable; urgency=high
 
   * Stop passing MSG_WAITALL to recv() (closes: #659104)
diff --git a/debian/control b/debian/control
index ef63e9f..307f71a 100644
--- a/debian/control
+++ b/debian/control
@@ -31,7 +31,7 @@ Package: libxcb1
 Section: libs
 Architecture: any
 Depends: ${misc:Depends}, ${shlibs:Depends}
-Breaks: libxcb-xlib0
+Breaks: libxcb-xlib0, alsa-utils (<< 1.0.24.2-5)
 Pre-Depends: ${misc:Pre-Depends}
 Multi-Arch: same
 Description: X C Binding
-- 
1.7.2.5



More information about the Xcb mailing list