I ran apt upgrade on my bela today and after that, bela projects wouldn't start anymore. I traced it down to __wrap_pthread_create which would always fail when priority is > 0:
Starting with period size 16 ;analog enabled
DAC level 0.000000 dB; ADC level -6.000000 dB; headphone level -6.000000 dB
Warning: couldn't export amplifier mute pin 61
Detected hardware: Bela
User input:
Hardward specified in belaconfig:
Hardware to be used: Bela
Warning: couldn't export DAC sync pin
Warning: couldn't export ADC sync pin
Warning: couldn't export digital GPIO pin 66
Warning: couldn't export digital GPIO pin 67
Warning: couldn't export digital GPIO pin 69
Warning: couldn't export digital GPIO pin 68
Warning: couldn't export digital GPIO pin 45
Warning: couldn't export digital GPIO pin 44
Warning: couldn't export digital GPIO pin 60
Warning: couldn't export digital GPIO pin 50
Warning: couldn't export digital GPIO pin 47
Warning: couldn't export digital GPIO pin 46
Warning: couldn't export digital GPIO pin 51
Warning: couldn't export digital GPIO pin 65
Warning: couldn't export digital GPIO pin 86
Warning: couldn't export digital GPIO pin 88
Warning: couldn't export digital GPIO pin 87
Warning: couldn't export digital GPIO pin 89
PRU memory mapped to ARM:
digital: 0xb5ff7000 0xb5ff7400
audio: 0xb5ff8000 0xb5ff8040 0xb5ff8080 0xb5ff80c0
analog: 0xb5fe8000 0xb5fe8080 0xb5fe8100 0xb5fe8180
analog offset: 0xffff2000 0xffff2080 0xffff2100 0xffff2180
create_and_start_thread(task=0x59808, taskname=ws_server_task, priority=0, stackSize=262144, callback=0x29248, arg=0x59808)...
create_and_start_thread(task=0x5ac40, taskname=scope-trigger-task, priority=90, stackSize=0, callback=0x27554, arg=0x5ac40)...
task scope-trigger-task: __wrap_pthread_create failed with error 1
Unable to start AuxTaskRT scope-trigger-task: 1
create_and_start_thread(task=0x5ac18, taskname=scope-send-buffer, priority=0, stackSize=262144, callback=0x29248, arg=0x5ac18)...
Using embedded PRU code
create_and_start_thread(task=0x594a4, taskname=bela-audio, priority=95, stackSize=1048576, callback=0x21430, arg=(nil))...
task bela-audio: __wrap_pthread_create failed with error 1
Error: unable to start Xenomai audio thread: 1 Unknown error -1
Error: unable to start real-time audio
Error 1 is EPERM. I searched a bit and found a workaround here: https://github.com/coreos/bugs/issues/410
# disable group rt scheduling
sysctl -w kernel.sched_rt_runtime_us=-1
With this workaround, bela projects run fine again.
My kernel version is
Linux bela 4.4.113-ti-xenomai-r149 #1 PREEMPT Wed Sep 26 15:40:33 BST 2018 armv7l GNU/Linux
Sharing this in case someone else runs into it in the future.