aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Robinson <chris.kcat@gmail.com>2013-10-27 07:00:44 -0700
committerChris Robinson <chris.kcat@gmail.com>2013-10-27 07:00:44 -0700
commitf93bfab82435b26fd03fe9dd0436f166758810d4 (patch)
treeaa52911dc40edfe86d739e82423c8f5d4731c461
parentff5277f4d7057f481a820cf64e2c2db4687bfd5f (diff)
Set a name for the mixer and recording threads
-rw-r--r--Alc/backends/alsa.c2
-rw-r--r--Alc/backends/dsound.c1
-rw-r--r--Alc/backends/mmdevapi.c1
-rw-r--r--Alc/backends/null.c5
-rw-r--r--Alc/backends/oss.c2
-rw-r--r--Alc/backends/pulseaudio.c1
-rw-r--r--Alc/backends/qsa.c1
-rw-r--r--Alc/backends/sndio.c1
-rw-r--r--Alc/backends/solaris.c1
-rw-r--r--Alc/backends/wave.c2
-rw-r--r--Alc/backends/winmm.c2
-rw-r--r--OpenAL32/Include/alMain.h5
12 files changed, 23 insertions, 1 deletions
diff --git a/Alc/backends/alsa.c b/Alc/backends/alsa.c
index f6c0428e..bb30dac5 100644
--- a/Alc/backends/alsa.c
+++ b/Alc/backends/alsa.c
@@ -463,6 +463,7 @@ static ALuint ALSAProc(ALvoid *ptr)
int err;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
update_size = Device->UpdateSize;
num_updates = Device->NumUpdates;
@@ -552,6 +553,7 @@ static ALuint ALSANoMMapProc(ALvoid *ptr)
int err;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
update_size = Device->UpdateSize;
num_updates = Device->NumUpdates;
diff --git a/Alc/backends/dsound.c b/Alc/backends/dsound.c
index 9727dd2a..22af15d8 100644
--- a/Alc/backends/dsound.c
+++ b/Alc/backends/dsound.c
@@ -238,6 +238,7 @@ static ALuint DSoundPlaybackProc(ALvoid *ptr)
HRESULT err;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
memset(&DSBCaps, 0, sizeof(DSBCaps));
DSBCaps.dwSize = sizeof(DSBCaps);
diff --git a/Alc/backends/mmdevapi.c b/Alc/backends/mmdevapi.c
index 2181f274..e6447bef 100644
--- a/Alc/backends/mmdevapi.c
+++ b/Alc/backends/mmdevapi.c
@@ -238,6 +238,7 @@ static ALuint MMDevApiProc(ALvoid *ptr)
}
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
update_size = device->UpdateSize;
buffer_len = update_size * device->NumUpdates;
diff --git a/Alc/backends/null.c b/Alc/backends/null.c
index d001cb41..73e3e8cb 100644
--- a/Alc/backends/null.c
+++ b/Alc/backends/null.c
@@ -44,6 +44,9 @@ static ALuint NullProc(ALvoid *ptr)
ALuint now, start;
ALuint64 avail, done;
+ SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
+
done = 0;
start = timeGetTime();
while(!data->killNow && Device->Connected)
@@ -55,7 +58,7 @@ static ALuint NullProc(ALvoid *ptr)
{
/* Timer wrapped (50 days???). Add the remainder of the cycle to
* the available count and reset the number of samples done */
- avail += ((ALuint64)1<<32)*Device->Frequency/1000 - done;
+ avail += (U64(1)<<32)*Device->Frequency/1000 - done;
done = 0;
}
if(avail-done < Device->UpdateSize)
diff --git a/Alc/backends/oss.c b/Alc/backends/oss.c
index 0ed49517..892e2327 100644
--- a/Alc/backends/oss.c
+++ b/Alc/backends/oss.c
@@ -85,6 +85,7 @@ static ALuint OSSProc(ALvoid *ptr)
ssize_t wrote;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
frameSize = FrameSizeFromDevFmt(Device->FmtChans, Device->FmtType);
@@ -128,6 +129,7 @@ static ALuint OSSCaptureProc(ALvoid *ptr)
int amt;
SetRTPriority();
+ SetThreadName("alsoft-record");
frameSize = FrameSizeFromDevFmt(Device->FmtChans, Device->FmtType);
diff --git a/Alc/backends/pulseaudio.c b/Alc/backends/pulseaudio.c
index f96b44fe..5b6e0fad 100644
--- a/Alc/backends/pulseaudio.c
+++ b/Alc/backends/pulseaudio.c
@@ -791,6 +791,7 @@ static ALuint PulseProc(ALvoid *param)
ssize_t len;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
pa_threaded_mainloop_lock(data->loop);
frame_size = pa_frame_size(&data->spec);
diff --git a/Alc/backends/qsa.c b/Alc/backends/qsa.c
index 933af5b4..2890a121 100644
--- a/Alc/backends/qsa.c
+++ b/Alc/backends/qsa.c
@@ -196,6 +196,7 @@ static ALuint qsa_proc_playback(ALvoid* ptr)
struct timeval timeout;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
/* Increase default 10 priority to 11 to avoid jerky sound */
SchedGet(0, 0, &param);
diff --git a/Alc/backends/sndio.c b/Alc/backends/sndio.c
index 2be88746..4c3a5de6 100644
--- a/Alc/backends/sndio.c
+++ b/Alc/backends/sndio.c
@@ -58,6 +58,7 @@ static ALuint sndio_proc(ALvoid *ptr)
size_t wrote;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
frameSize = FrameSizeFromDevFmt(device->FmtChans, device->FmtType);
diff --git a/Alc/backends/solaris.c b/Alc/backends/solaris.c
index 1c781387..b9288197 100644
--- a/Alc/backends/solaris.c
+++ b/Alc/backends/solaris.c
@@ -59,6 +59,7 @@ static ALuint SolarisProc(ALvoid *ptr)
int wrote;
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
frameSize = FrameSizeFromDevFmt(Device->FmtChans, Device->FmtType);
diff --git a/Alc/backends/wave.c b/Alc/backends/wave.c
index 416876be..ce827fe8 100644
--- a/Alc/backends/wave.c
+++ b/Alc/backends/wave.c
@@ -93,6 +93,8 @@ static ALuint WaveProc(ALvoid *ptr)
const ALuint restTime = (ALuint64)Device->UpdateSize * 1000 /
Device->Frequency / 2;
+ SetThreadName(MIXER_THREAD_NAME);
+
frameSize = FrameSizeFromDevFmt(Device->FmtChans, Device->FmtType);
done = 0;
diff --git a/Alc/backends/winmm.c b/Alc/backends/winmm.c
index 3b2b373b..e003375c 100644
--- a/Alc/backends/winmm.c
+++ b/Alc/backends/winmm.c
@@ -175,6 +175,7 @@ static DWORD WINAPI PlaybackThreadProc(LPVOID param)
FrameSize = FrameSizeFromDevFmt(Device->FmtChans, Device->FmtType);
SetRTPriority();
+ SetThreadName(MIXER_THREAD_NAME);
while(GetMessage(&msg, NULL, 0, 0))
{
@@ -237,6 +238,7 @@ static DWORD WINAPI CaptureThreadProc(LPVOID param)
MSG msg;
FrameSize = FrameSizeFromDevFmt(Device->FmtChans, Device->FmtType);
+ SetThreadName("alsoft-record");
while(GetMessage(&msg, NULL, 0, 0))
{
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h
index d8dbdcd9..95146c1b 100644
--- a/OpenAL32/Include/alMain.h
+++ b/OpenAL32/Include/alMain.h
@@ -714,6 +714,11 @@ struct ALCdevice_struct
#define INVALID_OFFSET (~0u)
+/* Must be less than 15 characters (16 including terminating null) for
+ * compatibility with pthread_setname_np limitations. */
+#define MIXER_THREAD_NAME "alsoft-mixer"
+
+
static inline struct ALbuffer *LookupBuffer(ALCdevice *device, ALuint id)
{ return (struct ALbuffer*)LookupUIntMapKey(&device->BufferMap, id); }
static inline struct ALeffect *LookupEffect(ALCdevice *device, ALuint id)