Lines Matching refs:parent
418 * free inodes than average (starting at parent's group).
421 static int find_group_orlov(struct super_block *sb, struct inode *parent,
425 ext4_group_t parent_group = EXT4_I(parent)->i_block_group;
455 ((parent == d_inode(sb->s_root)) ||
456 (ext4_test_inode_flag(parent, EXT4_INODE_TOPDIR)))) {
463 ext4fs_dirhash(parent, qstr->name, qstr->len, &hinfo);
519 * inode for this parent directory
521 if (EXT4_I(parent)->i_last_alloc_group != ~0) {
522 parent_group = EXT4_I(parent)->i_last_alloc_group;
543 parent_group = EXT4_I(parent)->i_block_group;
568 static int find_group_other(struct super_block *sb, struct inode *parent,
571 ext4_group_t parent_group = EXT4_I(parent)->i_block_group;
578 * parent. If we can't find space, use the Orlov algorithm to
580 * parent directory's inode information so that use that flex
598 if (!retry && EXT4_I(parent)->i_last_alloc_group != ~0) {
600 parent_group = EXT4_I(parent)->i_last_alloc_group;
611 return find_group_orlov(sb, parent, group, mode, NULL);
615 * Try to place the inode in its parent directory
625 * parent. We want to cause files in a common directory to all land in
627 * directory which shares a blockgroup with our parent to land in a
632 *group = (*group + parent->i_ino) % ngroups;
920 * For other inodes, search forward from the parent directory's block