[前][次][番号順一覧][スレッド一覧]

ruby-changes:49604

From: normal <ko1@a...>
Date: Tue, 9 Jan 2018 17:26:43 +0900 (JST)
Subject: [ruby-changes:49604] normal:r61719 (trunk): thread_pthread: remove HAVE_PTHREAD_ATTR_INIT ifdefs

normal	2018-01-09 17:26:38 +0900 (Tue, 09 Jan 2018)

  New Revision: 61719

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=61719

  Log:
    thread_pthread: remove HAVE_PTHREAD_ATTR_INIT ifdefs
    
    ifdefs make code confusing for my easily-confused mind :<
    These were added for NaCL support in r36022, and we dropped NaCL
    in r60374.  There are more #ifdefs to remove...
    
    [ruby-core:84758] [Misc #14342]

  Modified files:
    trunk/configure.ac
    trunk/thread_pthread.c
Index: configure.ac
===================================================================
--- configure.ac	(revision 61718)
+++ configure.ac	(revision 61719)
@@ -2963,7 +2963,7 @@ AS_IF([test x"$enable_pthread" = xyes], https://github.com/ruby/ruby/blob/trunk/configure.ac#L2963
 	AC_DEFINE(NON_SCALAR_THREAD_ID)
     ])
     AC_CHECK_FUNCS(sched_yield pthread_attr_setinheritsched \
-	pthread_attr_get_np pthread_attr_getstack pthread_attr_init \
+	pthread_attr_get_np pthread_attr_getstack \
 	pthread_get_stackaddr_np pthread_get_stacksize_np \
 	thr_stksegment pthread_stackseg_np pthread_getthrds_np \
 	pthread_cond_init pthread_condattr_setclock pthread_condattr_init \
Index: thread_pthread.c
===================================================================
--- thread_pthread.c	(revision 61718)
+++ thread_pthread.c	(revision 61719)
@@ -991,12 +991,8 @@ native_thread_create(rb_thread_t *th) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L991
 	thread_debug("create (use cached thread): %p\n", (void *)th);
     }
     else {
-#ifdef HAVE_PTHREAD_ATTR_INIT
 	pthread_attr_t attr;
 	pthread_attr_t *const attrp = &attr;
-#else
-	pthread_attr_t *const attrp = NULL;
-#endif
 	const size_t stack_size = th->vm->default_params.thread_machine_stack_size;
 	const size_t space = space_size(stack_size);
 
@@ -1006,7 +1002,6 @@ native_thread_create(rb_thread_t *th) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L1002
         th->ec->machine.register_stack_maxsize = th->ec->machine.stack_maxsize;
 #endif
 
-#ifdef HAVE_PTHREAD_ATTR_INIT
 	CHECK_ERR(pthread_attr_init(&attr));
 
 # ifdef PTHREAD_STACK_MIN
@@ -1018,7 +1013,7 @@ native_thread_create(rb_thread_t *th) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L1013
 	CHECK_ERR(pthread_attr_setinheritsched(&attr, PTHREAD_INHERIT_SCHED));
 # endif
 	CHECK_ERR(pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED));
-#endif
+
 #ifdef get_stack_of
 	native_mutex_lock(&th->interrupt_lock);
 #endif
@@ -1034,9 +1029,7 @@ native_thread_create(rb_thread_t *th) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L1029
 	thread_debug("create: %p (%d)\n", (void *)th, err);
 	/* should be done in the created thread */
 	fill_thread_id_str(th);
-#ifdef HAVE_PTHREAD_ATTR_INIT
 	CHECK_ERR(pthread_attr_destroy(&attr));
-#endif
     }
     return err;
 }
@@ -1596,7 +1589,6 @@ rb_thread_create_timer_thread(void) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L1589
     if (!timer_thread.created) {
 	size_t stack_size = 0;
 	int err;
-#ifdef HAVE_PTHREAD_ATTR_INIT
 	pthread_attr_t attr;
 	rb_vm_t *vm = GET_VM();
 
@@ -1631,7 +1623,6 @@ rb_thread_create_timer_thread(void) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L1623
 	    }
 	}
 # endif
-#endif
 
 #if USE_SLEEPY_TIMER_THREAD
 	err = setup_communication_pipe();
@@ -1646,7 +1637,6 @@ rb_thread_create_timer_thread(void) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L1637
 	if (timer_thread.created) {
 	    rb_bug("rb_thread_create_timer_thread: Timer thread was already created\n");
 	}
-#ifdef HAVE_PTHREAD_ATTR_INIT
 	err = pthread_create(&timer_thread.id, &attr, thread_timer, &vm->gvl);
 	pthread_attr_destroy(&attr);
 
@@ -1660,9 +1650,6 @@ rb_thread_create_timer_thread(void) https://github.com/ruby/ruby/blob/trunk/thread_pthread.c#L1650
 	    stack_size = 0;
 	    err = pthread_create(&timer_thread.id, NULL, thread_timer, &vm->gvl);
 	}
-#else
-	err = pthread_create(&timer_thread.id, NULL, thread_timer, &vm->gvl);
-#endif
 	if (err != 0) {
 	    rb_warn("pthread_create failed for timer: %s, scheduling broken",
 		    strerror(err));

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]