| .. | .. |
|---|
| 11 | 11 | |
|---|
| 12 | 12 | #include <asm/processor.h> |
|---|
| 13 | 13 | #include <asm/qrwlock.h> |
|---|
| 14 | + |
|---|
| 15 | +#include <asm-generic/qspinlock_types.h> |
|---|
| 16 | + |
|---|
| 17 | +#define queued_spin_unlock queued_spin_unlock |
|---|
| 18 | +/** |
|---|
| 19 | + * queued_spin_unlock - release a queued spinlock |
|---|
| 20 | + * @lock : Pointer to queued spinlock structure |
|---|
| 21 | + */ |
|---|
| 22 | +static inline void queued_spin_unlock(struct qspinlock *lock) |
|---|
| 23 | +{ |
|---|
| 24 | + /* This could be optimised with ARCH_HAS_MMIOWB */ |
|---|
| 25 | + mmiowb(); |
|---|
| 26 | + smp_store_release(&lock->locked, 0); |
|---|
| 27 | +} |
|---|
| 28 | + |
|---|
| 14 | 29 | #include <asm/qspinlock.h> |
|---|
| 15 | 30 | |
|---|
| 16 | 31 | #endif /* _ASM_SPINLOCK_H */ |
|---|