[pulseaudio-tickets] [PulseAudio] #123: segfault when playing two-channel audio to a four-channel combine sink

PulseAudio trac-noreply at tango.0pointer.de
Fri Aug 24 06:11:56 PDT 2007


#123: segfault when playing two-channel audio to a four-channel combine sink
------------------------------+---------------------------------------------
 Reporter:  theorbtwo         |       Owner:  lennart
     Type:  defect            |      Status:  new    
 Priority:  normal            |   Milestone:         
Component:  module-combine-*  |    Severity:  normal 
 Keywords:                    |  
------------------------------+---------------------------------------------
 I recently got a four-channel soundcard, which presents itself as two two-
 channel alsa sinks, hw:0,0 and hw:0,1.  The relevant lines from my config
 file are:
 load-module module-alsa-sink device=hw:2,0 sink_name=front channels=2
 format=s16le rate=48000 channel_map=left,right
 load-module module-alsa-sink device=hw:2,1 sink_name=rear  channels=2
 format=s16le rate=48000 channel_map=rear-left,rear-right
 load-module module-combine sink_name=surround master=front slaves=rear
 channels=4 channel_map=left,right,rear-left,rear-right
 set-default-sink surround



 A gdb backtrace of the segfault shows:
 #0  0xb7d71d27 in sink_notify (s=0x80635f8) at modules/module-
 combine.c:222
 #1  0x4f931919 in pa_sink_notify (s=0x80635f8) at pulsecore/sink.c:218
 #2  0xb7d71dba in sink_notify (s=0x80635f8) at modules/module-
 combine.c:231
 #3  0x4f931919 in pa_sink_notify (s=0x80635f8) at pulsecore/sink.c:218
 #4  0xb7d71dba in sink_notify (s=0x80635f8) at modules/module-
 combine.c:231
 #5  0x4f931919 in pa_sink_notify (s=0x80635f8) at pulsecore/sink.c:218
 ...
 With those two lines repeating themselves.

 According to gdb, s is (gdb) p *s
 $2 = {ref = 1, index = 2, core = 0x8055a28, state = PA_SINK_RUNNING, name
 = 0x8062b78 "surround",
   description = 0x80610e8 "Combined Sink", driver = 0x80593d0 "modules
 /module-combine.c", is_hardware = 0,
   owner = 0x80612c8, sample_spec = {format = PA_SAMPLE_S16LE, rate =
 48000, channels = 4 '\004'}, channel_map = {
     channels = 4 '\004', map = {PA_CHANNEL_POSITION_LEFT,
 PA_CHANNEL_POSITION_RIGHT, PA_CHANNEL_POSITION_REAR_LEFT,
       PA_CHANNEL_POSITION_REAR_RIGHT, PA_CHANNEL_POSITION_MONO <repeats 28
 times>}}, inputs = 0x80593f0,
   monitor_source = 0x80639e8, hw_volume = {channels = 4 '\004', values =
 {65536, 65536, 65536, 65536,
       0 <repeats 28 times>}}, sw_volume = {channels = 4 '\004', values =
 {65536, 65536, 65536, 65536,
       0 <repeats 28 times>}}, hw_muted = 0, sw_muted = 0, notify =
 0xb7d71d20 <sink_notify>,
   get_latency = 0xb7d71c81 <sink_get_latency_cb>, set_hw_volume = 0,
 get_hw_volume = 0, set_hw_mute = 0, get_hw_mute = 0,
   userdata = 0x8062530}

 This is a custom build of debian's 0.9.6 (the normal one also has the
 segfault, but debugging symbols aren't available.

 Thanks, please let me know there's any other data I can provide you with.

-- 
Ticket URL: <http://pulseaudio.org/ticket/123>
PulseAudio <http://pulseaudio.org/>
The PulseAudio Sound Server


More information about the pulseaudio-bugs mailing list