Revision 99a0949b qemu-lock.h

b/qemu-lock.h
28 28
#include <pthread.h>
29 29
#define spin_lock pthread_mutex_lock
30 30
#define spin_unlock pthread_mutex_unlock
31
#define spinlock_t pthread_mutex_t
31
#define a_spinlock pthread_mutex_t
32 32
#define SPIN_LOCK_UNLOCKED PTHREAD_MUTEX_INITIALIZER
33 33

  
34 34
#else
35 35

  
36 36
#if defined(__hppa__)
37 37

  
38
typedef int spinlock_t[4];
38
typedef int a_spinlock[4];
39 39

  
40 40
#define SPIN_LOCK_UNLOCKED { 1, 1, 1, 1 }
41 41

  
42
static inline void resetlock (spinlock_t *p)
42
static inline void resetlock (a_spinlock *p)
43 43
{
44 44
    (*p)[0] = (*p)[1] = (*p)[2] = (*p)[3] = 1;
45 45
}
46 46

  
47 47
#else
48 48

  
49
typedef int spinlock_t;
49
typedef int a_spinlock;
50 50

  
51 51
#define SPIN_LOCK_UNLOCKED 0
52 52

  
53
static inline void resetlock (spinlock_t *p)
53
static inline void resetlock (a_spinlock *p)
54 54
{
55 55
    *p = SPIN_LOCK_UNLOCKED;
56 56
}
......
171 171
    return (void *)a;
172 172
}
173 173

  
174
static inline int testandset (spinlock_t *p)
174
static inline int testandset (a_spinlock *p)
175 175
{
176 176
    unsigned int ret;
177 177
    p = ldcw_align(p);
......
215 215
#endif
216 216

  
217 217
#if defined(CONFIG_USER_ONLY)
218
static inline void spin_lock(spinlock_t *lock)
218
static inline void spin_lock(a_spinlock *lock)
219 219
{
220 220
    while (testandset(lock));
221 221
}
222 222

  
223
static inline void spin_unlock(spinlock_t *lock)
223
static inline void spin_unlock(a_spinlock *lock)
224 224
{
225 225
    resetlock(lock);
226 226
}
227 227

  
228
static inline int spin_trylock(spinlock_t *lock)
228
static inline int spin_trylock(a_spinlock *lock)
229 229
{
230 230
    return !testandset(lock);
231 231
}
232 232
#else
233
static inline void spin_lock(spinlock_t *lock)
233
static inline void spin_lock(a_spinlock *lock)
234 234
{
235 235
}
236 236

  
237
static inline void spin_unlock(spinlock_t *lock)
237
static inline void spin_unlock(a_spinlock *lock)
238 238
{
239 239
}
240 240

  
241
static inline int spin_trylock(spinlock_t *lock)
241
static inline int spin_trylock(a_spinlock *lock)
242 242
{
243 243
    return 1;
244 244
}

Also available in: Unified diff