ext4_fsblk_t
ext4_fsblk_t start, tmp;
static ext4_fsblk_t ext4_valid_block_bitmap_padding(struct super_block *sb,
static ext4_fsblk_t ext4_valid_block_bitmap(struct super_block *sb,
ext4_fsblk_t blk;
ext4_fsblk_t group_first_block;
ext4_fsblk_t block)
ext4_fsblk_t blk;
ext4_fsblk_t bitmap_blk;
void ext4_get_group_no_and_offset(struct super_block *sb, ext4_fsblk_t blocknr,
ext4_fsblk_t ext4_new_meta_blocks(handle_t *handle, struct inode *inode,
ext4_fsblk_t goal, unsigned int flags,
ext4_fsblk_t ret;
ext4_fsblk_t block,
ext4_fsblk_t ext4_count_free_clusters(struct super_block *sb)
ext4_fsblk_t desc_count;
ext4_fsblk_t bitmap_count;
ext4_fsblk_t start = ext4_group_first_block_no(sb, block_group);
ext4_fsblk_t end = start + EXT4_BLOCKS_PER_GROUP(sb) - 1;
ext4_fsblk_t ext4_inode_to_goal_block(struct inode *inode)
ext4_fsblk_t bg_start;
ext4_fsblk_t last_block;
ext4_fsblk_t itbl_blk_start, itbl_blk_end;
ext4_fsblk_t start_blk;
ext4_fsblk_t start_blk, unsigned int count)
int ext4_inode_block_valid(struct inode *inode, ext4_fsblk_t start_blk,
ext4_fsblk_t start_blk,
ext4_fsblk_t i_file_acl;
ext4_fsblk_t s_sb_block;
ext4_fsblk_t goal;
ext4_fsblk_t pleft;
ext4_fsblk_t pright;
ext4_fsblk_t m_pblk;
static inline ext4_fsblk_t
return group_no * (ext4_fsblk_t)EXT4_BLOCKS_PER_GROUP(sb) +
ext4_fsblk_t blocknr,
ext4_fsblk_t block);
extern ext4_fsblk_t ext4_new_meta_blocks(handle_t *handle, struct inode *inode,
ext4_fsblk_t goal,
extern ext4_fsblk_t ext4_count_free_clusters(struct super_block *);
ext4_fsblk_t ext4_inode_to_goal_block(struct inode *);
bool ext4_fc_replay_check_excluded(struct super_block *sb, ext4_fsblk_t block);
ext4_lblk_t lblk, ext4_fsblk_t pblk,
extern ext4_fsblk_t ext4_mb_new_blocks(handle_t *,
struct buffer_head *bh, ext4_fsblk_t block,
ext4_fsblk_t block, unsigned long count);
extern void ext4_mb_mark_bb(struct super_block *sb, ext4_fsblk_t block,
ext4_fsblk_t pblk, ext4_lblk_t len);
ext4_fsblk_t n_blocks_count);
extern int ext4_resize_fs(struct super_block *sb, ext4_fsblk_t n_blocks_count);
ext4_fsblk_t, int, const char *, ...);
void __ext4_error_file(struct file *, const char *, unsigned int, ext4_fsblk_t,
unsigned long, ext4_fsblk_t,
extern ext4_fsblk_t ext4_block_bitmap(struct super_block *sb,
extern ext4_fsblk_t ext4_inode_bitmap(struct super_block *sb,
extern ext4_fsblk_t ext4_inode_table(struct super_block *sb,
struct ext4_group_desc *bg, ext4_fsblk_t blk);
struct ext4_group_desc *bg, ext4_fsblk_t blk);
struct ext4_group_desc *bg, ext4_fsblk_t blk);
? (ext4_fsblk_t)le32_to_cpu(es->name##_hi) << 32 : 0) | \
static inline ext4_fsblk_t ext4_blocks_count(struct ext4_super_block *es)
static inline ext4_fsblk_t ext4_r_blocks_count(struct ext4_super_block *es)
static inline ext4_fsblk_t ext4_free_blocks_count(struct ext4_super_block *es)
ext4_fsblk_t blk)
ext4_fsblk_t blk)
ext4_fsblk_t blk)
ext4_fsblk_t start_blk,
ext4_fsblk_t start_blk, unsigned int count);
int len, int unwritten, ext4_fsblk_t pblk);
extern int ext4_multi_mount_protect(struct super_block *, ext4_fsblk_t);
~((ext4_fsblk_t) (s)->s_cluster_ratio - 1))
((ext4_fsblk_t) (s)->s_cluster_ratio - 1))
ext4_fsblk_t p_block;
ext4_fsblk_t pclu; /* physical cluster number */
static inline ext4_fsblk_t ext4_ext_pblock(struct ext4_extent *ex)
ext4_fsblk_t block;
block |= ((ext4_fsblk_t) le16_to_cpu(ex->ee_start_hi) << 31) << 1;
static inline ext4_fsblk_t ext4_idx_pblock(struct ext4_extent_idx *ix)
ext4_fsblk_t block;
block |= ((ext4_fsblk_t) le16_to_cpu(ix->ei_leaf_hi) << 31) << 1;
ext4_fsblk_t pb)
ext4_fsblk_t pb)
struct buffer_head *bh, ext4_fsblk_t blocknr)
struct buffer_head *bh, ext4_fsblk_t blocknr);
ext4_fsblk_t pblk, ext4_lblk_t len)
ext4_fsblk_t newblock, oldblock;
ext4_fsblk_t *ablocks = NULL; /* array of allocated blocks */
ablocks = kzalloc_objs(ext4_fsblk_t, depth, gfp_flags);
ext4_fsblk_t newblock, goal = 0;
ext4_lblk_t *logical, ext4_fsblk_t *phys)
ext4_lblk_t *logical, ext4_fsblk_t *phys,
ext4_fsblk_t blk;
static ext4_fsblk_t ext4_ext_find_goal(struct inode *inode,
ext4_fsblk_t leaf;
ext4_fsblk_t ext_pblk = ext4_ext_pblock(ex);
ext4_fsblk_t last_pblk, pblk;
ext4_fsblk_t pblk;
static ext4_fsblk_t
ext4_fsblk_t goal, newblock;
ext4_fsblk_t pblk;
ext4_fsblk_t ee_pblock;
ext4_fsblk_t ee_pblock;
ext4_fsblk_t newblock;
ext4_fsblk_t prev_pblk, ee_pblk;
ext4_fsblk_t block = ext4_ext_pblock(ext);
ext4_fsblk_t next_pblk, ee_pblk;
ext4_fsblk_t block = ext4_idx_pblock(ext_idx);
ext4_lblk_t lblk, ext4_fsblk_t *pblk,
unsigned int *allocated, ext4_fsblk_t newblock)
ext4_fsblk_t ee_start = ext4_ext_pblock(ex);
ext4_fsblk_t newblock = 0, pblk;
ext4_fsblk_t ee_start = ext4_ext_pblock(ex);
int depth, ext4_fsblk_t pblk, ext4_lblk_t lblk)
ext4_fsblk_t pblk;
int len, int unwritten, ext4_fsblk_t pblk)
ext4_fsblk_t cmp1, cmp2;
ext4_fsblk_t newblock, int level)
int logical, ext4_fsblk_t ptr)
ext4_lblk_t len, ext4_fsblk_t pblk,
ext4_fsblk_t block;
ext4_lblk_t lblk, ext4_lblk_t len, ext4_fsblk_t pblk)
ext4_fsblk_t ee_start;
ext4_lblk_t len, ext4_fsblk_t pblk,
ext4_lblk_t len, ext4_fsblk_t pblk,
ext4_lblk_t len, ext4_fsblk_t pblk,
es->es_pblk |= ((ext4_fsblk_t)EXTENT_STATUS_REFERENCED) << ES_SHIFT;
es->es_pblk &= ~(((ext4_fsblk_t)EXTENT_STATUS_REFERENCED) << ES_SHIFT);
static inline ext4_fsblk_t ext4_es_pblock(struct extent_status *es)
static inline ext4_fsblk_t ext4_es_show_pblock(struct extent_status *es)
ext4_fsblk_t pblock = ext4_es_pblock(es);
ext4_fsblk_t pb)
ext4_fsblk_t block;
ext4_fsblk_t pb,
es->es_pblk = (((ext4_fsblk_t)status << ES_SHIFT) & ES_MASK) |
#define ES_SHIFT (sizeof(ext4_fsblk_t)*8 - ES_FLAGS)
#define ES_MASK (~((ext4_fsblk_t)0) << ES_SHIFT)
#define ES_TYPE_MASK ((ext4_fsblk_t)(EXTENT_STATUS_WRITTEN | \
ext4_fsblk_t es_pblk; /* first physical block */
ext4_lblk_t lblk, ext4_fsblk_t pblk, int len, int replay)
ext4_fsblk_t start_pblk;
bool ext4_fc_replay_check_excluded(struct super_block *sb, ext4_fsblk_t blk)
ext4_fsblk_t pblk;
static inline ext4_fsblk_t ext4_fsmap_next_pblk(struct ext4_fsmap *fmr)
ext4_fsblk_t fsb, fs_start, fs_end;
ext4_fsblk_t fsb;
ext4_fsblk_t fslen;
ext4_fsblk_t fsb, ext4_fsblk_t len,
ext4_fsblk_t fsb = ext4_group_first_block_no(sb, agno);
ext4_fsblk_t len;
ext4_fsblk_t gfi_next_fsblk; /* next fsblock we expect */
ext4_fsblk_t start_fsb;
ext4_fsblk_t end_fsb;
ext4_fsblk_t bofs;
ext4_fsblk_t eofs;
ext4_fsblk_t rec_fsblk = rec->fmr_physical;
ext4_fsblk_t bitmap_blk;
ext4_fsblk_t blk;
ext4_fsblk_t freec, avefreec;
ext4_fsblk_t blk;
ext4_fsblk_t nr;
static ext4_fsblk_t ext4_find_near(struct inode *inode, Indirect *ind)
static ext4_fsblk_t ext4_find_goal(struct inode *inode, ext4_lblk_t block,
ext4_fsblk_t goal;
ext4_fsblk_t b, new_blocks[4];
ext4_fsblk_t current_block;
ext4_fsblk_t first_block = 0;
ext4_fsblk_t blk;
ext4_fsblk_t block_to_free,
ext4_fsblk_t block_to_free = 0; /* Starting block # of a run */
ext4_fsblk_t nr; /* Current block # */
ext4_lblk_t *m_lblk, ext4_fsblk_t *m_pblk,
ext4_fsblk_t pblock = *m_pblk;
ext4_fsblk_t pblock;
ext4_fsblk_t next_pblk = 0;
int ext4_issue_zeroout(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk,
ext4_fsblk_t start, end;
ext4_fsblk_t *ret_block)
ext4_fsblk_t block;
ext4_fsblk_t b, end, table;
b = block & ~((ext4_fsblk_t) ra_blks - 1);
ext4_fsblk_t err_blk = 0;
ext4_fsblk_t err_blk = 0;
ext4_fsblk_t sb_block;
ext4_fsblk_t blk = params->reserved_blocks;
ext4_fsblk_t n_blocks_count;
ext4_fsblk_t n_blocks_count;
ext4_fsblk_t found;
ext4_fsblk_t block;
ext4_fsblk_t block;
ext4_fsblk_t blocknr;
ext4_fsblk_t start;
ext4_fsblk_t first_group_block;
ext4_fsblk_t a;
ext4_fsblk_t discard_block;
ext4_fsblk_t block;
void ext4_mb_mark_bb(struct super_block *sb, ext4_fsblk_t block,
ext4_fsblk_t start;
ext4_fsblk_t end;
ext4_mb_check_group_pa(ext4_fsblk_t goal_block,
ext4_fsblk_t cur_distance, new_distance;
ext4_fsblk_t start;
ext4_fsblk_t goal_block;
ext4_fsblk_t grp_blk;
ext4_fsblk_t blocknr;
ext4_fsblk_t goal;
static ext4_fsblk_t
ext4_fsblk_t goal, block;
ext4_fsblk_t ext4_mb_new_blocks(handle_t *handle,
ext4_fsblk_t block = 0;
static void ext4_free_blocks_simple(struct inode *inode, ext4_fsblk_t block,
ext4_fsblk_t block, unsigned long count,
struct buffer_head *bh, ext4_fsblk_t block,
ext4_fsblk_t block, unsigned long count)
ext4_fsblk_t first_cluster = EXT4_B2C(sbi, block);
ext4_fsblk_t last_cluster = EXT4_B2C(sbi, block + count - 1);
ext4_fsblk_t first_data_blk =
ext4_fsblk_t max_blks = ext4_blocks_count(EXT4_SB(sb)->s_es);
ext4_get_group_no_and_offset(sb, (ext4_fsblk_t) start,
ext4_get_group_no_and_offset(sb, (ext4_fsblk_t) end,
ext4_fsblk_t
void ext4_free_blocks_simple_test(struct inode *inode, ext4_fsblk_t block,
ext4_fsblk_t pa_pstart; /* phys. block */
static inline ext4_fsblk_t ext4_grp_offs_to_block(struct super_block *sb,
extern ext4_fsblk_t
ext4_fsblk_t block, unsigned long count);
ext4_fsblk_t pblock,
ext4_fsblk_t pblock,
ext4_fsblk_t first_pblock, last_pblock;
ext4_fsblk_t block;
ext4_fsblk_t blk;
ext4_fsblk_t pblock, struct migrate_struct *lb)
ext4_fsblk_t pblock,
ext4_fsblk_t mmp_block;
ext4_fsblk_t mmp_block)
ext4_fsblk_t mmp_block)
ext4_fsblk_t blk;
ext4_fsblk_t backup_block;
ext4_fsblk_t first_block = ext4_group_first_block_no(sb, group);
backup_block = ((ext4_fsblk_t)group) * bpg + blk_off;
ext4_fsblk_t start = ext4_blocks_count(es);
ext4_fsblk_t end = start + input->blocks_count;
ext4_fsblk_t itend = input->inode_table + sbi->s_itb_per_group;
ext4_fsblk_t metaend;
const ext4_fsblk_t overhead)
ext4_fsblk_t blocks_count = 0;
ext4_fsblk_t free_blocks = 0;
ext4_fsblk_t reserved_blocks = 0;
ext4_fsblk_t o_blocks_count;
ext4_fsblk_t n_blocks_count)
ext4_fsblk_t o_blocks_count;
ext4_fsblk_t o_blocks_count, ext4_grpblk_t add)
ext4_fsblk_t n_blocks_count)
ext4_fsblk_t o_blocks_count;
ext4_fsblk_t nr;
int ext4_resize_fs(struct super_block *sb, ext4_fsblk_t n_blocks_count)
ext4_fsblk_t o_blocks_count;
ext4_fsblk_t n_blocks_count_retry = 0;
n_blocks_count = (ext4_fsblk_t)n_group *
ext4_fsblk_t start_blk;
ext4_fsblk_t last_blk;
ext4_fsblk_t next_group_start;
ext4_fsblk_t blk)
ext4_fsblk_t first_cluster, ext4_fsblk_t last_cluster)
ext4_fsblk_t start;
ext4_fsblk_t start;
ext4_fsblk_t block;
const ext4_fsblk_t blk = primary->b_blocknr;
(ext4_fsblk_t)EXT4_BLOCKS_PER_GROUP(sb) +
ext4_fsblk_t gdblock = EXT4_SB(sb)->s_sbh->b_blocknr + 1 + gdb_num;
ext4_fsblk_t gdblock;
unsigned long ino, ext4_fsblk_t block,
ext4_fsblk_t block;
ext4_fsblk_t s_sb_block;
ext4_fsblk_t ext4_block_bitmap(struct super_block *sb,
ext4_fsblk_t sb_block,
ext4_fsblk_t first_block = le32_to_cpu(sbi->s_es->s_first_data_block);
ext4_fsblk_t last_block;
ext4_fsblk_t last_bg_block = sb_block + ext4_bg_num_gdb(sb, 0);
ext4_fsblk_t block_bitmap;
ext4_fsblk_t inode_bitmap;
ext4_fsblk_t inode_table;
(ext4_fsblk_t)le32_to_cpu(bg->bg_block_bitmap_hi) << 32 : 0);
ext4_fsblk_t ext4_inode_bitmap(struct super_block *sb,
(ext4_fsblk_t)le32_to_cpu(bg->bg_inode_bitmap_hi) << 32 : 0);
ext4_fsblk_t ext4_inode_table(struct super_block *sb,
(ext4_fsblk_t)le32_to_cpu(bg->bg_inode_table_hi) << 32 : 0);
static ext4_fsblk_t descriptor_loc(struct super_block *sb,
ext4_fsblk_t logical_sb_block, int nr)
struct ext4_group_desc *bg, ext4_fsblk_t blk)
struct ext4_group_desc *bg, ext4_fsblk_t blk)
struct ext4_group_desc *bg, ext4_fsblk_t blk)
ext4_fsblk_t first_block, last_block, b;
ext4_fsblk_t overhead = 0;
ext4_fsblk_t resv_clusters;
resv_clusters = min_t(ext4_fsblk_t, resv_clusters, 4096);
ext4_fsblk_t logical_sb_block,
ext4_fsblk_t block;
static int ext4_load_super(struct super_block *sb, ext4_fsblk_t *lsb,
ext4_fsblk_t logical_sb_block;
ext4_fsblk_t logical_sb_block;
dev_t j_dev, ext4_fsblk_t *j_start,
ext4_fsblk_t *j_len)
ext4_fsblk_t sb_block;
ext4_fsblk_t j_start;
ext4_fsblk_t j_len;
ext4_fsblk_t overhead = 0, resv_blocks;
unsigned int line, ext4_fsblk_t block, int error,
unsigned int line, ext4_fsblk_t block,
ext4_fsblk_t clusters = (ext4_blocks_count(sbi->s_es) >>
ext4_fsblk_t goal, block;
__field( ext4_fsblk_t, u_pblk )
__field( ext4_fsblk_t, u_pblk )
__field( ext4_fsblk_t, i_pblk )
__field( ext4_fsblk_t, pblk )
TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk),
__field( ext4_fsblk_t, pblk )
unsigned int allocated, ext4_fsblk_t newblock),
__field( ext4_fsblk_t, pblk )
__field( ext4_fsblk_t, newblk )
__field( ext4_fsblk_t, pblk )
TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk,
__field( ext4_fsblk_t, pblk )
ext4_lblk_t from, ext4_fsblk_t to,
__field( ext4_fsblk_t, ee_pblk )
__field( ext4_fsblk_t, pc_pclu )
__field( ext4_fsblk_t, ee_pblk )
__field( ext4_fsblk_t, pc_pclu )
TP_PROTO(struct inode *inode, ext4_fsblk_t pblk),
__field( ext4_fsblk_t, pblk )
__field( ext4_fsblk_t, pc_pclu )
__field( ext4_fsblk_t, pblk )
__field( ext4_fsblk_t, pblk )
__field( ext4_fsblk_t, pblk )
__field( ext4_fsblk_t, pblk )
TP_PROTO(struct super_block *sb, ext4_fsblk_t fsblk,
__field(ext4_fsblk_t, fsblk)