Home | History | Annotate | Download | only in ext2fs

Lines Matching refs:journal

28 #include <linux/journal-head.h>
78 typedef struct journal_s journal_t; /* Journal control structure */
137 * The block tag: used to describe a single buffer in the journal
160 /* Definitions for the journal tag flags word: */
168 * The journal superblock. All fields are in big-endian byte order.
176 /* Static information describing the journal */
177 __u32 s_blocksize; /* journal device blocksize */
178 __u32 s_maxlen; /* total blocks in journal file */
196 __u8 s_uuid[16]; /* 128-bit uuid for journal */
204 __u32 s_max_transaction; /* Limit of journal blocks per trans.*/
354 /* Pointer to the journal for this transaction. */
463 /* Is there an outstanding uncleared error on the journal (from
513 /* The main journal lock, used by lock_journal() */
516 /* Journal head: identifies the first unused block in the journal. */
519 /* Journal tail: identifies the oldest still-used block in the
520 * journal. */
523 /* Journal free: how many free blocks are there in the journal? */
526 /* Journal start and end: the block numbers of the first usable
527 * block and one beyond the last usable block in the journal. */
531 * where we store the journal. */
536 /* Device which holds the client fs. For internal journal this
540 /* Total maximum capacity of the journal region on disk. */
543 /* Optional inode where we store the journal. If present, all
544 * journal block numbers are mapped into this inode via
557 /* Journal uuid: identifies the object (filesystem, LVM volume
558 * etc) backed by this journal. This will eventually be
560 * devices within a single journal and to perform atomic updates
565 /* Pointer to the current commit thread for this journal */
587 /* Failed journal commit ID */
592 * Journal flag definitions
594 #define JFS_UNMOUNT 0x001 /* Journal thread is being destroyed */
597 #define JFS_FLUSHED 0x008 /* The journal superblock has been flushed */
598 #define JFS_LOADED 0x010 /* The journal superblock has been loaded */
623 int __journal_clean_checkpoint_list(journal_t *journal);
640 * Journal locking.
642 * We need to lock the journal during transaction state changes so that
647 * journal structures from interrupts.
653 static inline void lock_journal(journal_t *journal)
655 down(&journal->j_sem);
659 static inline int try_lock_journal(journal_t * journal)
661 return down_trylock(&journal->j_sem);
664 static inline void unlock_journal(journal_t * journal)
666 up(&journal->j_sem);
713 extern int journal_load (journal_t *journal);
715 extern int journal_recover (journal_t *journal);
724 extern unsigned long journal_bmap(journal_t *journal, unsigned long blocknr);
725 extern int journal_force_commit(journal_t *journal);
760 extern int log_space_left (journal_t *); /* Called with journal locked */
769 /* Reduce journal memory usage by flushing */
791 static inline int is_journal_aborted(journal_t *journal)
793 return journal->j_flags & JFS_ABORT;
818 extern int journal_recover (journal_t *journal);
868 #define BJ_Reserved 8 /* Buffer is reserved for access by journal */
900 /* Return true if the buffer is on journal list `list' */
906 /* Return true if this bufer is dirty wrt the journal */