New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Csound sometimes segfaults on macOS and Linux with JackoInit and pyinit #1182
Comments
I used jack from homebrew but custom local build. I could reproduce this segfault but building with RelWithDebInfo, I couldn't find any usable information from running with lldb. I looked at the jacko opcode source but it is @gogins C++ code and I don't have mental space to debug (lots of pthread code there). I did see this when I loaded into lldb:
|
That lldb warning is nothing to do with Csound, but something with lldb and python, https://stackoverflow.com/questions/52320028/getting-remove-dead-weakref-error-for-lldb The jacko code does some unusual things like running Csound performKsmps from inside it and it is hard for us to debug it. |
I’ve been able to reproduce this by removing cat <<EOS > test.orc
sr = $(jack_samplerate)
ksmps = $(jack_bufsize)
0dbfs = 1
JackoInit "default", "csound"
EOS —but it usually requires running |
Sorry, that should’ve been “removing |
You should not assign this to me unless the problem can be reproduced on Linux, the only operating system that I currently use. |
I am sure it can be reproduced there. Nothing in particular to do with MacOS in this. |
Understood.
…On Thu, Oct 17, 2019, 15:39 vlazzarini ***@***.***> wrote:
I am sure it can be reproduced there. Nothing in particular to do with
MacOS in this.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#1182?email_source=notifications&email_token=ABQIGJIQ2F6NOCBDW2VSGF3QPC5QDA5CNFSM4IS45RK2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBRI5MA#issuecomment-543329968>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABQIGJKEBGIRYQD4IFS7YG3QPC5QDANCNFSM4IS45RKQ>
.
|
With this .orc file on Ubuntu
I can reproduce the occasional crash. When I use valgrind with the helgrind tool I see some errors that may be related to the crash. I will investigate further.
|
That was in the signal flow graph opcodes, but this may be the real problem, which only is printed when using the drd tool:
|
This crash appears to be happening because I did not anticipate the case of calling JackoInit without actually using any other Jacko opcodes. |
This is now fixed for me.
Tested with Jack and the Aeolus software organ, also with the test case here, and both of these also with Valgrind's helgrind thread safety and data race tool.
A mutex was unlocked a second time in |
To reproduce on macOS Mojave 10.14.6:
Install Homebrew by following the instructions at https://brew.sh.
Enter in Terminal:
Enter in Terminal:
It may require doing step 3 a few times, but Csound eventually segfaults:
To stop JACK, enter in Terminal:
The text was updated successfully, but these errors were encountered: