[4.5.0] [Linux] Crash/Lock if fluidsynth not initialised

Post bugs that have to do with sound and/or in-game music here.

Moderator: GZDoom Developers

Forum rules
Please construct and post a simple demo whenever possible for all bug reports. Please provide links to everything.

If you can include a wad demonstrating the problem, please do so. Bug reports that include fully-constructed demos have a much better chance of being investigated in a timely manner than those that don't.

Please make a new topic for every bug. Don't combine multiple bugs into a single topic. Thanks!

[4.5.0] [Linux] Crash/Lock if fluidsynth not initialised

Postby MartinHowe » Sat Nov 21, 2020 2:53 pm

This happens on Linux Mint 20 (based on Ubuntu 20.04) with a newly installed, from the Downloads page, of GZDoom for Ubuntu. It also happens when I build GZDoom locally on this system and use that instead.

Steps to reproduce:
Issue the command gzdoom -iwad doom at the bash prompt.
GZDoom will always play the intro sound, but as soon as it tries to start a level, it will either crash or hang due to fluidsynth issues (see log file below). Sometimes it crashes, sometimes it locks up and has to be kill -9'd.

While the fluidsynth issue may be due to something in my system, (I'll check in due course), GZDoom shouldn't just crash or lock if it detects that fluidsynth isn't initialised, maybe just not start music or something.

Code: Select allExpand view
martin@freddie:~$ gzdoom
GZDoom g4.5.0 - 2020-10-31 10:07:33 +0100 - SDL version
Compiled on Nov  1 2020

M_LoadDefaults: Load system defaults.
W_Init: Init WADfiles.
 adding /opt/gzdoom/gzdoom.pk3, 630 lumps
 adding /opt/gzdoom/game_support.pk3, 2512 lumps
 adding /usr/share/doom/doom.wad, 2306 lumps
I_Init: Setting up machine state.
CPU Vendor ID: GenuineIntel
  Name: Intel(R) Xeon(R) CPU E5345 @ 2.33GHz
  Family 6, Model 15, Stepping 11
  Features: SSE2 SSE3 SSSE3 HyperThreading
V_Init: allocate screen.
S_Init: Setting up sound.
I_InitSound: Initializing OpenAL
  Opened device EMU20k1 [Sound Blaster X-Fi Series] Analogue Stereo
  EFX enabled
ST_Init: Init startup screen.
Checking cmd-line parameters...
S_InitData: Load sound definitions.
G_ParseMapInfo: Load map definitions.
Texman.Init: Init texture manager.
ParseTeamInfo: Load team definitions.
LoadActors: Load actor definitions.
script parsing took 295.99 ms
R_Init: Init Doom refresh subsystem.
DecalLibrary: Load decals.
M_Init: Init menus.
P_Init: Init Playloop state.
ParseSBarInfo: Loading custom status bar definition.
D_CheckNetGame: Checking network game status.
player 1 of 1 (1 nodes)
Using video driver x11
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce GTX 550 Ti/PCIe/SSE2
GL_VERSION: 4.6.0 NVIDIA 390.138 (Core profile)
GL_SHADING_LANGUAGE_VERSION: 4.60 NVIDIA

Max. texture size: 16384
Max. texture units: 32
Max. varying: 124
Max. combined shader storage blocks: 96
Max. vertex shader storage blocks: 16
Resolution: 640 x 480
fluidsynth: warning: SDL2 not initialized, SDL2 audio driver won't be usable

----------------------------------------

E1M1 - Hangar

fluidsynth: warning: SDL2 not initialized, SDL2 audio driver won't be usable

(process:54426): GLib-GObject-WARNING **: 20:37:06.429: cannot register existing type 'IpatchSplitsType'

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_param_spec_enum: assertion 'G_TYPE_IS_ENUM (enum_type)' failed

** (process:54426): CRITICAL **: 20:37:06.430: ipatch_type_install_property: assertion 'G_IS_PARAM_SPEC(prop_spec)' failed

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_boxed_type_register_static: assertion 'g_type_from_name (name) == 0' failed

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchSF2GenType'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot retrieve class for invalid (unclassed) type '<invalid>'

** (process:54426): CRITICAL **: 20:37:06.430: file /build/libinstpatch-i701yY/libinstpatch-1.1.2/libinstpatch/IpatchSF2Gen.c: line 148 (_ipatch_sf2_gen_init): assertion `enum_class != NULL' failed.

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchSample'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchItem'

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchSF2GenItem'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchItem'

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchSF2ModItem'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchItem'

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchSF2VoiceCache'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot retrieve class for invalid (unclassed) type '<invalid>'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchItem'

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_type_register_static: assertion 'parent_type > 0' failed

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_type_register_static: assertion 'parent_type > 0' failed

(process:54426): GLib-CRITICAL **: 20:37:06.430: g_once_init_leave: assertion 'result != 0' failed

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot retrieve class for invalid (unclassed) type '<invalid>'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchItem'

(process:54426): GLib-GObject-CRITICAL **: 20:37:06.430: g_type_register_static: assertion 'parent_type > 0' failed

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot retrieve class for invalid (unclassed) type '<invalid>'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot register existing type 'IpatchConverter'

(process:54426): GLib-GObject-WARNING **: 20:37:06.430: cannot retrieve class for invalid (unclassed) type '<invalid>'
User avatar
MartinHowe
In space, no-one can hear you KILL an ALIEN
 
Joined: 11 Aug 2003
Location: Waveney, United Kingdom

Re: [4.5.0] [Linux] Crash/Lock if fluidsynth not initialised

Postby Graf Zahl » Sat Nov 21, 2020 4:30 pm

Here's what really puzzles me. The issue with FluidSynth on some Linux distros has been known for months but apparently nothing happens here and updating the library seems to be a no-go by default.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: [4.5.0] [Linux] Crash/Lock if fluidsynth not initialised

Postby MartinHowe » Sun Nov 22, 2020 6:36 am

Ah, I didn't realise this was known about. I'll completely uninstall fluidsynth and libfluidsynth, reboot and reinstall and see what happens next.

[EDIT] I found a crash log for this (it was in my home dir) with the GZDoom installed by downloading from ZDoom.org:
Code: Select allExpand view
*** Fatal Error ***
Address not mapped to object (signal 11)
Address: 0x7fca80e4c0b0

System: Linux freddie 5.4.0-54-generic #60-Ubuntu SMP Fri Nov 6 10:37:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

GZDoom version g4.5.0 (3037c08840f209f9f6b6d7e6c2c69632472a5d54)
Command line: /opt/gzdoom/gzdoom -iwad doom
Wad 0: gzdoom.pk3
Wad 1: game_support.pk3
Wad 2: doom.wad

Current map: e1m1

viewx = 0.000000
viewy = 0.000000
viewz = 0.000000
viewangle = 0.000000

Executing: gdb --quiet --batch --command=gdb-respfile-6PGjL8
[New LWP 53128]
[New LWP 53131]
[New LWP 53132]
[New LWP 53133]
[New LWP 53135]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007fcaa9504dff in __GI___wait4 (pid=53137, stat_loc=0x55850aa78fb4, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:27

* Loaded Libraries
From                To                  Syms Read   Shared Object Library
0x00007fcaa9e86640  0x00007fcaa9f5a1f2  Yes (*)     /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0
0x00007fcaa9e48ae0  0x00007fcaa9e584d5  Yes         /lib/x86_64-linux-gnu/libpthread.so.0
0x00007fcaa9e39720  0x00007fcaa9e3cd70  Yes         /lib/x86_64-linux-gnu/librt.so.1
0x00007fcaa9e1c280  0x00007fcaa9e2ce2b  Yes (*)     /lib/x86_64-linux-gnu/libz.so.1
0x00007fcaa9e09240  0x00007fcaa9e15ec6  Yes (*)     /lib/x86_64-linux-gnu/libbz2.so.1.0
0x00007fcaa9e02220  0x00007fcaa9e03179  Yes         /lib/x86_64-linux-gnu/libdl.so.2
0x00007fcaa98152e0  0x00007fcaa9a1624e  Yes (*)     /opt/gzdoom/libzmusic.so.1
0x00007fcaa96623c0  0x00007fcaa9708f28  Yes         /lib/x86_64-linux-gnu/libm.so.6
0x00007fcaa961a6d0  0x00007fcaa96445d2  Yes (*)     /usr/lib/x86_64-linux-gnu/libgomp.so.1
0x00007fcaa9444630  0x00007fcaa95b921f  Yes         /lib/x86_64-linux-gnu/libc.so.6
0x00007fcaa9fde100  0x00007fcaaa0005e4  Yes         /lib64/ld-linux-x86-64.so.2
0x00007fcaa934f380  0x00007fcaa93dc096  Yes (*)     /usr/lib/x86_64-linux-gnu/libasound.so.2
0x00007fcaa92dcf60  0x00007fcaa930aab1  Yes (*)     /usr/lib/x86_64-linux-gnu/libpulse.so.0
0x00007fcaa91a90c0  0x00007fcaa92325b6  Yes (*)     /usr/lib/x86_64-linux-gnu/libX11.so.6
0x00007fcaa917f5e0  0x00007fcaa918984e  Yes (*)     /usr/lib/x86_64-linux-gnu/libXext.so.6
0x00007fcaa9171660  0x00007fcaa9176288  Yes (*)     /usr/lib/x86_64-linux-gnu/libXcursor.so.1
0x00007fcaa916a0f0  0x00007fcaa916aa31  Yes (*)     /usr/lib/x86_64-linux-gnu/libXinerama.so.1
0x00007fcaa9159460  0x00007fcaa9163d1b  Yes (*)     /usr/lib/x86_64-linux-gnu/libXi.so.6
0x00007fcaa914c360  0x00007fcaa91526b9  Yes (*)     /usr/lib/x86_64-linux-gnu/libXrandr.so.2
0x00007fcaa9144140  0x00007fcaa9144d5d  Yes (*)     /usr/lib/x86_64-linux-gnu/libXss.so.1
0x00007fcaa913d240  0x00007fcaa913f9f9  Yes (*)     /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1
0x00007fcaa9138080  0x00007fcaa9138219  Yes (*)     /usr/lib/x86_64-linux-gnu/libwayland-egl.so.1
0x00007fcaa912b5c0  0x00007fcaa9130345  Yes (*)     /usr/lib/x86_64-linux-gnu/libwayland-client.so.0
0x00007fcaa911d460  0x00007fcaa911eff7  Yes (*)     /usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0
0x00007fcaa90dd560  0x00007fcaa90f8703  Yes (*)     /usr/lib/x86_64-linux-gnu/libxkbcommon.so.0
0x00007fcaa90cc480  0x00007fcaa90d0539  Yes (*)     /usr/lib/x86_64-linux-gnu/libogg.so.0
0x00007fcaa909f480  0x00007fcaa90b5c4d  Yes (*)     /usr/lib/x86_64-linux-gnu/libvorbis.so.0
0x00007fcaa90050c0  0x00007fcaa900777e  Yes (*)     /usr/lib/x86_64-linux-gnu/libvorbisenc.so.2
0x00007fcaa8fbb800  0x00007fcaa8fe3c33  Yes (*)     /usr/lib/x86_64-linux-gnu/libFLAC.so.8
0x00007fcaa8f57600  0x00007fcaa8f9d4ff  Yes (*)     /usr/lib/x86_64-linux-gnu/libopus.so.0
0x00007fcaa8e111a0  0x00007fcaa8ef8e32  Yes (*)     /usr/lib/x86_64-linux-gnu/libstdc++.so.6
0x00007fcaa8d595e0  0x00007fcaa8d6a045  Yes (*)     /lib/x86_64-linux-gnu/libgcc_s.so.1
0x00007fcaa8ce93c0  0x00007fcaa8d2df52  Yes (*)     /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-13.99.so
0x00007fcaa8c90eb0  0x00007fcaa8cbd915  Yes (*)     /lib/x86_64-linux-gnu/libdbus-1.so.3
0x00007fcaa8c66620  0x00007fcaa8c79699  Yes (*)     /usr/lib/x86_64-linux-gnu/libxcb.so.1
0x00007fcaa8a52a60  0x00007fcaa8a58ab5  Yes (*)     /usr/lib/x86_64-linux-gnu/libXrender.so.1
0x00007fcaa8a49300  0x00007fcaa8a4b6ea  Yes (*)     /usr/lib/x86_64-linux-gnu/libXfixes.so.3
0x00007fcaa8a3d230  0x00007fcaa8a42a46  Yes (*)     /usr/lib/x86_64-linux-gnu/libffi.so.7
0x00007fcaa899dba0  0x00007fcaa8a10720  Yes (*)     /lib/x86_64-linux-gnu/libsystemd.so.0
0x00007fcaa8983b20  0x00007fcaa898788c  Yes (*)     /usr/lib/x86_64-linux-gnu/libwrap.so.0
0x00007fcaa890afa0  0x00007fcaa895ced5  Yes (*)     /usr/lib/x86_64-linux-gnu/libsndfile.so.1
0x00007fcaa86fc1d0  0x00007fcaa86fe848  Yes (*)     /usr/lib/x86_64-linux-gnu/libasyncns.so.0
0x00007fcaa86f6360  0x00007fcaa86f7052  Yes (*)     /usr/lib/x86_64-linux-gnu/libXau.so.6
0x00007fcaa86ef1a0  0x00007fcaa86f0a03  Yes (*)     /usr/lib/x86_64-linux-gnu/libXdmcp.so.6
0x00007fcaa86c73c0  0x00007fcaa86de3a6  Yes (*)     /lib/x86_64-linux-gnu/liblzma.so.5
0x00007fcaa86a5120  0x00007fcaa86be88b  Yes (*)     /usr/lib/x86_64-linux-gnu/liblz4.so.1
0x00007fcaa858f580  0x00007fcaa865c9dc  Yes (*)     /usr/lib/x86_64-linux-gnu/libgcrypt.so.20
0x00007fcaa856bd20  0x00007fcaa857a711  Yes         /lib/x86_64-linux-gnu/libnsl.so.1
0x00007fcaa854e720  0x00007fcaa855d11c  Yes         /lib/x86_64-linux-gnu/libresolv.so.2
0x00007fcaa8534e40  0x00007fcaa8542e69  Yes (*)     /usr/lib/x86_64-linux-gnu/libbsd.so.0
0x00007fcaa8511c60  0x00007fcaa8523a92  Yes (*)     /lib/x86_64-linux-gnu/libgpg-error.so.0
0x00007fcaa7cdcfe0  0x00007fcaa7cf74f0  Yes (*)     /lib/x86_64-linux-gnu/libudev.so.1
0x00007fcaa7b9b870  0x00007fcaa7be8151  Yes (*)     /usr/lib/x86_64-linux-gnu/libopenal.so.1
0x00007fcaa7cc9590  0x00007fcaa7ccfe67  Yes (*)     /usr/lib/x86_64-linux-gnu/libsndio.so.7.0
0x00007fcaa7b50600  0x00007fcaa7b7616b  Yes (*)     /usr/lib/x86_64-linux-gnu/libjack.so.0
0x00007fcaa65321c0  0x00007fcaa653501d  Yes (*)     /usr/lib/x86_64-linux-gnu/libGL.so.1
0x00007fcaa6477240  0x00007fcaa64794eb  Yes (*)     /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0
0x00007fcaa6406700  0x00007fcaa642048c  Yes (*)     /usr/lib/x86_64-linux-gnu/libGLX.so.0
0x00007fcaa4d32500  0x00007fcaa4dab501  Yes (*)     /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.0
0x00007fcaa4adf9a0  0x00007fcaa4ae1683  Yes (*)     /usr/lib/x86_64-linux-gnu/tls/libnvidia-tls.so.390.138
0x00007fca864cf350  0x00007fca87616d47  Yes (*)     /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.390.138
0x00007fca80eecb40  0x00007fca80f6eb62  Yes (*)     /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
0x00007fcaa9fc6440  0x00007fcaa9fc7323  Yes (*)     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0
0x00007fcaa9fc05e0  0x00007fcaa9fc1828  Yes (*)     /usr/lib/x86_64-linux-gnu/libpulse-simple.so.0
0x00007fca80d72e40  0x00007fca80da7bee  Yes (*)     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
0x00007fca80cf32a0  0x00007fca80d4386d  Yes (*)     /lib/x86_64-linux-gnu/libpcre.so.3
0x00007fcaa48e7f60  0x00007fcaa4927fb2  Yes (*)     /usr/lib/x86_64-linux-gnu/libfluidsynth.so.2
0x00007fcaa47f0d20  0x00007fcaa4818129  Yes (*)     /lib/x86_64-linux-gnu/libreadline.so.8
0x00007fca810317f0  0x00007fca8109187b  Yes (*)     /usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2
0x00007fcaa47ba6a0  0x00007fcaa47c817c  Yes (*)     /lib/x86_64-linux-gnu/libtinfo.so.6
(*): Shared library is missing debugging information.

* Threads
  Id   Target Id                                       Frame
* 1    Thread 0x7fcaa8508080 (LWP 53127) "gzdoom"      0x00007fcaa9504dff in __GI___wait4 (pid=53137, stat_loc=0x55850aa78fb4, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:27
  2    Thread 0x7fcaa8504700 (LWP 53128) "gzdoom"      futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55850abb5fc0 <renderPool+256>) at ../sysdeps/nptl/futex-internal.h:183
  3    Thread 0x7fcaa7ac2700 (LWP 53131) "threaded-ml" 0x00007fcaa9534aff in __GI___poll (fds=0x7fcaa0009c50, nfds=3, timeout=345) at ../sysdeps/unix/sysv/linux/poll.c:29
  4    Thread 0x7fcaa72c1700 (LWP 53132) "gzdoom"      futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x7fcaa000875c) at ../sysdeps/nptl/futex-internal.h:183
  5    Thread 0x7fcaa6899700 (LWP 53133) "gzdoom"      futex_abstimed_wait_cancelable (private=0, abstime=0x0, clockid=0, expected=0, futex_word=0x55850d170980) at ../sysdeps/nptl/futex-internal.h:320
  6    Thread 0x7fcaa5d90700 (LWP 53135) "gzdoom"      futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55850d0bca00) at ../sysdeps/nptl/futex-internal.h:183

* FPU Status
  R7: Empty   0x00000000000000000000
  R6: Empty   0x00000000000000000000
  R5: Empty   0x00000000000000000000
  R4: Empty   0x00000000000000000000
  R3: Empty   0x00000000000000000000
  R2: Empty   0x00000000000000000000
  R1: Empty   0x00000000000000000000
=>R0: Empty   0x00000000000000000000

Status Word:         0x0000                                           
                       TOP: 0
Control Word:        0x037f   IM DM ZM OM UM PM
                       PC: Extended Precision (64-bits)
                       RC: Round to nearest
Tag Word:            0xffff
Instruction Pointer: 0x00:0x00000000
Operand Pointer:     0x00:0x00000000
Opcode:              0x0000

* Registers
rax            0xfffffffffffffe00  -512
rbx            0xcf91              53137
rcx            0x7fcaa9504dff      140508400733695
rdx            0x0                 0
rsi            0x55850aa78fb4      94029897764788
rdi            0xcf91              53137
rbp            0xb                 0xb
rsp            0x55850aa78f80      0x55850aa78f80
r8             0x0                 0
r9             0x0                 0
r10            0x0                 0
r11            0x200293            2097811
r12            0x55850aa78fb4      94029897764788
r13            0x55850aa76340      94029897753408
r14            0x1c                28
r15            0x1090              4240
rip            0x7fcaa9504dff      0x7fcaa9504dff <__GI___wait4+95>
eflags         0x200293            [ CF AF SF IF ID ]
cs             0x33                51
ss             0x2b                43
ds             0x0                 0
es             0x0                 0
fs             0x0                 0
gs             0x0                 0

* Backtrace

Thread 6 (Thread 0x7fcaa5d90700 (LWP 53135)):
#0  futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55850d0bca00) at ../sysdeps/nptl/futex-internal.h:183
        __ret = -512
        oldtype = 0
        err = <optimised out>
        spin = 0
        buffer = {__routine = 0x7fcaa9e51050 <__condvar_cleanup_waiting>, __arg = 0x7fcaa5d8fc20, __canceltype = -1444605872, __prev = 0x0}
        cbuffer = {wseq = 122, cond = 0x55850d0bc9d8, mutex = 0x55850d0bc9b0, private = 0}
        err = <optimised out>
        g = 0
        flags = <optimised out>
        g1_start = <optimised out>
        signals = <optimised out>
        result = 0
        wseq = 122
        seq = 61
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55850d0bc9b0, cond=0x55850d0bc9d8) at pthread_cond_wait.c:508
        spin = 0
        buffer = {__routine = 0x7fcaa9e51050 <__condvar_cleanup_waiting>, __arg = 0x7fcaa5d8fc20, __canceltype = -1444605872, __prev = 0x0}
        cbuffer = {wseq = 122, cond = 0x55850d0bc9d8, mutex = 0x55850d0bc9b0, private = 0}
        err = <optimised out>
        g = 0
        flags = <optimised out>
        g1_start = <optimised out>
        signals = <optimised out>
        result = 0
        wseq = 122
        seq = 61
#2  __pthread_cond_wait (cond=0x55850d0bc9d8, mutex=0x55850d0bc9b0) at pthread_cond_wait.c:638
#3  0x000055850a58f3bc in std::condition_variable::wait(std::unique_lock<std::mutex>&) ()
#4  0x000055850a1c2670 in OpenALSoundRenderer::BackgroundProc() ()
#5  0x000055850a5fd520 in  ()
#6  0x00007fcaa9e4a609 in start_thread (arg=<optimised out>) at pthread_create.c:477
        ret = <optimised out>
        pd = <optimised out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140508342585088, -6870896622386478157, 140725305493678, 140725305493679, 140725305493680, 140508342582784, 6859228922869515187, 6859255073056949171}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#7  0x00007fcaa9541293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7fcaa6899700 (LWP 53133)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0x0, clockid=0, expected=0, futex_word=0x55850d170980) at ../sysdeps/nptl/futex-internal.h:320
        __ret = -512
        op = 393
        __ret = <optimised out>
        oldtype = 0
        err = <optimised out>
#1  do_futex_wait (sem=sem@entry=0x55850d170980, abstime=0x0, clockid=0) at sem_waitcommon.c:112
#2  0x00007fcaa9e544e8 in __new_sem_wait_slow (sem=0x55850d170980, abstime=0x0, clockid=0) at sem_waitcommon.c:184
        _buffer = {__routine = 0x7fcaa9e543a0 <__sem_wait_cleanup>, __arg = 0x55850d170980, __canceltype = 0, __prev = 0x0}
        err = <optimised out>
        d = 0
#3  0x00007fcaa7be7fe9 in  () at /usr/lib/x86_64-linux-gnu/libopenal.so.1
#4  0x00007fcaa7bad2dd in  () at /usr/lib/x86_64-linux-gnu/libopenal.so.1
#5  0x00007fcaa7be7b57 in  () at /usr/lib/x86_64-linux-gnu/libopenal.so.1
#6  0x00007fcaa9e4a609 in start_thread (arg=<optimised out>) at pthread_create.c:477
        ret = <optimised out>
        pd = <optimised out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140508354156288, -6870896622386478157, 140725305493614, 140725305493615, 140725305493760, 140508354153984, 6859236219482080179, 6859255073056949171}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#7  0x00007fcaa9541293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fcaa72c1700 (LWP 53132)):
#0  futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x7fcaa000875c) at ../sysdeps/nptl/futex-internal.h:183
        __ret = -512
        oldtype = 0
        err = <optimised out>
        spin = 0
        buffer = {__routine = 0x7fcaa9e51050 <__condvar_cleanup_waiting>, __arg = 0x7fcaa72c0c60, __canceltype = 8192, __prev = 0x0}
        cbuffer = {wseq = 2127, cond = 0x7fcaa0008730, mutex = 0x7fcaa0007ed0, private = 0}
        err = <optimised out>
        g = 1
        flags = <optimised out>
        g1_start = <optimised out>
        signals = <optimised out>
        result = 0
        wseq = 2127
        seq = 1063
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x7fcaa0007ed0, cond=0x7fcaa0008730) at pthread_cond_wait.c:508
        spin = 0
        buffer = {__routine = 0x7fcaa9e51050 <__condvar_cleanup_waiting>, __arg = 0x7fcaa72c0c60, __canceltype = 8192, __prev = 0x0}
        cbuffer = {wseq = 2127, cond = 0x7fcaa0008730, mutex = 0x7fcaa0007ed0, private = 0}
        err = <optimised out>
        g = 1
        flags = <optimised out>
        g1_start = <optimised out>
        signals = <optimised out>
        result = 0
        wseq = 2127
        seq = 1063
#2  __pthread_cond_wait (cond=0x7fcaa0008730, mutex=0x7fcaa0007ed0) at pthread_cond_wait.c:638
#3  0x00007fcaa930487c in pa_threaded_mainloop_wait () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#4  0x00007fcaa7be1496 in  () at /usr/lib/x86_64-linux-gnu/libopenal.so.1
#5  0x00007fcaa7be7b57 in  () at /usr/lib/x86_64-linux-gnu/libopenal.so.1
#6  0x00007fcaa9e4a609 in start_thread (arg=<optimised out>) at pthread_create.c:477
        ret = <optimised out>
        pd = <optimised out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140508364805888, -6870896622386478157, 140725305493422, 140725305493423, 140725305493568, 140508364803584, 6859234797847905203, 6859255073056949171}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#7  0x00007fcaa9541293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fcaa7ac2700 (LWP 53131)):
#0  0x00007fcaa9534aff in __GI___poll (fds=0x7fcaa0009c50, nfds=3, timeout=345) at ../sysdeps/unix/sysv/linux/poll.c:29
        resultvar = 18446744073709551100
        sc_cancel_oldtype = 0
#1  0x00007fcaa93041d6 in  () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#2  0x00007fcaa92f5841 in pa_mainloop_poll () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#3  0x00007fcaa92f5ec3 in pa_mainloop_iterate () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#4  0x00007fcaa92f5f70 in pa_mainloop_run () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#5  0x00007fcaa930411d in  () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#6  0x00007fcaa8d2967c in  () at /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-13.99.so
#7  0x00007fcaa9e4a609 in start_thread (arg=<optimised out>) at pthread_create.c:477
        ret = <optimised out>
        pd = <optimised out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140508373198592, -6870896622386478157, 140725305493486, 140725305493487, 140725305493488, 140508373196288, 6859233697799406515, 6859255073056949171}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#8  0x00007fcaa9541293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fcaa8504700 (LWP 53128)):
#0  futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55850abb5fc0 <renderPool+256>) at ../sysdeps/nptl/futex-internal.h:183
        __ret = -512
        oldtype = 0
        err = <optimised out>
        spin = 0
        buffer = {__routine = 0x7fcaa9e51050 <__condvar_cleanup_waiting>, __arg = 0x7fcaa8503c40, __canceltype = 0, __prev = 0x0}
        cbuffer = {wseq = 0, cond = 0x55850abb5f98 <renderPool+216>, mutex = 0x55850abb5f70 <renderPool+176>, private = 0}
        err = <optimised out>
        g = 0
        flags = <optimised out>
        g1_start = <optimised out>
        signals = <optimised out>
        result = 0
        wseq = 0
        seq = 0
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55850abb5f70 <renderPool+176>, cond=0x55850abb5f98 <renderPool+216>) at pthread_cond_wait.c:508
        spin = 0
        buffer = {__routine = 0x7fcaa9e51050 <__condvar_cleanup_waiting>, __arg = 0x7fcaa8503c40, __canceltype = 0, __prev = 0x0}
        cbuffer = {wseq = 0, cond = 0x55850abb5f98 <renderPool+216>, mutex = 0x55850abb5f70 <renderPool+176>, private = 0}
        err = <optimised out>
        g = 0
        flags = <optimised out>
        g1_start = <optimised out>
        signals = <optimised out>
        result = 0
        wseq = 0
        seq = 0
#2  __pthread_cond_wait (cond=0x55850abb5f98 <renderPool+216>, mutex=0x55850abb5f70 <renderPool+176>) at pthread_cond_wait.c:638
#3  0x000055850a58f3bc in std::condition_variable::wait(std::unique_lock<std::mutex>&) ()
#4  0x0000558509ee0c2b in ctpl::thread_pool::set_thread(int)::{lambda()#1}::operator()() const ()
#5  0x000055850a5fd520 in  ()
#6  0x00007fcaa9e4a609 in start_thread (arg=<optimised out>) at pthread_create.c:477
        ret = <optimised out>
        pd = <optimised out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140508383954688, -6870896622386478157, 140725305498606, 140725305498607, 140725305498608, 140508383952384, 6859258538816504755, 6859255073056949171}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#7  0x00007fcaa9541293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7fcaa8508080 (LWP 53127)):
#0  0x00007fcaa9504dff in __GI___wait4 (pid=53137, stat_loc=0x55850aa78fb4, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:27
        resultvar = 18446744073709551104
        sc_cancel_oldtype = 0
#1  0x0000558509d4ddfc in  ()
#2  0x00007fcaa9e563c0 in <signal handler called> () at /lib/x86_64-linux-gnu/libpthread.so.0
#3  __strcmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:250
#4  0x00007fca80f0f47d in g_str_equal () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fca80f0e66d in g_hash_table_lookup () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007fca80f31a0f in g_intern_static_string () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#7  0x00007fca81032a1d in  () at /usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2
#8  0x00007fca81032db5 in ipatch_base_get_type () at /usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2
#9  0x00007fca8108e557 in ipatch_init () at /usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2
#10 0x00007fcaa490fed4 in new_fluid_synth () at /usr/lib/x86_64-linux-gnu/libfluidsynth.so.2
#11 0x00007fcaa981a8bb in FluidSynthMIDIDevice::FluidSynthMIDIDevice(int, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&) () at /opt/gzdoom/libzmusic.so.1
#12 0x00007fcaa981ae7e in CreateFluidSynthMIDIDevice(int, char const*) () at /opt/gzdoom/libzmusic.so.1
#13 0x00007fcaa9829c1f in MIDIStreamer::CreateMIDIDevice(EMidiDevice_, int) () at /opt/gzdoom/libzmusic.so.1
#14 0x00007fcaa982adfb in MIDIStreamer::Play(bool, int) () at /opt/gzdoom/libzmusic.so.1
#15 0x00007fcaa982ef58 in ZMusic_Start () at /opt/gzdoom/libzmusic.so.1
#16 0x000055850a1cf9b1 in S_ChangeMusic(char const*, int, bool, bool) ()
#17 0x000055850a1cfe53 in S_RestartMusic() ()
#18 0x000055850a1d130d in I_SetMusicVolume(double) ()
#19 0x000055850a0425e9 in P_SetupLevel(FLevelLocals*, int, bool) ()
#20 0x0000558509f9886f in FLevelLocals::DoLoadLevel(FString const&, int, bool, bool) ()
#21 0x0000558509f98b82 in G_DoLoadLevel(FString const&, int, bool, bool) ()
#22 0x0000558509f98fa4 in G_InitNew(char const*, bool) ()
#23 0x0000558509f992a5 in G_DoNewGame() ()
#24 0x0000558509f938bd in G_Ticker() ()
#25 0x0000558509f81fec in TryRunTics() ()
#26 0x0000558509f77033 in D_DoomLoop() ()
#27 0x0000558509f7aa1d in  ()
#28 0x0000558509f7bb39 in GameMain() ()
#29 0x0000558509d2f162 in main ()
Inferior 1 (process 53127) detached
User avatar
MartinHowe
In space, no-one can hear you KILL an ALIEN
 
Joined: 11 Aug 2003
Location: Waveney, United Kingdom

Re: [4.5.0] [Linux] Crash/Lock if fluidsynth not initialised

Postby Cacodemon345 » Sun Nov 22, 2020 12:07 pm

Likely libinstpatch being the problem library. Report to the libinstpatch developers.
Cacodemon345
 
Joined: 22 Dec 2017
Discord: Cacodemon345#9151
Github ID: Cacodemon345
Operating System: Windows 10/8.1/8/201x 64-bit
Graphics Processor: ATI/AMD (Modern GZDoom)


Return to Audio/Music Bugs

Who is online

Users browsing this forum: No registered users and 1 guest