From 0d0bd1642acc24c104e7fbdce193deb165feecf8 Mon Sep 17 00:00:00 2001 From: kosaki Date: Wed, 30 Nov 2011 22:17:48 +0000 Subject: [PATCH] * configure.in: add sys/prctl.h test. * thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) to change thread name. It may help to debug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ configure.in | 2 +- thread_pthread.c | 7 +++++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 6216982312..4bb04c1b03 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Thu Dec 1 07:03:51 2011 KOSAKI Motohiro + + * configure.in: add sys/prctl.h test. + * thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) to change + thread name. It may help to debug. + Wed Nov 30 23:35:45 2011 NARUSE, Yui * variable.c (rb_path2class): don't raise NameError when the middle diff --git a/configure.in b/configure.in index b17c280735..e37849eadc 100644 --- a/configure.in +++ b/configure.in @@ -1128,7 +1128,7 @@ AC_CHECK_HEADERS(limits.h sys/file.h sys/ioctl.h sys/syscall.h\ syscall.h pwd.h grp.h a.out.h utime.h direct.h sys/resource.h \ sys/mkdev.h sys/utime.h xti.h netinet/in_systm.h float.h ieeefp.h \ ucontext.h intrinsics.h langinfo.h locale.h sys/sendfile.h time.h \ - net/socket.h sys/socket.h process.h) + net/socket.h sys/socket.h process.h sys/prctl.h) AC_TYPE_SIZE_T RUBY_CHECK_SIZEOF(size_t, [int long void*], [], [@%:@include ]) diff --git a/thread_pthread.c b/thread_pthread.c index 5e76e65d6d..0da4aee67f 100644 --- a/thread_pthread.c +++ b/thread_pthread.c @@ -24,6 +24,9 @@ #elif HAVE_SYS_FCNTL_H #include #endif +#if HAVE_SYS_PRCTL_H +#include +#endif static void native_mutex_lock(pthread_mutex_t *lock); static void native_mutex_unlock(pthread_mutex_t *lock); @@ -1127,6 +1130,10 @@ thread_timer(void *p) if (TT_DEBUG) WRITE_CONST(2, "start timer thread\n"); +#ifdef __linux__ + prctl(PR_SET_NAME, "ruby-timer-thr"); +#endif + while (system_working > 0) { fd_set rfds; int need_polling;