- File:
-
- 1 edited
-
libcfa/src/concurrency/kernel/startup.cfa (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/kernel/startup.cfa
r454f478 rda3963a 80 80 static void ?{}(processorCtx_t & this) {} 81 81 static void ?{}(processorCtx_t & this, processor * proc, current_stack_info_t * info); 82 static void ?{}(__bin_sem_t & this); 83 static void ^?{}(__bin_sem_t & this); 82 84 83 85 #if defined(__CFA_WITH_VERIFY__) … … 736 738 } 737 739 740 extern "C" { 741 char * strerror(int); 742 } 743 #define CHECKED(x) { int err = x; if( err != 0 ) abort("KERNEL ERROR: Operation \"" #x "\" return error %d - %s\n", err, strerror(err)); } 744 745 static void ?{}(__bin_sem_t & this) with( this ) { 746 // Create the mutex with error checking 747 pthread_mutexattr_t mattr; 748 pthread_mutexattr_init( &mattr ); 749 pthread_mutexattr_settype( &mattr, PTHREAD_MUTEX_ERRORCHECK_NP); 750 pthread_mutex_init(&lock, &mattr); 751 752 pthread_cond_init (&cond, (const pthread_condattr_t *)0p); // workaround trac#208: cast should not be required 753 val = 0; 754 } 755 756 static void ^?{}(__bin_sem_t & this) with( this ) { 757 CHECKED( pthread_mutex_destroy(&lock) ); 758 CHECKED( pthread_cond_destroy (&cond) ); 759 } 760 761 #undef CHECKED 738 762 739 763 #if defined(__CFA_WITH_VERIFY__)
Note:
See TracChangeset
for help on using the changeset viewer.