1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 **************************************************************************** 11 ****************************************************************************/ 12#ifndef _EXT4_JBD2_H 13#define _EXT4_JBD2_H 14 15#include "ext4.h" 16 17#define EXT4_JOURNAL(inode) (EXT4_SB((inode)->i_sb)->s_journal) 18 19#define EXT4_SINGLEDATA_TRANS_BLOCKS(sb) (EXT4_HAS_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_EXTENTS) ? 27U : 8U) 20 21#define EXT4_XATTR_TRANS_BLOCKS 6U 22 23#define EXT4_DATA_TRANS_BLOCKS(sb) (EXT4_SINGLEDATA_TRANS_BLOCKS(sb) + EXT4_XATTR_TRANS_BLOCKS - 2 + EXT4_MAXQUOTAS_TRANS_BLOCKS(sb)) 24 25#define EXT4_META_TRANS_BLOCKS(sb) (EXT4_XATTR_TRANS_BLOCKS + EXT4_MAXQUOTAS_TRANS_BLOCKS(sb)) 26 27#define EXT4_DELETE_TRANS_BLOCKS(sb) (2 * EXT4_DATA_TRANS_BLOCKS(sb) + 64) 28 29#define EXT4_MAX_TRANS_DATA 64U 30 31#define EXT4_RESERVE_TRANS_BLOCKS 12U 32 33#define EXT4_INDEX_EXTRA_TRANS_BLOCKS 8 34 35#define EXT4_QUOTA_TRANS_BLOCKS(sb) 0 36#define EXT4_QUOTA_INIT_BLOCKS(sb) 0 37#define EXT4_QUOTA_DEL_BLOCKS(sb) 0 38#define EXT4_MAXQUOTAS_TRANS_BLOCKS(sb) (MAXQUOTAS*EXT4_QUOTA_TRANS_BLOCKS(sb)) 39#define EXT4_MAXQUOTAS_INIT_BLOCKS(sb) (MAXQUOTAS*EXT4_QUOTA_INIT_BLOCKS(sb)) 40#define EXT4_MAXQUOTAS_DEL_BLOCKS(sb) (MAXQUOTAS*EXT4_QUOTA_DEL_BLOCKS(sb)) 41 42#define ext4_journal_get_undo_access(handle, bh) __ext4_journal_get_undo_access(__func__, (handle), (bh)) 43#define ext4_journal_get_write_access(handle, bh) __ext4_journal_get_write_access(__func__, (handle), (bh)) 44#define ext4_forget(handle, is_metadata, inode, bh, block_nr) __ext4_forget(__func__, (handle), (is_metadata), (inode), (bh), (block_nr)) 45#define ext4_journal_get_create_access(handle, bh) __ext4_journal_get_create_access(__func__, (handle), (bh)) 46#define ext4_handle_dirty_metadata(handle, inode, bh) __ext4_handle_dirty_metadata(__func__, (handle), (inode), (bh)) 47 48#define EXT4_NOJOURNAL_MAX_REF_COUNT ((unsigned long) 4096) 49 50#define ext4_journal_stop(handle) __ext4_journal_stop(__func__, (handle)) 51 52#endif 53 54