Thank you! What's the behavior now with your fix? Can I find the code somewhere? *KLAUS BADELT*Founder kinonation.com <http://klausbadelt.com/> @Kinonation1 On Sat, Jan 28, 2017 at 8:10 AM, Tanu Kaskinen <tanuk at iki.fi> wrote: > On Fri, 2017-01-27 at 22:08 +0900, Takashi Sakamoto wrote: > > Hi Tanu and Klaus, > > > > On Jan 27 2016 20:26, Tanu Kaskinen wrote: > > > On Tue, 2017-01-24 at 11:35 -0800, Klaus Badelt wrote: > > > > The 32 channel limit excludes use of audio interfaces like for > example (my) > > > > RME HDSPe MADI (64x64), all other MADI interfaces (incl. RME > MADIface), RME > > > > Fireface UFX+ (94x94), MOTU 1248 (32x34), MOTU 112D (112), Focusrite > Red > > > > (64x64), ProTools hardward, and more. In general, we're excluding > many pro > > > > audio and prosumer audio interfaces. > > > > > > > > A workaround could be to limit use of first 32 channels instead of > crashing > > > > with assert on startup. Happy to work on a patch if you see this as a > > > > potential path. > > > > > > What's the assertion? At the very least the crash should be fixed, even > > > if it doesn't make the sound card work. > > > > I face the assertion in my current work for ALSA driver for MOTU > > FireWire units. One of my test device supports 34ch capture. When > > logging in desktop environment which starts pulseaudio process, I can > > see its abort due to below assertion. > > > > pulseaudio[18757]: [pulseaudio] channelmap.c: Assertion > > 'pa_channels_valid(channels)' failed at pulse/channelmap.c:401, function > > pa_cannel_map_init_extend(). Aborting. > > > > Below is the stacktrace. > > > > == Stacktrace ================================= > > #0 __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/ > raise.c:58 > > set = {__val = {0, 0, 0, 0, 0, 0, 4672924419136, 146028888064, > > 34, 189408057797700, 105961138159616, 24671, 4672924419136, 0, 0, 0}} > > pid = <optimized out> > > tid = <optimized out> > > #1 0x00007f50383433ea in __GI_abort () at abort.c:89 > > save_stage = 2 > > act = {__sigaction_handler = {sa_handler = 0x3000000028, > > sa_sigaction = 0x3000000028}, sa_mask = {__val = {0, 140732661601104, > > 4035625362880256, 140732661601088, 0, 139982539889656, 94743048657840, > > 139982546343824, 0, 0, 140732661601104, 0, 139982517379468, > > 189408057753607, 139981574111266, 140732661600784}}, sa_flags = > > 965515017, sa_restorer = 0x7f503990903e} > > sigs = {__val = {32, 0 <repeats 15 times>}} > > #2 0x00007f50398c9712 in pa_channel_map_init_extend () from > > /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-9.0.so > > No symbol table info available. > > #3 0x00007f502ac6f058 in pa_alsa_open_by_device_string () from > > /usr/lib/pulse-9.0/modules/libalsa-util.so > > No symbol table info available. > > #4 0x00007f502ac6f12c in pa_alsa_open_by_template () from > > /usr/lib/pulse-9.0/modules/libalsa-util.so > > No symbol table info available. > > #5 0x00007f502ac78ae1 in ?? () from > > /usr/lib/pulse-9.0/modules/libalsa-util.so > > No symbol table info available. > > #6 0x00007f502ac82161 in pa_alsa_profile_set_probe () from > > /usr/lib/pulse-9.0/modules/libalsa-util.so > > No symbol table info available. > > #7 0x00007f502b1b00ee in module_alsa_card_LTX_pa__init () from > > /usr/lib/pulse-9.0/modules/module-alsa-card.so > > No symbol table info available. > > #8 0x00007f5039b593b8 in pa_module_load () from > > /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecore-9.0.so > > No symbol table info available. > > #9 0x00007f502b3b6703 in ?? () from > > /usr/lib/pulse-9.0/modules/module-udev-detect.so > > No symbol table info available. > > #10 0x00007f502b3b7a0b in module_udev_detect_LTX_pa__init () from > > /usr/lib/pulse-9.0/modules/module-udev-detect.so > > No symbol table info available. > > #11 0x00007f5039b593b8 in pa_module_load () from > > /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecore-9.0.so > > No symbol table info available. > > #12 0x00007f5039b48381 in ?? () from > > /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecore-9.0.so > > No symbol table info available. > > #13 0x00007f5039b4e71c in pa_cli_command_execute_line_stateful () from > > /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecore-9.0.so > > No symbol table info available. > > #14 0x00007f5039b4ef31 in pa_cli_command_execute_file_stream () from > > /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecore-9.0.so > > No symbol table info available. > > #15 0x0000562b1430c242 in main () > > No symbol table info available. > > > > We can see SIGABRT is generated in below line: > > https://cgit.freedesktop.org/pulseaudio/pulseaudio/tree/ > src/pulse/channelmap.c#n401 > > Thanks for the stacktrace! I submitted a potential fix, I hope you can > test it and confirm that PulseAudio doesn't crash any more. > > -- > Tanu > > https://www.patreon.com/tanuk > _______________________________________________ > pulseaudio-discuss mailing list > pulseaudio-discuss at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss > -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20170128/ed8fb6ad/attachment.html>