Bugzilla – Bug 1141762
LTO causes jack to crash
Last modified: 2020-05-04 12:50:46 UTC
since 20190913 qjackctl crashes with next output: Thread 1 "qjackctl" received signal SIGSEGV, Segmentation fault. 0x00007ffff7d94b57 in ?? () from /usr/lib64/libjack.so.0 (gdb) bt #0 0x00007ffff7d94b57 in ?? () from /usr/lib64/libjack.so.0 #1 0x00007ffff7d95475 in ?? () from /usr/lib64/libjack.so.0 #2 0x00007ffff7d9c617 in ?? () from /usr/lib64/libjack.so.0 #3 0x00007ffff7d9e5b5 in jack_client_open () from /usr/lib64/libjack.so.0 #4 0x00005555555cc658 in qjackctlMainForm::startJackClient(bool) () #5 0x00005555555a6193 in qjackctlMainForm::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) [clone .part.0] () #6 0x00007ffff6aba8a8 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5 #7 0x00007ffff6ac76eb in ?? () from /usr/lib64/libQt5Core.so.5 #8 0x00007ffff6abb255 in QObject::event(QEvent*) () from /usr/lib64/libQt5Core.so.5 #9 0x00007ffff7764c42 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5 #10 0x00007ffff776dec0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5 #11 0x00007ffff6a8f692 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5 #12 0x00007ffff6ae50ab in QTimerInfoList::activateTimers() () from /usr/lib64/libQt5Core.so.5 #13 0x00007ffff6ae5924 in ?? () from /usr/lib64/libQt5Core.so.5 #14 0x00007ffff57f9683 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #15 0x00007ffff57fb430 in ?? () from /usr/lib64/libglib-2.0.so.0 #16 0x00007ffff57fb46f in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #17 0x00007ffff6ae5cd1 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5 #18 0x00007ffff6a8e2eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5 #19 0x00007ffff6a95e62 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5 #20 0x0000555555594002 in main () temporary switched jack and jacklib0 to 1.9.12~git20190619T124043-159 from home:X0F
"20190713" of cource
I'm building the latest qjackctl package in OBS home:tiwai:branches:multimedia:apps/qjackctl repo. Could you try later whether it addresses the problem? If the problem persists with the latest package, it's more about jack package, not qjackctl...
(In reply to Takashi Iwai from comment #2) > I'm building the latest qjackctl package in OBS > home:tiwai:branches:multimedia:apps/qjackctl repo. Could you try later > whether it addresses the problem? > > If the problem persists with the latest package, it's more about jack > package, not qjackctl... it's still pending for rebuild but I think You are right, that problem is in (lib)jack indeed
Just confirming that issue seems to be in jackd or libjack itself starting in the 20190713 snapshot. I have similar issues with or without qjackctl. Jackd seems to start OK, but any client trying to connect segfaults. The partial gdb trace below shows from jackd server side. The first "Broken pipe" is from when "a2jmidid" trys to connect, the second two are from when "hydrogen" tries to connect. Let me know if can help isolate this. Thanks: -- GNU gdb (GDB; openSUSE Tumbleweed) 8.3 Copyright (C) 2019 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-suse-linux". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://bugs.opensuse.org/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /usr/bin/jackd... Missing separate debuginfo for /usr/bin/jackd Try: zypper install -C "debuginfo(build-id)=7f3790d8e12ae6a844e8479b26da8829e310fc80" (No debugging symbols found in /usr/bin/jackd) (gdb) run -dalsa -dhw:II,0 -r48000 -p1024 -n2 Starting program: /usr/bin/jackd -dalsa -dhw:II,0 -r48000 -p1024 -n2 Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2 Try: zypper install -C "debuginfo(build-id)=61d4b8695bd3838dec3433832d4842666349c2ad" Missing separate debuginfo for /lib64/libc.so.6 Try: zypper install -C "debuginfo(build-id)=4884b60caecd671b2c2954c6305c5412fa176c8e" Missing separate debuginfo for /usr/lib64/libjackserver.so.0 Try: zypper install -C "debuginfo(build-id)=1a857c78856c9baf883cb904ac796a372f5739d7" Missing separate debuginfo for /usr/lib64/libdbus-1.so.3 Try: zypper install -C "debuginfo(build-id)=120500bf3b32f4f10e3117fbff39c8d66d5377ba" Missing separate debuginfo for /usr/lib64/libstdc++.so.6 Try: zypper install -C "debuginfo(build-id)=0162286373b53f35cf73331bedf3be747a24212a" Missing separate debuginfo for /lib64/libgcc_s.so.1 Try: zypper install -C "debuginfo(build-id)=643b1326f3765b72a801cbaa357c8f37b0e8a79c" Missing separate debuginfo for /lib64/libpthread.so.0 Try: zypper install -C "debuginfo(build-id)=d1e9eeb7a9bdf363e38d29c3b0fc27b9960a70e0" [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Missing separate debuginfo for /usr/lib64/libopus.so.0 Try: zypper install -C "debuginfo(build-id)=9ca2b66b74badd5b5d90d8e177595ee765a73937" Missing separate debuginfo for /lib64/librt.so.1 Try: zypper install -C "debuginfo(build-id)=8f023124de2f61f08543a43e76b51d92a830300d" Missing separate debuginfo for /lib64/libdl.so.2 Try: zypper install -C "debuginfo(build-id)=07df0db2a2e4008e0613d8f87a3db6c932bccb93" Missing separate debuginfo for /lib64/libm.so.6 Try: zypper install -C "debuginfo(build-id)=d003f377a3941d09075c932b6041a88d8d55d00b" Missing separate debuginfo for /usr/lib64/libsystemd.so.0 Try: zypper install -C "debuginfo(build-id)=7694019aabca3d368ffbb56fdf508463863911ab" Missing separate debuginfo for /usr/lib64/liblzma.so.5 Try: zypper install -C "debuginfo(build-id)=0337cf89f7ad53c850481d718a93a5f0a9a2e2d2" Missing separate debuginfo for /usr/lib64/liblz4.so.1 Try: zypper install -C "debuginfo(build-id)=4473b17664a456ab9c269ad6b544673624f8be4b" Missing separate debuginfo for /usr/lib64/libgcrypt.so.20 Try: zypper install -C "debuginfo(build-id)=bf0f199e3b25cc04925e80d5f491e6c523ad5a39" Missing separate debuginfo for /usr/lib64/libgpg-error.so.0 Try: zypper install -C "debuginfo(build-id)=b3299d3b14046c0298d2a0ca5c6998862881f6c3" jackdmp 1.9.12 Copyright 2001-2005 Paul Davis and others. Copyright 2004-2016 Grame. Copyright 2016-2017 Filipe Coelho. jackdmp comes with ABSOLUTELY NO WARRANTY This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details Missing separate debuginfo for /usr/lib64/jack/jack_alsa.so Try: zypper install -C "debuginfo(build-id)=a9e661b1b6908c2638522b963620c765998bb3ea" Missing separate debuginfo for /usr/lib64/libasound.so.2 Try: zypper install -C "debuginfo(build-id)=ee6c62046dfb2cbeaf0827315143fb73b26b107b" Missing separate debuginfo for /usr/lib64/jack/jack_alsarawmidi.so Try: zypper install -C "debuginfo(build-id)=2cb77b2c38d568aa1b7d22aac6420dc6a1f44984" Missing separate debuginfo for /usr/lib64/jack/jack_dummy.so Try: zypper install -C "debuginfo(build-id)=20df79543f24a2779ac3e084619b41b30aa79294" Missing separate debuginfo for /usr/lib64/jack/jack_firewire.so Try: zypper install -C "debuginfo(build-id)=77d49b6e80389f57883cfdd40ecdfe55fb4b65a6" Missing separate debuginfo for /usr/lib64/libffado.so.2 Try: zypper install -C "debuginfo(build-id)=8487705eaf5c72b3f3e013f2d49168c265059c44" Missing separate debuginfo for /usr/lib64/libiec61883.so.0 Try: zypper install -C "debuginfo(build-id)=6d03921c97bc2c68f9e6d207011f73502dca6d2d" Missing separate debuginfo for /usr/lib64/libconfig++.so.11 Try: zypper install -C "debuginfo(build-id)=9dafac8b2d8d961f8c3006a09c0207ddb85a4ade" Missing separate debuginfo for /usr/lib64/libxml++-2.6.so.2 Try: zypper install -C "debuginfo(build-id)=822556a974e73e555cbc3126f6a97b462b7c7cb2" Missing separate debuginfo for /usr/lib64/libglibmm-2.4.so.1 Try: zypper install -C "debuginfo(build-id)=7618903947f7a9412bc7ac79fefa73d824d296e9" Missing separate debuginfo for /usr/lib64/librom1394.so.0 Try: zypper install -C "debuginfo(build-id)=896c2b5c038b3a00b77a03acadeae9ec59040dcb" Missing separate debuginfo for /usr/lib64/libraw1394.so.11 Try: zypper install -C "debuginfo(build-id)=6b110b4f7b2c32c024ea17c109bac88d8cc76352" Missing separate debuginfo for /usr/lib64/libxml2.so.2 Try: zypper install -C "debuginfo(build-id)=c4bcd882b8658cc4eae582b91829874db6bcecd5" Missing separate debuginfo for /usr/lib64/libsigc-2.0.so.0 Try: zypper install -C "debuginfo(build-id)=35a09d13556388aebf5225332e80eb150cb4e045" Missing separate debuginfo for /usr/lib64/libgobject-2.0.so.0 Try: zypper install -C "debuginfo(build-id)=f40e1ac61a0bc8f9771c6d8bddadbaa4ebe1aada" Missing separate debuginfo for /usr/lib64/libgmodule-2.0.so.0 Try: zypper install -C "debuginfo(build-id)=36eff47788baf481a97b112ba14e96de84859d75" Missing separate debuginfo for /usr/lib64/libglib-2.0.so.0 Try: zypper install -C "debuginfo(build-id)=8f7a40dc0feb819382e0da2f3457274028313600" Missing separate debuginfo for /lib64/libz.so.1 Try: zypper install -C "debuginfo(build-id)=55df9c8d2e5b2996d155fa882e077dde2c8804c9" Missing separate debuginfo for /usr/lib64/libffi.so.7 Try: zypper install -C "debuginfo(build-id)=0984e3e2665fadf299a3074d61009a531867aa52" Missing separate debuginfo for /usr/lib64/libpcre.so.1 Try: zypper install -C "debuginfo(build-id)=237707498df7a4bead4494f30da1c665146b1c19" [New Thread 0x7ffff6c97700 (LWP 1177)] no message buffer overruns [Thread 0x7ffff6c97700 (LWP 1177) exited] [New Thread 0x7ffff6c97700 (LWP 1178)] no message buffer overruns [Thread 0x7ffff6c97700 (LWP 1178) exited] Missing separate debuginfo for /usr/lib64/jack/jack_loopback.so Try: zypper install -C "debuginfo(build-id)=38a48c0078db64d7f90ba5fb1140cb9ef15d4db9" Missing separate debuginfo for /usr/lib64/jack/jack_net.so Try: zypper install -C "debuginfo(build-id)=e899aca2ae5b0072d20d32a14b2e018c1266a7d0" Missing separate debuginfo for /usr/lib64/jack/jack_netone.so Try: zypper install -C "debuginfo(build-id)=6e4f79bef15b6b8852ed4885564c280f5a3a8c71" Missing separate debuginfo for /usr/lib64/libsamplerate.so.0 Try: zypper install -C "debuginfo(build-id)=8e4fd6c6cbf13c0b4e9f365ed7d5ecbfd88ee937" Missing separate debuginfo for /usr/lib64/jack/jack_proxy.so Try: zypper install -C "debuginfo(build-id)=c7e6d82c5ff5d05ba518b191dec881eab6d054df" Missing separate debuginfo for /usr/lib64/jack/audioadapter.so Try: zypper install -C "debuginfo(build-id)=7e337c535930545b64ca703f8b1da7e0586af26d" Missing separate debuginfo for /usr/lib64/jack/inprocess.so Try: zypper install -C "debuginfo(build-id)=64a0fe66c8cff5455b814b457b819f5ef25792dc" [New Thread 0x7ffff6c97700 (LWP 1179)] no message buffer overruns [Thread 0x7ffff6c97700 (LWP 1179) exited] Missing separate debuginfo for /usr/lib64/jack/netadapter.so Try: zypper install -C "debuginfo(build-id)=3a55501663626c3e074ca86f2ea9eae8aa9ecafc" Missing separate debuginfo for /usr/lib64/jack/netmanager.so Try: zypper install -C "debuginfo(build-id)=23515f281ca398eccef9e1136d5f0dc74afed03a" Missing separate debuginfo for /usr/lib64/jack/profiler.so Try: zypper install -C "debuginfo(build-id)=be8ca3612f4ad0081e3c0eaf01ab12e322b80ee5" JACK server starting in realtime mode with priority 10 self-connect-mode is "Don't restrict self connect requests" [New Thread 0x7ffff759f700 (LWP 1180)] audio_reservation_init Acquire audio card Audio1 creating alsa driver ... hw:II,0|hw:II,0|1024|2|48000|0|0|nomon|swmeter|-|32bit configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods ALSA: final selected sample format for capture: 24bit little-endian in 3bytes format ALSA: use 2 periods for capture ALSA: final selected sample format for playback: 24bit little-endian in 3bytes format ALSA: use 2 periods for playback [New Thread 0x7ffff751e700 (LWP 1181)] [New Thread 0x7ffff749d700 (LWP 1182)] Cannot write socket fd = 14 err = Broken pipe CheckRes error Could not write notification ClientNotify fails name = Hydrogen notification = 2 val1 = 0 val2 = 0 Cannot write socket fd = 14 err = Broken pipe CheckRes error Could not write notification ClientNotify fails name = Hydrogen notification = 18 val1 = 0 val2 = 0 Cannot write socket fd = 14 err = Broken pipe CheckRes error Could not write notification ClientNotify fails name = Hydrogen notification = 18 val1 = 1 val2 = 0
OK, then maybe Dave has more clue. Reassigned to him.
(In reply to Carl Hughey from comment #4) > Just confirming that issue seems to be in jackd or libjack itself starting > in the 20190713 snapshot. I have similar issues with or without qjackctl. > Current Jack is plain release version 1.9.12 Can we start by installing libjack0, jack, qjackctl and hydrogen from: https://download.opensuse.org/repositories/home:/plater/Tumbleweed
> Current Jack is plain release version 1.9.12 > Can we start by installing libjack0, jack, qjackctl and hydrogen from: > https://download.opensuse.org/repositories/home:/plater/Tumbleweed Hi Dave, I added your repo and went ahead and updated the following packages to your version: - jack - libjack0 - libjack0-32bit - libjacknet0 - libjackserver0 - mpg123-jack - pulseaudio-module-jack - qjackctl - qjackqtl-lang - hydrogen - libhydrogen-core1 I'm not seeing a change in behavior. One note is that I normally have qjackctl use the DBus interface which will then load/unload the pulseaudio sinks as needed. However, I found that when the pulseaudio sinks are loaded it blows my entire audio system out of the water (no cards found until reboot). So I tried to comment out the lines in /etc/pulse/default.pa that load the sinks. This keeps my audio from blowing up, but all jack clients still segfault. It doesn't seem to matter if using jackd or through jackdbus, the server will start, but as soon as it any client connects (qjackctl, a2jmidid, hydrogen) the client segfaults. The server reports a broken pipe, but keeps running. Thinking it might be linkage to alsa or pulseaudio, I removed ~/.config/rncbc.org/QjackCtl.org and tried new config using other audio drivers. Even with the "dummy" driver, as soon as I start jackd/jackdbus from qjackctl, qjackctl segfaults. The server does continue to run as a daemon, but any connecting client also segfaults. FWIW, I use the computer for multiple things, but one is creating music with jack and Ardour. I know that Tumbleweed is probably not the stablest audio distribution, but I've had good luck (and stability) with this setup for many years and my hardware configuration hasn't changed. I don't know if this is somehow related to the recent LTO build changes (don't know if any of these packages have it enabled/disabled). Also, I didn't understand Konstantin's comment: temporary switched jack and jacklib0 to 1.9.12~git20190619T124043-159 from home:X0F Did that mean that fixed the issue for him? I went to https://build.opensuse.org/project/show/home:X0F, but don't even see those packages listed, but I may be missing something. Anyway, thanks for helping me with this. Carl
>>Also, I didn't understand Konstantin's comment: >>temporary switched jack and jacklib0 to 1.9.12~git20190619T124043-159 from home:X0F >>Did that mean that fixed the issue for him? I went to https://build.opensuse.org/project/show/home:X0F, but don't even see those packages listed, but I may be missing something. sorry, I was too hurry when reported this right repo is: home:X0F:branches:multimedia (https://download.opensuse.org/repositories/home:/X0F:/branches:/multimedia/openSUSE_Tumbleweed/)
gcc started building with Link time optimization on the date that this bug was created so as a start I've disabled lto in the build and libjack0-1.9.12-111.1 from home:plater is built without it. I can confirm that Tumbleweed jack from the latest snapshot crashes zynaddsubfx but when built without LTO it doesn't. I first tried simply changing libjack0 but I had to update jack as well. Please test and confirm, I'm going to submit jack to Factory anyway.
I can help you with debugging of the jack issue. Do we have an easy reproducer?
(In reply to Martin Liška from comment #10) > I can help you with debugging of the jack issue. Do we have an easy > reproducer? Very easy install zynaddsubfx from Tumbleweed, that's what I used to reproduce and run it from the console. If you haven't got jack installed, it will be pulled in. I'm not sure if this issue is fixed in their latest git, I had a look but couldn't see anything relating to it. I've sent sr#718138 to Factory with LTO disabled.
The fixed jack is in: https://download.opensuse.org/repositories/home:/plater/Tumbleweed
The error I get from zynaddsubfx is: Cannot lock down 86611866 byte memory area (Cannot allocate memory) Cannot lock down 86611866 byte memory area (Cannot allocate memory) Segmentation fault (core dumped) davepl@ArbutnothL:~/pulseview> Unknown error... terminate called after throwing an instance of 'Jack::JackTemporaryException' what(): Works fine when jack is built without LTO.
I can't reproduce it, I see following: marxin@marxinbox:/tmp> zynaddsubfx ZynAddSubFX - Copyright (c) 2002-2013 Nasca Octavian Paul and others Copyright (c) 2009-2019 Mark McCurry [active maintainer] This program is free software (GNU GPL v2 or later) and it comes with ABSOLUTELY NO WARRANTY. Try 'zynaddsubfx --help' for command-line options. Sample Rate = 44100 Sound Buffer Size = 256 samples Internal latency = 5.8 ms ADsynth Oscil.Size = 1024 samples lo server running on 15101 [INFO] Nio::start() Starting Audio: JACK Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jackdmp 1.9.12 Copyright 2001-2005 Paul Davis and others. Copyright 2004-2016 Grame. Copyright 2016-2017 Filipe Coelho. jackdmp comes with ABSOLUTELY NO WARRANTY This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details Cannot create RT messagebuffer thread: Operation not permitted (1) Retrying messagebuffer thread without RT scheduling Messagebuffer not realtime; consider enabling RT scheduling for user no message buffer overruns Cannot create RT messagebuffer thread: Operation not permitted (1) Retrying messagebuffer thread without RT scheduling Messagebuffer not realtime; consider enabling RT scheduling for user no message buffer overruns Cannot create RT messagebuffer thread: Operation not permitted (1) Retrying messagebuffer thread without RT scheduling Messagebuffer not realtime; consider enabling RT scheduling for user no message buffer overruns JACK server starting in realtime mode with priority 10 self-connect-mode is "Don't restrict self connect requests" Cannot lock down 86611866 byte memory area (Cannot allocate memory) audio_reservation_init Acquire audio card Audio0 creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to capture-only mode JackTemporaryException : now quits... Released audio card Audio0 audio_reservation_finish Cannot initialize driver JackServer::Open failed with -1 Failed to open server Cannot connect to server socket err = No such file or directory Cannot connect to server request channel Cannot connect to server socket err = No such file or directory Cannot connect to server request channel Cannot connect to server socket err = No such file or directory Cannot connect to server request channel Cannot connect to server socket err = No such file or directory Cannot connect to server request channel Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jack server is not running or cannot be started JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock Error, failed to open jack client on server: status 17 Error, NULL jackClient through Start() ERROR: The default audio output failed to open! Starting MIDI: ALSA MIDI Started [INFO] exec-after-init [INFO] startup OSC [INFO] UI calbacks [INFO] OSC replay midi list updating... [INFO] auto_save setup [INFO] NSM Stuff [INFO] LASH Stuff [INFO] Main Loop...
(In reply to Dave Plater from comment #12) > The fixed jack is in: > https://download.opensuse.org/repositories/home:/plater/Tumbleweed Well, I would like to understand the issue. LTO disablement is only papering over the issue..
(In reply to Martin Liška from comment #15) > (In reply to Dave Plater from comment #12) > > The fixed jack is in: > > https://download.opensuse.org/repositories/home:/plater/Tumbleweed > > Well, I would like to understand the issue. LTO disablement is only papering > over the issue.. I did a zypper dup prior to testing jack via zynaddsubfx maybe that's why you get a different result. The binaries involved are jack, libjack0, libjacknet0 and libjackserver0
(In reply to Dave Plater from comment #16) > (In reply to Martin Liška from comment #15) > > (In reply to Dave Plater from comment #12) > > > The fixed jack is in: > > > https://download.opensuse.org/repositories/home:/plater/Tumbleweed > > > > Well, I would like to understand the issue. LTO disablement is only papering > > over the issue.. > > I did a zypper dup prior to testing jack via zynaddsubfx maybe that's why > you get a different result. > The binaries involved are jack, libjack0, libjacknet0 and libjackserver0 I did so, but I can't see the segmentation fault :/
I can reproduce this by "zypper in -f jack libjack*" after disabling my home repo, this installs the debug packages as well (I've removed the normal start up text and only included the different text): [New Thread 0x7ffff4832700 (LWP 14125)] Cannot lock down 86611866 byte memory area (Cannot allocate memory) Cannot lock down 86611866 byte memory area (Cannot allocate memory) Thread 1 "zynaddsubfx" received signal SIGSEGV, Segmentation fault. 0x00007ffff7b09b57 in Jack::JackLinuxFutex::BuildName(char const*, char const*, char*, int) [clone .constprop.0] () from /usr/lib64/libjack.so.0 (gdb) bt #0 0x00007ffff7b09b57 in Jack::JackLinuxFutex::BuildName(char const*, char const*, char*, int) [clone .constprop.0] () from /usr/lib64/libjack.so.0 #1 0x00007ffff7b0a475 in Jack::JackLinuxFutex::Connect(char const*, char const*) () from /usr/lib64/libjack.so.0 #2 0x00007ffff7b11617 in Jack::JackLibClient::Open(char const*, char const*, int, JackOptions, JackStatus*) () from /usr/lib64/libjack.so.0 #3 0x00007ffff7b135b5 in jack_client_open () from /usr/lib64/libjack.so.0 #4 0x0000555555669a43 in zyn::JackEngine::connectServer(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) () #5 0x0000555555669cd4 in zyn::JackEngine::connectJack() () #6 0x0000555555664510 in zyn::JackEngine::openAudio() () #7 0x0000555555667ee4 in zyn::EngineMgr::start() () #8 0x00005555555e1791 in main () (gdb) Does this help you to pinpoint the problem? The jack in my home repo won't crash.
(In reply to Dave Plater from comment #18) > I can reproduce this by "zypper in -f jack libjack*" after disabling my home > repo, this installs the debug packages as well (I've removed the normal > start up text and only included the different text): I've just done the same, I don't have any extra repository, but I can't reproduce that. Let me test it in a KVM.. > > [New Thread 0x7ffff4832700 (LWP 14125)] > Cannot lock down 86611866 byte memory area (Cannot allocate memory) > Cannot lock down 86611866 byte memory area (Cannot allocate memory) > > Thread 1 "zynaddsubfx" received signal SIGSEGV, Segmentation fault. > 0x00007ffff7b09b57 in Jack::JackLinuxFutex::BuildName(char const*, char > const*, char*, int) [clone .constprop.0] () from /usr/lib64/libjack.so.0 > (gdb) bt > #0 0x00007ffff7b09b57 in Jack::JackLinuxFutex::BuildName(char const*, char > const*, char*, int) [clone .constprop.0] () from /usr/lib64/libjack.so.0 > #1 0x00007ffff7b0a475 in Jack::JackLinuxFutex::Connect(char const*, char > const*) () from /usr/lib64/libjack.so.0 > #2 0x00007ffff7b11617 in Jack::JackLibClient::Open(char const*, char > const*, int, JackOptions, JackStatus*) () from /usr/lib64/libjack.so.0 > #3 0x00007ffff7b135b5 in jack_client_open () from /usr/lib64/libjack.so.0 > #4 0x0000555555669a43 in > zyn::JackEngine::connectServer(std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> >) () > #5 0x0000555555669cd4 in zyn::JackEngine::connectJack() () > #6 0x0000555555664510 in zyn::JackEngine::openAudio() () > #7 0x0000555555667ee4 in zyn::EngineMgr::start() () > #8 0x00005555555e1791 in main () > (gdb) > > Does this help you to pinpoint the problem? > The jack in my home repo won't crash.
The hardware I use for Tumbleweed is mid 2018 HP pavilion with an i3 and 4G ram.
(In reply to Martin Liška from comment #14) > I can't reproduce it, I see following: > > marxin@marxinbox:/tmp> zynaddsubfx > > ZynAddSubFX - Copyright (c) 2002-2013 Nasca Octavian Paul and others > Copyright (c) 2009-2019 Mark McCurry [active maintainer] > This program is free software (GNU GPL v2 or later) and > it comes with ABSOLUTELY NO WARRANTY. > > Try 'zynaddsubfx --help' for command-line options. > > Sample Rate = 44100 > Sound Buffer Size = 256 samples > Internal latency = 5.8 ms > ADsynth Oscil.Size = 1024 samples > lo server running on 15101 > [INFO] Nio::start() > Starting Audio: JACK > Cannot connect to server socket err = No such file or directory > Cannot connect to server request channel > jackdmp 1.9.12 > Copyright 2001-2005 Paul Davis and others. > Copyright 2004-2016 Grame. > Copyright 2016-2017 Filipe Coelho. > jackdmp comes with ABSOLUTELY NO WARRANTY > This is free software, and you are welcome to redistribute it > under certain conditions; see the file COPYING for details > Cannot create RT messagebuffer thread: Operation not permitted (1) > Retrying messagebuffer thread without RT scheduling > Messagebuffer not realtime; consider enabling RT scheduling for user > no message buffer overruns > Cannot create RT messagebuffer thread: Operation not permitted (1) > Retrying messagebuffer thread without RT scheduling > Messagebuffer not realtime; consider enabling RT scheduling for user > no message buffer overruns > Cannot create RT messagebuffer thread: Operation not permitted (1) > Retrying messagebuffer thread without RT scheduling > Messagebuffer not realtime; consider enabling RT scheduling for user > no message buffer overruns > JACK server starting in realtime mode with priority 10 > self-connect-mode is "Don't restrict self connect requests" > Cannot lock down 86611866 byte memory area (Cannot allocate memory) > audio_reservation_init > Acquire audio card Audio0 > creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit At this point something goes wrong on your machine and jack quits, this is what normally happens: configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods ALSA: final selected sample format for playback: 32bit integer little-endian ALSA: use 2 periods for playback Cannot use real-time scheduling (RR/10)(1: Operation not permitted) AcquireSelfRealTime error Then at this point jack crashes. @tiwai Can you shed some light on what's going wrong here with Martain's alsa? > ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to > capture-only mode > JackTemporaryException : now quits... > Released audio card Audio0 > audio_reservation_finish > Cannot initialize driver > JackServer::Open failed with -1 > Failed to open server > Cannot connect to server socket err = No such file or directory > Cannot connect to server request channel > Cannot connect to server socket err = No such file or directory > Cannot connect to server request channel > Cannot connect to server socket err = No such file or directory > Cannot connect to server request channel > Cannot connect to server socket err = No such file or directory > Cannot connect to server request channel > Cannot connect to server socket err = No such file or directory > Cannot connect to server request channel > jack server is not running or cannot be started > JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping > unlock > JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping > unlock > Error, failed to open jack client on server: status 17 > Error, NULL jackClient through Start() > ERROR: The default audio output failed to open! > Starting MIDI: ALSA > MIDI Started > [INFO] exec-after-init > [INFO] startup OSC > [INFO] UI calbacks > [INFO] OSC replay > midi list updating... > [INFO] auto_save setup > [INFO] NSM Stuff > [INFO] LASH Stuff > [INFO] Main Loop...
Maybe the device is already being used by some others (like PulseAudio)? If you're running PulseAudio, start the program with pasuspender to make sure PA leaves the devices.
just run jack with dummy driver: jackd -d dummy then any jack_client will crash: gdb jack_simple_client GNU gdb (GDB; openSUSE Tumbleweed) 8.3 Copyright (C) 2019 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-suse-linux". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://bugs.opensuse.org/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from jack_simple_client... Reading symbols from /usr/lib/debug/usr/bin/jack_simple_client-1.9.12-3.4.x86_64.debug... (gdb) run Starting program: /usr/bin/jack_simple_client Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2 Try: zypper install -C "debuginfo(build-id)=61d4b8695bd3838dec3433832d4842666349c2ad" Missing separate debuginfo for /lib64/libc.so.6 Try: zypper install -C "debuginfo(build-id)=4884b60caecd671b2c2954c6305c5412fa176c8e" Missing separate debuginfo for /lib64/libm.so.6 Try: zypper install -C "debuginfo(build-id)=d003f377a3941d09075c932b6041a88d8d55d00b" Missing separate debuginfo for /lib64/libpthread.so.0 Try: zypper install -C "debuginfo(build-id)=d1e9eeb7a9bdf363e38d29c3b0fc27b9960a70e0" [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Missing separate debuginfo for /lib64/librt.so.1 Try: zypper install -C "debuginfo(build-id)=8f023124de2f61f08543a43e76b51d92a830300d" Missing separate debuginfo for /usr/lib64/libstdc++.so.6 Try: zypper install -C "debuginfo(build-id)=0b3fc3b7af40d5569333ef4d85e0e2a65344e532" Missing separate debuginfo for /lib64/libgcc_s.so.1 Try: zypper install -C "debuginfo(build-id)=66c85f9a5c79259a72874f3459feb2329e88e77c" [New Thread 0x7ffff7a16700 (LWP 26464)] [New Thread 0x7ffff7995700 (LWP 26465)] [New Thread 0x7ffff7914700 (LWP 26466)] Thread 4 "jack_simple_cli" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7ffff7914700 (LWP 26466)] 0x00007ffff7da653e in Jack::JackClient::Execute() () from /usr/lib64/libjack.so.0 (gdb) bt #0 0x00007ffff7da653e in Jack::JackClient::Execute() () from /usr/lib64/libjack.so.0 #1 0x00007ffff7d95e26 in Jack::JackPosixThread::ThreadHandler(void*) () from /usr/lib64/libjack.so.0 #2 0x00007ffff7c2afaa in start_thread () from /lib64/libpthread.so.0 #3 0x00007ffff7ebb73f in clone () from /lib64/libc.so.6 (gdb)
And I agree with Martin, simple playing with LTO is not "our way". Is there the objections to providing updated version from git?
Sorry so long to get back. Just got back from work and checked emails. Thanks Konstantin for details on repo and agree that can troubleshoot with "dummy" driver to decouple any audio system linkage. Thanks Dave for non-LTO builds. Can confirm the ".114" builds fixed the issue for me. Sounds like would like to narrow down further and make work with LTO enabled. Let me know if have other packages would like me to test. Thanks to everyone for quickly isolating this.
(In reply to Konstantin Voinov from comment #24) > And I agree with Martin, simple playing with LTO is not "our way". > Is there the objections to providing updated version from git? Because jack is used by many packages I prefer not to use git especially the development branch used by XOL. If someone can locate the commit that fixes the LTO issue I will use a patch otherwise jack works fine when built without LTO and I'm sure that the space saving is minimal. This isn't papering over an error it is building jack in a way that it works. I don't think that using git is warranted.
(In reply to Konstantin Voinov from comment #23) > just run jack with dummy driver: > > jackd -d dummy > > then any jack_client will crash: > > I can't get a crash from plain "jackd -d dummy" only in fact I can't reproduce your crash using "jackd -d alsa" either. Can you please show me the output of "zypper se -si jack"
(In reply to Konstantin Voinov from comment #23) > just run jack with dummy driver: > > jackd -d dummy > > then any jack_client will crash: > > Great, I can reproduce it now and I'm going to debug that..
Ok, so the client segfaults here: Thread 1 "jack_simple_cli" received signal SIGSEGV, Segmentation fault. Jack::JackLinuxFutex::BuildName (this=this@entry=0xfffffffdd03f4218, client_name=client_name@entry=0x7fffffffd7b0 "jack_simple_client", server_name=server_name@entry=0x423f10 "default", res=res@entry=0xfffffffdd03f4218 <error: Cannot access memory at address 0xfffffffdd03f4218>, size=256) at ../linux/JackLinuxFutex.cpp:46 46 if (fPromiscuous) { (gdb) bt #0 Jack::JackLinuxFutex::BuildName (this=this@entry=0xfffffffdd03f4218, client_name=client_name@entry=0x7fffffffd7b0 "jack_simple_client", server_name=server_name@entry=0x423f10 "default", res=res@entry=0xfffffffdd03f4218 <error: Cannot access memory at address 0xfffffffdd03f4218>, size=256) at ../linux/JackLinuxFutex.cpp:46 #1 0x00007ffff7da1475 in Jack::JackLinuxFutex::Connect (this=0xfffffffdd03f4218, name=name@entry=0x7fffffffd7b0 "jack_simple_client", server_name=server_name@entry=0x423f10 "default") at ../linux/JackLinuxFutex.cpp:174 #2 0x00007ffff7da8617 in Jack::JackLibClient::Open (this=0x423de0, server_name=<optimized out>, name=<optimized out>, uuid=<optimized out>, options=<optimized out>, status=<optimized out>) at ../common/JackLibClient.cpp:196 #3 0x00007ffff7daa5b5 in jack_client_open_aux (ap=0x7fffffffd870, status=0x7fffffffd97c, options=JackNullOption, client_name=0x7fffffffe202 "jack_simple_client") at ../common/JackLibAPI.cpp:155 #4 jack_client_open (ext_client_name=ext_client_name@entry=0x7fffffffe202 "jack_simple_client", options=options@entry=JackNullOption, status=status@entry=0x7fffffffd97c) at ../common/JackLibAPI.cpp:176 #5 0x0000000000401224 in main (argc=<optimized out>, argv=<optimized out>) at ../example-clients/simple_client.c:118 which is a string manipulation function. I bet it's related to warnings seen in the package: -Wformat-truncation= I would recommend fixing all these warnings first.
Well, the list of warnings is pretty long for the project: osc bl openSUSE_Tumbleweed x86_64 | grep 'warning:' | grep -v Wdeprecated-declarations [ 50s] /usr/include/bits/string_fortified.h:106:10: warning: ‘__builtin_strncpy’ output may be truncated copying 256 bytes from a string of length 256 [-Wstringop-truncation] [ 50s] /usr/include/bits/string_fortified.h:106:10: warning: ‘__builtin_strncpy’ output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation] [ 50s] ../common/JackActivationCount.cpp:35:27: warning: taking address of packed member of ‘Jack::JackActivationCount’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 51s] ../common/JackTools.cpp:176:54: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size between 0 and 511 [-Wformat-truncation=] [ 51s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 51s] ../common/JackPort.cpp:257:59: warning: ‘__builtin_snprintf’ output may be truncated before the last format character [-Wformat-truncation=] [ 51s] ../common/JackPort.cpp:262:59: warning: ‘__builtin_snprintf’ output may be truncated before the last format character [-Wformat-truncation=] [ 51s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 52s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 52s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 52s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 256 equals destination size [-Wstringop-truncation] [ 52s] ../posix/JackSocket.cpp:40:35: warning: ‘%s’ directive output may be truncated writing up to 256 bytes into a region of size 102 [-Wformat-truncation=] [ 52s] ../posix/JackSocket.cpp:38:35: warning: ‘%s’ directive output may be truncated writing up to 256 bytes into a region of size 102 [-Wformat-truncation=] [ 52s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 107 bytes from a string of length 255 [-Wstringop-truncation] [ 53s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 53s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 53s] ../common/JackDebugClient.cpp:94:60: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 239 [-Wformat-truncation=] [ 53s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] [ 53s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 53s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 53s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 257 equals destination size [-Wstringop-truncation] [ 53s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 53s] ../common/JackConnectionManager.h:103:20: warning: taking address of packed member of ‘Jack::JackFixedArray<1024>’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 53s] ../common/JackConnectionManager.h:186:26: warning: taking address of packed member of ‘Jack::JackFixedMatrix<64>’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 54s] ../common/JackFrameTimer.cpp:147:60: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackTimer’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 54s] ../common/JackAtomicState.h:115:23: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackTimer’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 54s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 54s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 55s] ../posix/JackNetUnixSocket.cpp:114:13: warning: unused variable ‘tos’ [-Wunused-variable] [ 55s] ../linux/JackLinuxFutex.cpp:141:14: warning: ignoring return value of ‘int ftruncate(int, __off_t)’, declared with attribute warn_unused_result [-Wunused-result] [ 55s] ../common/JackGraphManager.cpp:894:55: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackConnectionManager’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 55s] ../common/JackGraphManager.cpp:902:55: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackConnectionManager’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 55s] ../common/JackAtomicState.h:115:23: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackConnectionManager’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 55s] ../posix/JackSocket.cpp:40:35: warning: ‘%s’ directive output may be truncated writing up to 256 bytes into a region of size 102 [-Wformat-truncation=] [ 55s] ../posix/JackSocket.cpp:38:35: warning: ‘%s’ directive output may be truncated writing up to 256 bytes into a region of size 102 [-Wformat-truncation=] [ 55s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 107 bytes from a string of length 255 [-Wstringop-truncation] [ 55s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 56s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 56s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 56s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 57s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 35 bytes from a string of length 35 [-Wstringop-truncation] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 35 bytes from a string of length 35 [-Wstringop-truncation] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation] [ 57s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] [ 57s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 57s] ../common/JackFrameTimer.cpp:147:60: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackTimer’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 57s] ../common/JackAtomicState.h:115:23: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackTimer’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 57s] ../common/JackPort.cpp:257:59: warning: ‘__builtin_snprintf’ output may be truncated before the last format character [-Wformat-truncation=] [ 57s] ../common/JackPort.cpp:262:59: warning: ‘__builtin_snprintf’ output may be truncated before the last format character [-Wformat-truncation=] [ 57s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 58s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 58s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 257 equals destination size [-Wstringop-truncation] [ 58s] ../common/JackGraphManager.cpp:894:55: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackConnectionManager’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 58s] ../common/JackGraphManager.cpp:902:55: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackConnectionManager’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 58s] ../common/JackAtomicState.h:115:23: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘class Jack::JackConnectionManager’; use copy-assignment or copy-initialization instead [-Wclass-memaccess] [ 58s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 59s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 59s] ../common/JackActivationCount.cpp:35:27: warning: taking address of packed member of ‘Jack::JackActivationCount’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 59s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 59s] ../common/JackInternalClient.cpp:97:36: warning: taking address of packed member of ‘Jack::JackClientControl’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 59s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 257 equals destination size [-Wstringop-truncation] [ 59s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 60s] ../common/JackExternalClient.cpp:67:29: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 60s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 60s] ../common/JackConnectionManager.h:103:20: warning: taking address of packed member of ‘Jack::JackFixedArray<1024>’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 60s] ../common/JackConnectionManager.h:186:26: warning: taking address of packed member of ‘Jack::JackFixedMatrix<64>’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 60s] ../linux/JackLinuxFutex.cpp:141:14: warning: ignoring return value of ‘int ftruncate(int, __off_t)’, declared with attribute warn_unused_result [-Wunused-result] [ 61s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 61s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 256 equals destination size [-Wstringop-truncation] [ 61s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 61s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 61s] ../common/JackDebugClient.cpp:94:60: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 239 [-Wformat-truncation=] [ 62s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 62s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 511 bytes from a string of length 1023 [-Wstringop-truncation] [ 62s] ../common/JackNetTool.cpp:887:36: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] [ 62s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 62s] ../common/JackControlAPI.cpp:1073:29: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 62s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 63s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 63s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 63s] ../common/JackTools.cpp:176:54: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size between 0 and 511 [-Wformat-truncation=] [ 63s] /usr/include/bits/string_fortified.h:106:10: warning: ‘__builtin_strncpy’ output may be truncated copying 256 bytes from a string of length 256 [-Wstringop-truncation] [ 63s] /usr/include/bits/string_fortified.h:106:10: warning: ‘__builtin_strncpy’ output may be truncated copying 255 bytes from a string of length 255 [-Wstringop-truncation] [ 64s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 64s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 64s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 64s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 64s] ../posix/JackNetUnixSocket.cpp:114:13: warning: unused variable ‘tos’ [-Wunused-variable] [ 66s] ../common/JackNetTool.cpp:887:36: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] [ 66s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 64 [-Wstringop-truncation] [ 66s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 66s] ../common/JackNetAPI.cpp:541:59: warning: ‘_’ directive output may be truncated writing 1 byte into a region of size between 0 and 64 [-Wformat-truncation=] [ 66s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 66s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 127 [-Wstringop-truncation] [ 67s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 67s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 67s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 68s] ../common/netjack_packet.c:1385:17: warning: ignoring return value of ‘opus_custom_decode_float’, declared with attribute warn_unused_result [-Wunused-result] [ 68s] ../linux/alsa/hdsp.c:42:18: warning: ‘hdsp_audio_stream_index’ defined but not used [-Wunused-const-variable=] [ 68s] ../linux/alsa/alsa_seqmidi.c:859:7: warning: variable ‘err’ set but not used [-Wunused-but-set-variable] [ 69s] ../linux/alsa/alsa_rawmidi.c:821:2: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:370:2: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:371:2: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:372:2: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:347:3: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:353:3: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:354:3: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:747:4: warning: ignoring return value of ‘read’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:881:4: warning: ignoring return value of ‘read’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../linux/alsa/alsa_rawmidi.c:470:36: warning: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size between 0 and 63 [-Wformat-truncation=] [ 69s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 69s] ../common/JackNetOneDriver.cpp:990:22: warning: variable ‘resample_factor_up’ set but not used [-Wunused-but-set-variable] [ 69s] ../common/JackNetOneDriver.cpp:806:41: warning: ignoring return value of ‘int opus_custom_decode_float(OpusCustomDecoder*, const unsigned char*, int, float*, int)’, declared with attribute warn_unused_result [-Wunused-result] [ 69s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 69s] ../linux/alsa/alsa_driver.c:613:6: warning: variable ‘err’ set but not used [-Wunused-but-set-variable] [ 69s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 69s] /usr/include/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying 64 bytes from a string of length 127 [-Wstringop-truncation] [ 69s] ../linux/alsarawmidi/JackALSARawMidiPort.cpp:111:29: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 69s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 69s] ../linux/alsa/JackAlsaDriver.cpp:596:68: warning: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size between 0 and 127 [-Wformat-truncation=] [ 70s] ../example-clients/lsp.c:156:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] [ 70s] ../example-clients/lsp.c:248:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] [ 70s] ../example-clients/midiseq.c:85:17: warning: variable ‘nframes’ set but not used [-Wunused-but-set-variable] [ 70s] ../example-clients/metro.c:138:6: warning: variable ‘verbose’ set but not used [-Wunused-but-set-variable] [ 70s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 70s] ../linux/alsarawmidi/JackALSARawMidiDriver.cpp:411:33: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 70s] ../linux/alsarawmidi/JackALSARawMidiDriver.cpp:421:33: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 70s] ../linux/alsarawmidi/JackALSARawMidiDriver.cpp:433:33: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 70s] ../linux/alsarawmidi/JackALSARawMidiDriver.cpp:444:33: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 70s] ../linux/alsarawmidi/JackALSARawMidiDriver.cpp:507:29: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 70s] ../linux/alsarawmidi/JackALSARawMidiDriver.cpp:515:33: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 70s] ../linux/alsarawmidi/JackALSARawMidiDriver.cpp:524:29: warning: catching polymorphic type ‘class std::exception’ by value [-Wcatch-value=] [ 70s] ../example-clients/showtime.c:39:50: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 4 has type ‘jack_time_t’ {aka ‘long unsigned int’} [-Wformat=] [ 71s] ../common/JackTransportEngine.h:176:46: warning: taking address of packed member of ‘Jack::JackTransportEngine’ may result in an unaligned pointer value [-Waddress-of-packed-member] [ 71s] ../linux/firewire/JackFFADODriver.cpp:534:54: warning: ‘%s’ directive output may be truncated writing up to 319 bytes into a region of size 307 [-Wformat-truncation=] [ 71s] ../linux/firewire/JackFFADODriver.cpp:510:54: warning: ‘%s’ directive output may be truncated writing up to 319 bytes into a region of size 307 [-Wformat-truncation=] [ 71s] ../linux/firewire/JackFFADODriver.cpp:606:54: warning: ‘%s’ directive output may be truncated writing up to 319 bytes into a region of size 307 [-Wformat-truncation=] [ 71s] ../linux/firewire/JackFFADODriver.cpp:579:54: warning: ‘%s’ directive output may be truncated writing up to 319 bytes into a region of size 307 [-Wformat-truncation=] [ 72s] ../example-clients/netsource.c:221:13: warning: implicit declaration of function ‘opus_custom_encoder_init’; did you mean ‘opus_custom_decoder_init’? [-Wimplicit-function-declaration] [ 72s] ../common/netjack_packet.c:1385:17: warning: ignoring return value of ‘opus_custom_decode_float’, declared with attribute warn_unused_result [-Wunused-result] [ 72s] ../tests/cpu.c:81:31: warning: variable ‘in’ set but not used [-Wunused-but-set-variable] [ 73s] ../tests/test.cpp:498:13: warning: unused variable ‘res1’ [-Wunused-variable] [ 74s] ../dbus/controller_iface_patchbay.c:1805:65: warning: passing argument 2 of ‘jack_set_port_rename_callback’ from incompatible pointer type [-Wincompatible-pointer-types]
>>Because jack is used by many packages I prefer not to use git especially the development branch used by XOL. If someone can locate the commit that fixes the LTO issue I will use a patch otherwise jack works fine when built without LTO and I'm sure that the space saving is minimal. This isn't papering over an error it is building jack in a way that it works. I don't think that using git is warranted. 1.9.12 is quite old. What is TW's policy for providing not-stable versions of apps and libs, should them be tested for a while by members or whatever? kxstudio uses 1.9.12+git20190321 for example
(In reply to Konstantin Voinov from comment #31) > >>Because jack is used by many packages I prefer not to use git especially the development branch used by XOL. If someone can locate the commit that fixes the LTO issue I will use a patch otherwise jack works fine when built without LTO and I'm sure that the space saving is minimal. > This isn't papering over an error it is building jack in a way that it works. > I don't think that using git is warranted. > > > 1.9.12 is quite old. What is TW's policy for providing not-stable versions > of apps and libs, should them be tested for a while by members or whatever? > > kxstudio uses 1.9.12+git20190321 for example There is no pressing reason to use git, a new release is due soon. Is there a particular feature that you want?
If anyone wishes to test git they can install from: https://download.opensuse.org/repositories/home:/plater:/jack/Tumbleweed
*** Bug 1142877 has been marked as a duplicate of this bug. ***
I'm not sure where the idea that this bug is fixed in jack git, it crashes in the same way when built with LTO
Today updated 32-bit version of Tubmbleweed in my virtual environment (VirtualBox). Can confirm that Jackd and QJackCtl are crashing.
Installed source RPM of jack, added '-fno-lto' to the compiler flags: export CFLAGS="%{optflags} -fno-lto -ggdb -fPIC" Then rebuild with rpmbuild and installed RPM packages. Jack started well and works just fine.
(In reply to Vladimir Sadovnikov from comment #37) > Installed source RPM of jack, added '-fno-lto' to the compiler flags: > > export CFLAGS="%{optflags} -fno-lto -ggdb -fPIC" > > Then rebuild with rpmbuild and installed RPM packages. > Jack started well and works just fine. fixed 32 bit jack is available in my home repo and multimedia:libs until it reaches Factory
The macro disabling LTO has been silently removed from the spec file a while ago and no one has experienced any bad effects so I'm closing this as fixed.
This is an autogenerated message for OBS integration: This bug (1141762) was mentioned in https://build.opensuse.org/request/show/800045 Factory / jack