summaryrefslogtreecommitdiff
path: root/accel-pptpd/triton/spinlock.h
diff options
context:
space:
mode:
authorKozlov Dmitry <dima@server>2010-08-27 17:15:02 +0400
committerKozlov Dmitry <dima@server>2010-08-27 17:15:02 +0400
commit55ebaec066819d068bf13a42998ebc3f31377990 (patch)
tree4c3922094e3c47fa132570046fcfb70f2bf60ba3 /accel-pptpd/triton/spinlock.h
parent9857527f8f1fe124cdd5e66180351f0661e22dd6 (diff)
downloadaccel-ppp-55ebaec066819d068bf13a42998ebc3f31377990.tar.gz
accel-ppp-55ebaec066819d068bf13a42998ebc3f31377990.zip
rewriting triton library ...
Diffstat (limited to 'accel-pptpd/triton/spinlock.h')
-rw-r--r--accel-pptpd/triton/spinlock.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/accel-pptpd/triton/spinlock.h b/accel-pptpd/triton/spinlock.h
new file mode 100644
index 0000000..a75e29c
--- /dev/null
+++ b/accel-pptpd/triton/spinlock.h
@@ -0,0 +1,17 @@
+#ifndef __TRITON_SPINLOCK_H
+#define __TRITON_SPINLOCK_H
+
+#ifdef USE_SPINLOCK
+typedef spinlock_t unsigned char;
+#define spin_lock(l) {while(__sync_lock_test_and_set(l,1);}
+#define spin_unlock(l) __sync_lock_release(l)
+#define SPINLOCK_INITIALIZER 0
+#else
+typedef spinlock_t pthread_mutex_t;
+#define spin_lock(l) pthread_mutex_lock(l)
+#define spin_unlock(l) pthread_mutex_unlock(l)
+#define SPINLOCK_INITIALIZER PTHREAD_MUTEX_INITIALIZER
+#endif
+
+#endif
+