Back to home page

OSCL-LXR

 
 

    


0001 #ifndef SPINLOCK_H_STUB
0002 #define SPINLOCK_H_STUB
0003 
0004 #include <pthread.h>
0005 
0006 typedef pthread_spinlock_t  spinlock_t;
0007 
0008 static inline void spin_lock_init(spinlock_t *lock)
0009 {
0010     int r = pthread_spin_init(lock, 0);
0011     assert(!r);
0012 }
0013 
0014 static inline void spin_lock(spinlock_t *lock)
0015 {
0016     int ret = pthread_spin_lock(lock);
0017     assert(!ret);
0018 }
0019 
0020 static inline void spin_unlock(spinlock_t *lock)
0021 {
0022     int ret = pthread_spin_unlock(lock);
0023     assert(!ret);
0024 }
0025 
0026 static inline void spin_lock_bh(spinlock_t *lock)
0027 {
0028     spin_lock(lock);
0029 }
0030 
0031 static inline void spin_unlock_bh(spinlock_t *lock)
0032 {
0033     spin_unlock(lock);
0034 }
0035 
0036 static inline void spin_lock_irq(spinlock_t *lock)
0037 {
0038     spin_lock(lock);
0039 }
0040 
0041 static inline void spin_unlock_irq(spinlock_t *lock)
0042 {
0043     spin_unlock(lock);
0044 }
0045 
0046 static inline void spin_lock_irqsave(spinlock_t *lock, unsigned long f)
0047 {
0048     spin_lock(lock);
0049 }
0050 
0051 static inline void spin_unlock_irqrestore(spinlock_t *lock, unsigned long f)
0052 {
0053     spin_unlock(lock);
0054 }
0055 
0056 #endif