monome / norns

norns is many sound instruments.
http://monome.org
GNU General Public License v3.0
629 stars 145 forks source link

scsynth / jack sometimes fail to start #806

Closed markwheeler closed 4 years ago

markwheeler commented 5 years ago

Seeing this sometimes after using the ;restart command in the maiden REPL. Once this error has happened once I'm unable to get things running again using ;restart or stop.sh / start.sh (same error every time). Have to use menu Reset or Sleep norns and boot it up again to get things running.

Not sure if related to #799 ?

Booting server 'localhost' on address 127.0.0.1:57110.
Found 0 LADSPA plugins
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
terminate called without an active exception
could not initialize audio.
Server 'localhost' exited with exit code 0.
simonvanderveldt commented 5 years ago

Is there a way to reproduce this? Probably need some logs from the norns-jack unit as well as the output from systemctl status

markwheeler commented 5 years ago

I'm seeing it intermittently while working on an engine and restarting scsynth a lot. Which logs should I grab next time it happens? Sorry, not really familiar with jack.

simonvanderveldt commented 5 years ago

If it happens and you can connect/are connected via serial or SSH the output of systemctl status and journalctl -u norns-jack would be helpful.

markwheeler commented 5 years ago

OK here we go: systemctl status: https://pastebin.com/GkqqAzWm norns-jack: https://pastebin.com/dmMvN1wk

simonvanderveldt commented 5 years ago

Hmm, that's an interesting one. Can you do one more log output? journalctl -u norns-jack -u norns-sclang -u norns-crone

And show the output of ls -l /dev/shm/jack*?

markwheeler commented 5 years ago

journalctl pt1: https://pastebin.com/Q8HbRwN9 pt2 (it's long, lots of my SC stuff in there): https://pastebin.com/HttxnXmN

Getting No such file or directory for the last one.

tehn commented 5 years ago

SYSTEM > RESET performs systemctl restart norns-jack

whereas maiden's ;restart performs systemctl restart norns-sclang (is this true @ngwese ?)

okyeron commented 5 years ago

I also see this on one of my two norns-RasPi's semi-regularly.

FWIW I don't think it's the same problem I've been having with #799 - This JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock error happens in the same circumstances mark mentioned - after a number of starts/stops, but not on reboot.

coreyker commented 5 years ago

I get this error too (on a pi-based norns); journalctl ouptut:

Aug 04 17:41:10 norns systemd[1]: Starting norns-jack.service...
Aug 04 17:41:10 norns jack_wait[319]: Cannot connect to server socket err = No such file or directory
Aug 04 17:41:10 norns jack_wait[319]: Cannot connect to server request channel
Aug 04 17:41:10 norns jack_wait[319]: jack server is not running or cannot be started
catfact commented 4 years ago

any further progress on this one? repro case?

i'm familiar with this error message from JACK on other systems, it occurs whenever the requested audio device is unavailable. i can force it on a DIY norns by disconnecting i2s lines and other nasty things, but haven't able to repro the exact issue (where audio system is borked until reboot.)

e.g., this doesn't prove anything, but i can't get it to happen with many many cycles of ;restart in maiden SC repl.

weirdly though, i do see the error message in journalctl -u norns-jack.service, on every boot or RESET (apparently after every start of norns-jack.service.) it is followed immediately by a successful JACK startup, apparently with no ill effects... very strange

e.g.

Mar 06 16:29:26 norns systemd[1]: Starting norns-jack.service...
Mar 06 16:29:26 norns jack_wait[317]: Cannot connect to server socket err = No such file or directory
Mar 06 16:29:26 norns jack_wait[317]: Cannot connect to server request channel
Mar 06 16:29:26 norns jack_wait[317]: jack server is not running or cannot be started
Mar 06 16:29:26 norns jack_wait[317]: JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
Mar 06 16:29:26 norns jackd[316]: jackdmp 1.9.12
Mar 06 16:29:26 norns jackd[316]: Copyright 2001-2005 Paul Davis and others.
Mar 06 16:29:26 norns jackd[316]: Copyright 2004-2016 Grame.
Mar 06 16:29:26 norns jackd[316]: Copyright 2016-2017 Filipe Coelho.
Mar 06 16:29:26 norns jackd[316]: jackdmp comes with ABSOLUTELY NO WARRANTY
Mar 06 16:29:26 norns jackd[316]: This is free software, and you are welcome to redistribute it
Mar 06 16:29:26 norns jackd[316]: under certain conditions; see the file COPYING for details
Mar 06 16:29:26 norns jackd[316]: JACK server starting in realtime mode with priority 95
Mar 06 16:29:26 norns jackd[316]: self-connect-mode is "Don't restrict self connect requests"
Mar 06 16:29:27 norns jackd[316]: creating alsa driver ... hw:0|hw:0|128|3|48000|0|0|nomon|swmeter|soft-mode|16bit
Mar 06 16:29:27 norns jackd[316]: configuring for 48000Hz, period = 128 frames (2.7 ms), buffer = 3 periods
Mar 06 16:29:27 norns jackd[316]: ALSA: final selected sample format for capture: 16bit little-endian
Mar 06 16:29:27 norns jackd[316]: ALSA: use 3 periods for capture
Mar 06 16:29:27 norns jackd[316]: ALSA: final selected sample format for playback: 16bit little-endian
Mar 06 16:29:27 norns jackd[316]: ALSA: use 3 periods for playback
Mar 06 16:29:27 norns jack_wait[317]: server is available
Mar 06 16:29:27 norns systemd[1]: Started norns-jack.service.

SYSTEM > RESET performs systemctl restart norns-jack

kinda side note, but is there a specific reason to restart jack here?

maiden's ;restart performs systemctl restart norns-sclang

that seems to be the case (via go-systemd)

catfact commented 4 years ago

oh, is jack_wait something invoked by scsynth? in that case the log above makes sense (though of course has no bearing on the issue)

simonvanderveldt commented 4 years ago

weirdly though, i do see the error message in journalctl -u norns-jack.service, on every boot or RESET (apparently after every start of norns-jack.service.) it is followed immediately by a successful JACK startup, apparently with no ill effects... very strange

@catfact you mean the messages from jack_wait? They are to be expected, jack_wait is there to verify if/when JACK is fully up and running, which it won't be immediately after starting it. It's part of the JACK service/unit (otherwise you wouldn't have seen it's logs with the command you used), see https://github.com/monome/norns-image/blob/master/config/norns-jack.service#L12