pthread_spin_lock.c raw

   1  #include "pthread_impl.h"
   2  #include <errno.h>
   3  
   4  int pthread_spin_lock(pthread_spinlock_t *s)
   5  {
   6  	while (*(volatile int *)s || a_cas(s, 0, EBUSY)) a_spin();
   7  	return 0;
   8  }
   9