util: Implement debug-threads for macOS

macOS provides pthread_setname_np that doesn't have thread id argument.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Roman Bolshakov 2018-12-17 23:26:01 +03:00 committed by Peter Maydell
parent 16bf52346d
commit 479a57475e
3 changed files with 33 additions and 9 deletions

View file

@ -484,12 +484,16 @@ static void *qemu_thread_start(void *args)
void *arg = qemu_thread_args->arg;
void *r;
#ifdef CONFIG_PTHREAD_SETNAME_NP
#ifdef CONFIG_THREAD_SETNAME_BYTHREAD
/* Attempt to set the threads name; note that this is for debug, so
* we're not going to fail if we can't set it.
*/
if (name_threads && qemu_thread_args->name) {
# if defined(CONFIG_PTHREAD_SETNAME_NP_W_TID)
pthread_setname_np(pthread_self(), qemu_thread_args->name);
# elif defined(CONFIG_PTHREAD_SETNAME_NP_WO_TID)
pthread_setname_np(qemu_thread_args->name);
# endif
}
#endif
g_free(qemu_thread_args->name);