linux/include/linux/jbd_common.h
<<
>>
Prefs
   1#ifndef _LINUX_JBD_STATE_H
   2#define _LINUX_JBD_STATE_H
   3
   4#include <linux/bit_spinlock.h>
   5
   6static inline struct buffer_head *jh2bh(struct journal_head *jh)
   7{
   8        return jh->b_bh;
   9}
  10
  11static inline struct journal_head *bh2jh(struct buffer_head *bh)
  12{
  13        return bh->b_private;
  14}
  15
  16static inline void jbd_lock_bh_state(struct buffer_head *bh)
  17{
  18        bit_spin_lock(BH_State, &bh->b_state);
  19}
  20
  21static inline int jbd_trylock_bh_state(struct buffer_head *bh)
  22{
  23        return bit_spin_trylock(BH_State, &bh->b_state);
  24}
  25
  26static inline int jbd_is_locked_bh_state(struct buffer_head *bh)
  27{
  28        return bit_spin_is_locked(BH_State, &bh->b_state);
  29}
  30
  31static inline void jbd_unlock_bh_state(struct buffer_head *bh)
  32{
  33        bit_spin_unlock(BH_State, &bh->b_state);
  34}
  35
  36static inline void jbd_lock_bh_journal_head(struct buffer_head *bh)
  37{
  38        bit_spin_lock(BH_JournalHead, &bh->b_state);
  39}
  40
  41static inline void jbd_unlock_bh_journal_head(struct buffer_head *bh)
  42{
  43        bit_spin_unlock(BH_JournalHead, &bh->b_state);
  44}
  45
  46#endif
  47