Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/concurrency/kernel/startup.cfa

    ra0a949c rdd46fd3  
    1515
    1616#define __cforall_thread__
     17#define _GNU_SOURCE
    1718
    1819// #define __CFA_DEBUG_PRINT_RUNTIME_CORE__
    1920
    2021// C Includes
    21 #include <errno.h>                                                                              // errno
     22#include <errno.h>                                      // errno
    2223#include <signal.h>
    23 #include <string.h>                                                                             // strerror
    24 #include <unistd.h>
    25 #include <limits.h>                                                                             // PTHREAD_STACK_MIN
     24#include <string.h>                                     // strerror
     25#include <unistd.h>                                     // sysconf
     26
    2627extern "C" {
    27         #include <sys/eventfd.h>                                                        // eventfd
    28         #include <sys/mman.h>                                                           // mprotect
    29         #include <sys/resource.h>                                                       // getrlimit
     28        #include <limits.h>                             // PTHREAD_STACK_MIN
     29        #include <unistd.h>                             // syscall
     30        #include <sys/eventfd.h>                        // eventfd
     31        #include <sys/mman.h>                           // mprotect
     32        #include <sys/resource.h>                       // getrlimit
    3033}
    3134
     
    3336#include "kernel/private.hfa"
    3437#include "iofwd.hfa"
    35 #include "startup.hfa"                                                                  // STARTUP_PRIORITY_XXX
     38#include "startup.hfa"                                  // STARTUP_PRIORITY_XXX
    3639#include "limits.hfa"
    3740#include "math.hfa"
     
    147150__scheduler_RWLock_t __scheduler_lock @= { 0 };
    148151
     152#if   defined(CFA_HAVE_LINUX_LIBRSEQ)
     153        // No data needed
     154#elif defined(CFA_HAVE_LINUX_RSEQ_H)
     155        extern "Cforall" {
     156                __attribute__((aligned(64))) __thread volatile struct rseq __cfaabi_rseq @= {
     157                        .cpu_id : RSEQ_CPU_ID_UNINITIALIZED,
     158                };
     159        }
     160#else
     161        // No data needed
     162#endif
     163
    149164//-----------------------------------------------------------------------------
    150165// Struct to steal stack
Note: See TracChangeset for help on using the changeset viewer.