summaryrefslogtreecommitdiff
path: root/libs/backends
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2020-04-23 01:28:58 +0200
committerRobin Gareus <robin@gareus.org>2020-04-23 01:28:58 +0200
commit3d166c77891c2a83de35c5fd10c0b23c131bc43b (patch)
tree8aadfa6e479b07620598d954cf422c15c836d2c0 /libs/backends
parent485ac454771a7ae5301524f9ba0a5adb28fbacf4 (diff)
Consolidate stack-size and priority of rt-threads
Diffstat (limited to 'libs/backends')
-rw-r--r--libs/backends/alsa/alsa_audiobackend.cc9
-rw-r--r--libs/backends/alsa/alsa_midi.cc2
-rw-r--r--libs/backends/alsa/alsa_slave.cc2
-rw-r--r--libs/backends/coreaudio/coreaudio_backend.cc7
-rw-r--r--libs/backends/dummy/dummy_audiobackend.cc5
-rw-r--r--libs/backends/portaudio/portaudio_backend.cc9
-rw-r--r--libs/backends/portaudio/winmmemidi_output_device.cc5
-rw-r--r--libs/backends/pulseaudio/pulseaudio_backend.cc9
8 files changed, 20 insertions, 28 deletions
diff --git a/libs/backends/alsa/alsa_audiobackend.cc b/libs/backends/alsa/alsa_audiobackend.cc
index 86d3d0e8ba..7dec3eb738 100644
--- a/libs/backends/alsa/alsa_audiobackend.cc
+++ b/libs/backends/alsa/alsa_audiobackend.cc
@@ -937,7 +937,7 @@ AlsaAudioBackend::_start (bool for_latency_measurement)
_run = true;
_port_change_flag = false;
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -20, 100000,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_MAIN, PBD_RT_STACKSIZE_PROC,
&_main_thread, pthread_process, this))
{
if (pthread_create (&_main_thread, NULL, pthread_process, this))
@@ -1124,14 +1124,13 @@ AlsaAudioBackend::create_process_thread (boost::function<void()> func)
{
pthread_t thread_id;
pthread_attr_t attr;
- size_t stacksize = 100000;
- ThreadData* td = new ThreadData (this, func, stacksize);
+ ThreadData* td = new ThreadData (this, func, PBD_RT_STACKSIZE_PROC);
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -22, stacksize,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_PROC, PBD_RT_STACKSIZE_PROC,
&thread_id, alsa_process_thread, td)) {
pthread_attr_init (&attr);
- pthread_attr_setstacksize (&attr, stacksize);
+ pthread_attr_setstacksize (&attr, PBD_RT_STACKSIZE_PROC);
if (pthread_create (&thread_id, &attr, alsa_process_thread, td)) {
PBD::error << _("AudioEngine: cannot create process thread.") << endmsg;
pthread_attr_destroy (&attr);
diff --git a/libs/backends/alsa/alsa_midi.cc b/libs/backends/alsa/alsa_midi.cc
index db64611919..ce3a23d1ad 100644
--- a/libs/backends/alsa/alsa_midi.cc
+++ b/libs/backends/alsa/alsa_midi.cc
@@ -73,7 +73,7 @@ static void * pthread_process (void *arg)
int
AlsaMidiIO::start ()
{
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -21, 100000,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_MIDI, PBD_RT_STACKSIZE_HELP,
&_main_thread, pthread_process, this))
{
if (pthread_create (&_main_thread, NULL, pthread_process, this)) {
diff --git a/libs/backends/alsa/alsa_slave.cc b/libs/backends/alsa/alsa_slave.cc
index 43c2877229..de7752e043 100644
--- a/libs/backends/alsa/alsa_slave.cc
+++ b/libs/backends/alsa/alsa_slave.cc
@@ -108,7 +108,7 @@ AlsaAudioSlave::start ()
}
_run = true;
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -20, 100000,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_MAIN, PBD_RT_STACKSIZE_HELP,
&_thread, _process_thread, this))
{
if (pthread_create (&_thread, NULL, _process_thread, this)) {
diff --git a/libs/backends/coreaudio/coreaudio_backend.cc b/libs/backends/coreaudio/coreaudio_backend.cc
index ab38ad9517..33c4a32750 100644
--- a/libs/backends/coreaudio/coreaudio_backend.cc
+++ b/libs/backends/coreaudio/coreaudio_backend.cc
@@ -847,14 +847,13 @@ CoreAudioBackend::create_process_thread (boost::function<void()> func)
{
pthread_t thread_id;
pthread_attr_t attr;
- size_t stacksize = 100000;
- ThreadData* td = new ThreadData (this, func, stacksize);
+ ThreadData* td = new ThreadData (this, func, PBD_RT_STACKSIZE_PROC);
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -22, stacksize,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_PROC, PBD_RT_STACKSIZE_PROC,
&thread_id, coreaudio_process_thread, td)) {
pthread_attr_init (&attr);
- pthread_attr_setstacksize (&attr, stacksize);
+ pthread_attr_setstacksize (&attr, PBD_RT_STACKSIZE_PROC);
if (pthread_create (&thread_id, &attr, coreaudio_process_thread, td)) {
PBD::error << _("AudioEngine: cannot create process thread.") << endmsg;
pthread_attr_destroy (&attr);
diff --git a/libs/backends/dummy/dummy_audiobackend.cc b/libs/backends/dummy/dummy_audiobackend.cc
index 34de0da52e..ca9a93e583 100644
--- a/libs/backends/dummy/dummy_audiobackend.cc
+++ b/libs/backends/dummy/dummy_audiobackend.cc
@@ -555,11 +555,10 @@ DummyAudioBackend::create_process_thread (boost::function<void()> func)
{
pthread_t thread_id;
pthread_attr_t attr;
- size_t stacksize = 100000;
pthread_attr_init (&attr);
- pthread_attr_setstacksize (&attr, stacksize);
- ThreadData* td = new ThreadData (this, func, stacksize);
+ pthread_attr_setstacksize (&attr, PBD_RT_STACKSIZE_PROC);
+ ThreadData* td = new ThreadData (this, func, PBD_RT_STACKSIZE_PROC);
if (pthread_create (&thread_id, &attr, dummy_process_thread, td)) {
PBD::error << _("AudioEngine: cannot create process thread.") << endmsg;
diff --git a/libs/backends/portaudio/portaudio_backend.cc b/libs/backends/portaudio/portaudio_backend.cc
index 779bfc423b..a7c74fab4e 100644
--- a/libs/backends/portaudio/portaudio_backend.cc
+++ b/libs/backends/portaudio/portaudio_backend.cc
@@ -785,7 +785,7 @@ PortAudioBackend::process_callback(const float* input,
bool
PortAudioBackend::start_blocking_process_thread ()
{
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -20, 100000,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_MAIN, PBD_RT_STACKSIZE_PROC,
&_main_blocking_thread, blocking_thread_func, this))
{
if (pthread_create (&_main_blocking_thread, NULL, blocking_thread_func, this))
@@ -1110,14 +1110,13 @@ PortAudioBackend::create_process_thread (boost::function<void()> func)
{
pthread_t thread_id;
pthread_attr_t attr;
- size_t stacksize = 100000;
- ThreadData* td = new ThreadData (this, func, stacksize);
+ ThreadData* td = new ThreadData (this, func, PBD_RT_STACKSIZE_PROC);
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -22, stacksize,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_PROC, PBD_RT_STACKSIZE_PROC,
&thread_id, portaudio_process_thread, td)) {
pthread_attr_init (&attr);
- pthread_attr_setstacksize (&attr, stacksize);
+ pthread_attr_setstacksize (&attr, PBD_RT_STACKSIZE_PROC);
if (pthread_create (&thread_id, &attr, portaudio_process_thread, td)) {
DEBUG_AUDIO("Cannot create process thread.");
pthread_attr_destroy (&attr);
diff --git a/libs/backends/portaudio/winmmemidi_output_device.cc b/libs/backends/portaudio/winmmemidi_output_device.cc
index 8d699f25cc..d26925b8a3 100644
--- a/libs/backends/portaudio/winmmemidi_output_device.cc
+++ b/libs/backends/portaudio/winmmemidi_output_device.cc
@@ -228,11 +228,8 @@ WinMMEMidiOutputDevice::start_midi_output_thread ()
{
m_thread_quit = false;
- //pthread_attr_t attr;
- size_t stacksize = 100000;
-
// TODO Use native threads
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -21, stacksize,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_MIDI, PBD_RT_STACKSIZE_HELP,
&m_output_thread_handle, midi_output_thread, this)) {
return false;
}
diff --git a/libs/backends/pulseaudio/pulseaudio_backend.cc b/libs/backends/pulseaudio/pulseaudio_backend.cc
index 2af182a94e..dbdcf55f84 100644
--- a/libs/backends/pulseaudio/pulseaudio_backend.cc
+++ b/libs/backends/pulseaudio/pulseaudio_backend.cc
@@ -628,7 +628,7 @@ PulseAudioBackend::_start (bool /*for_latency_measurement*/)
_run = true;
_port_change_flag = false;
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -20, 100000,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_MAIN, PBD_RT_STACKSIZE_PROC,
&_main_thread, pthread_process, this)) {
if (pthread_create (&_main_thread, NULL, pthread_process, this)) {
PBD::error << _("PulseAudioBackend: failed to create process thread.") << endmsg;
@@ -744,14 +744,13 @@ PulseAudioBackend::create_process_thread (boost::function<void()> func)
{
pthread_t thread_id;
pthread_attr_t attr;
- size_t stacksize = 100000;
- ThreadData* td = new ThreadData (this, func, stacksize);
+ ThreadData* td = new ThreadData (this, func, PBD_RT_STACKSIZE_PROC);
- if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, -22, stacksize,
+ if (pbd_realtime_pthread_create (PBD_SCHED_FIFO, PBD_RT_PRI_PROC, PBD_RT_STACKSIZE_PROC,
&thread_id, pulse_process_thread, td)) {
pthread_attr_init (&attr);
- pthread_attr_setstacksize (&attr, stacksize);
+ pthread_attr_setstacksize (&attr, PBD_RT_STACKSIZE_PROC);
if (pthread_create (&thread_id, &attr, pulse_process_thread, td)) {
PBD::error << _("AudioEngine: cannot create process thread.") << endmsg;
pthread_attr_destroy (&attr);