diff --git a/drivers/gpu/nvgpu/os/posix/os_sched.c b/drivers/gpu/nvgpu/os/posix/os_sched.c index 8d478191a..1f1b7df4d 100644 --- a/drivers/gpu/nvgpu/os/posix/os_sched.c +++ b/drivers/gpu/nvgpu/os/posix/os_sched.c @@ -10,12 +10,6 @@ #include -#if defined(__NVGPU_POSIX__) -#define __USE_GNU -#else -#define __EXT_QNX -#endif - #include #include @@ -48,6 +42,8 @@ int nvgpu_current_tid(struct gk20a *g) void nvgpu_print_current_impl(struct gk20a *g, const char *func_name, int line, void *ctx, enum nvgpu_log_type type) { +#if defined(__NVGPU_POSIX__) +#ifdef _GNU_SOURCE char current_tname[CURRENT_NAME_LEN]; /* pthread_getname_np() will return null terminated string on success */ @@ -58,4 +54,19 @@ void nvgpu_print_current_impl(struct gk20a *g, const char *func_name, int line, nvgpu_log_msg_impl(g, func_name, line, type, "(unknown process)"); } +#else + nvgpu_log_msg_impl(g, func_name, line, type, "(unknown process)"); +#endif +#else + char current_tname[CURRENT_NAME_LEN]; + + /* pthread_getname_np() will return null terminated string on success */ + if (pthread_getname_np(0, current_tname, CURRENT_NAME_LEN) == 0) { + nvgpu_log_msg_impl(g, func_name, line, type, "%s", + current_tname); + } else { + nvgpu_log_msg_impl(g, func_name, line, type, + "(unknown process)"); + } +#endif }