void _read_lock_irq(rwlock_t *lock) { ASSERT(local_irq_is_enabled()); local_irq_disable(); check_lock(&lock->debug); _raw_read_lock(&lock->raw); }
unsigned long _read_lock_irqsave(rwlock_t *lock) { unsigned long flags; local_irq_save(flags); check_lock(&lock->debug); _raw_read_lock(&lock->raw); return flags; }
unsigned long __lockfunc _read_lock_irqsave(rwlock_t *lock) { unsigned long flags; local_irq_save(flags); preempt_disable(); _raw_read_lock(lock); return flags; }
void _read_lock(rwlock_t *lock) { check_lock(&lock->debug); _raw_read_lock(&lock->raw); }
void __lockfunc _read_lock_bh(rwlock_t *lock) { local_bh_disable(); preempt_disable(); _raw_read_lock(lock); }
void __lockfunc _read_lock(rwlock_t *lock) { preempt_disable(); _raw_read_lock(lock); }
/* * Generic declaration of the raw read_trylock() function, * architectures are supposed to optimize this: */ int __lockfunc generic_raw_read_trylock(rwlock_t *lock) { _raw_read_lock(lock); return 1; }