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/