Lines Matching refs:ent
3299 static int ext4_rename_dir_prepare(handle_t *handle, struct ext4_renament *ent) in ext4_rename_dir_prepare() argument
3303 ent->dir_bh = ext4_get_first_dir_block(handle, ent->inode, in ext4_rename_dir_prepare()
3304 &retval, &ent->parent_de, in ext4_rename_dir_prepare()
3305 &ent->dir_inlined); in ext4_rename_dir_prepare()
3306 if (!ent->dir_bh) in ext4_rename_dir_prepare()
3308 if (le32_to_cpu(ent->parent_de->inode) != ent->dir->i_ino) in ext4_rename_dir_prepare()
3310 BUFFER_TRACE(ent->dir_bh, "get_write_access"); in ext4_rename_dir_prepare()
3311 return ext4_journal_get_write_access(handle, ent->dir_bh); in ext4_rename_dir_prepare()
3314 static int ext4_rename_dir_finish(handle_t *handle, struct ext4_renament *ent, in ext4_rename_dir_finish() argument
3319 ent->parent_de->inode = cpu_to_le32(dir_ino); in ext4_rename_dir_finish()
3320 BUFFER_TRACE(ent->dir_bh, "call ext4_handle_dirty_metadata"); in ext4_rename_dir_finish()
3321 if (!ent->dir_inlined) { in ext4_rename_dir_finish()
3322 if (is_dx(ent->inode)) { in ext4_rename_dir_finish()
3324 ent->inode, in ext4_rename_dir_finish()
3325 ent->dir_bh); in ext4_rename_dir_finish()
3328 ent->inode, in ext4_rename_dir_finish()
3329 ent->dir_bh); in ext4_rename_dir_finish()
3332 retval = ext4_mark_inode_dirty(handle, ent->inode); in ext4_rename_dir_finish()
3335 ext4_std_error(ent->dir->i_sb, retval); in ext4_rename_dir_finish()
3341 static int ext4_setent(handle_t *handle, struct ext4_renament *ent, in ext4_setent() argument
3346 BUFFER_TRACE(ent->bh, "get write access"); in ext4_setent()
3347 retval = ext4_journal_get_write_access(handle, ent->bh); in ext4_setent()
3350 ent->de->inode = cpu_to_le32(ino); in ext4_setent()
3351 if (ext4_has_feature_filetype(ent->dir->i_sb)) in ext4_setent()
3352 ent->de->file_type = file_type; in ext4_setent()
3353 ent->dir->i_version++; in ext4_setent()
3354 ent->dir->i_ctime = ent->dir->i_mtime = in ext4_setent()
3355 ext4_current_time(ent->dir); in ext4_setent()
3356 ext4_mark_inode_dirty(handle, ent->dir); in ext4_setent()
3357 BUFFER_TRACE(ent->bh, "call ext4_handle_dirty_metadata"); in ext4_setent()
3358 if (!ent->inlined) { in ext4_setent()
3360 ent->dir, ent->bh); in ext4_setent()
3362 ext4_std_error(ent->dir->i_sb, retval); in ext4_setent()
3366 brelse(ent->bh); in ext4_setent()
3367 ent->bh = NULL; in ext4_setent()
3389 static void ext4_rename_delete(handle_t *handle, struct ext4_renament *ent, in ext4_rename_delete() argument
3399 if (le32_to_cpu(ent->de->inode) != ent->inode->i_ino || in ext4_rename_delete()
3400 ent->de->name_len != ent->dentry->d_name.len || in ext4_rename_delete()
3401 strncmp(ent->de->name, ent->dentry->d_name.name, in ext4_rename_delete()
3402 ent->de->name_len) || in ext4_rename_delete()
3404 retval = ext4_find_delete_entry(handle, ent->dir, in ext4_rename_delete()
3405 &ent->dentry->d_name); in ext4_rename_delete()
3407 retval = ext4_delete_entry(handle, ent->dir, ent->de, ent->bh); in ext4_rename_delete()
3409 retval = ext4_find_delete_entry(handle, ent->dir, in ext4_rename_delete()
3410 &ent->dentry->d_name); in ext4_rename_delete()
3415 ext4_warning_inode(ent->dir, in ext4_rename_delete()
3417 ent->dir->i_nlink, retval); in ext4_rename_delete()
3421 static void ext4_update_dir_count(handle_t *handle, struct ext4_renament *ent) in ext4_update_dir_count() argument
3423 if (ent->dir_nlink_delta) { in ext4_update_dir_count()
3424 if (ent->dir_nlink_delta == -1) in ext4_update_dir_count()
3425 ext4_dec_count(handle, ent->dir); in ext4_update_dir_count()
3427 ext4_inc_count(handle, ent->dir); in ext4_update_dir_count()
3428 ext4_mark_inode_dirty(handle, ent->dir); in ext4_update_dir_count()
3432 static struct inode *ext4_whiteout_for_rename(struct ext4_renament *ent, in ext4_whiteout_for_rename() argument
3443 credits += (EXT4_MAXQUOTAS_TRANS_BLOCKS(ent->dir->i_sb) + in ext4_whiteout_for_rename()
3446 wh = ext4_new_inode_start_handle(ent->dir, S_IFCHR | WHITEOUT_MODE, in ext4_whiteout_for_rename()
3447 &ent->dentry->d_name, 0, NULL, in ext4_whiteout_for_rename()
3455 ext4_should_retry_alloc(ent->dir->i_sb, &retries)) in ext4_whiteout_for_rename()