Diff for /libaitsched/src/aitsched.c between versions 1.15 and 1.15.2.3

version 1.15, 2012/08/21 12:54:39 version 1.15.2.3, 2012/08/23 00:31:41
Line 121  schedRegisterHooks(sched_root_task_t * __restrict root Line 121  schedRegisterHooks(sched_root_task_t * __restrict root
         return 0;          return 0;
 }  }
   
   #ifdef HAVE_LIBPTHREAD
   static void
   _sched_threadChild()
   {
           pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
           pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL);
           pthread_testcancel();
   }
   #endif
   
 /*  /*
  * schedInit() - Init scheduler   * schedInit() - Init scheduler
  *   *
Line 181  schedInit(void ** __restrict data, size_t datlen) Line 191  schedInit(void ** __restrict data, size_t datlen)
                 TAILQ_INIT(&root->root_thread);                  TAILQ_INIT(&root->root_thread);
   
 #ifdef HAVE_LIBPTHREAD  #ifdef HAVE_LIBPTHREAD
                   pthread_atfork(NULL, NULL, _sched_threadChild);
   
                 for (i = 0; i < taskMAX; i++)                  for (i = 0; i < taskMAX; i++)
                         pthread_mutex_unlock(&root->root_mtx[i]);                          pthread_mutex_unlock(&root->root_mtx[i]);
 #endif  #endif
Line 242  schedEnd(sched_root_task_t ** __restrict root) Line 254  schedEnd(sched_root_task_t ** __restrict root)
                 schedCancel(task);                  schedCancel(task);
         TAILQ_FOREACH_SAFE(task, &(*root)->root_event, task_node, tmp)          TAILQ_FOREACH_SAFE(task, &(*root)->root_event, task_node, tmp)
                 schedCancel(task);                  schedCancel(task);
         TAILQ_FOREACH_SAFE(task, &(*root)->root_task, task_node, tmp)  
                 schedCancel(task);  
         TAILQ_FOREACH_SAFE(task, &(*root)->root_suspend, task_node, tmp)          TAILQ_FOREACH_SAFE(task, &(*root)->root_suspend, task_node, tmp)
                 schedCancel(task);                  schedCancel(task);
         TAILQ_FOREACH_SAFE(task, &(*root)->root_ready, task_node, tmp)          TAILQ_FOREACH_SAFE(task, &(*root)->root_ready, task_node, tmp)
                 schedCancel(task);                  schedCancel(task);
         TAILQ_FOREACH_SAFE(task, &(*root)->root_thread, task_node, tmp)          TAILQ_FOREACH_SAFE(task, &(*root)->root_thread, task_node, tmp)
                   schedCancel(task);
           TAILQ_FOREACH_SAFE(task, &(*root)->root_task, task_node, tmp)
                 schedCancel(task);                  schedCancel(task);
   
 #ifdef HAVE_LIBPTHREAD  #ifdef HAVE_LIBPTHREAD

Removed from v.1.15  
changed lines
  Added in v.1.15.2.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>