1#ifndef __ASM_GENERIC_QRWLOCK_TYPES_H 2#define __ASM_GENERIC_QRWLOCK_TYPES_H 3 4#include <linux/types.h> 5#include <asm/spinlock_types.h> 6 7/* 8 * The queue read/write lock data structure 9 */ 10 11typedef struct qrwlock { 12 atomic_t cnts; 13 arch_spinlock_t lock; 14} arch_rwlock_t; 15 16#define __ARCH_RW_LOCK_UNLOCKED { \ 17 .cnts = ATOMIC_INIT(0), \ 18 .lock = __ARCH_SPIN_LOCK_UNLOCKED, \ 19} 20 21#endif /* __ASM_GENERIC_QRWLOCK_TYPES_H */ 22