Lines Matching refs:donor_inode
72 struct inode *donor_inode) in ext4_double_up_write_data_sem() argument
75 up_write(&EXT4_I(donor_inode)->i_data_sem); in ext4_double_up_write_data_sem()
247 move_extent_per_page(struct file *o_filp, struct inode *donor_inode, in move_extent_per_page() argument
303 *err = mext_page_double_lock(orig_inode, donor_inode, orig_page_offset, in move_extent_per_page()
315 ext4_double_down_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
323 unwritten &= mext_check_coverage(donor_inode, donor_blk_offset, in move_extent_per_page()
329 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
340 donor_inode, orig_blk_offset, in move_extent_per_page()
344 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
359 ext4_double_down_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
360 replaced_count = ext4_swap_extents(handle, orig_inode, donor_inode, in move_extent_per_page()
363 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
419 ext4_double_down_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
420 replaced_count = ext4_swap_extents(handle, donor_inode, orig_inode, in move_extent_per_page()
423 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
449 struct inode *donor_inode, __u64 orig_start, in mext_check_arguments() argument
457 donor_eof = (i_size_read(donor_inode) + blocksize - 1) >> blkbits; in mext_check_arguments()
460 if (donor_inode->i_mode & (S_ISUID|S_ISGID)) { in mext_check_arguments()
463 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
467 if (IS_IMMUTABLE(donor_inode) || IS_APPEND(donor_inode)) in mext_check_arguments()
471 if (IS_SWAPFILE(orig_inode) || IS_SWAPFILE(donor_inode)) { in mext_check_arguments()
474 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
478 if (ext4_is_quota_file(orig_inode) && ext4_is_quota_file(donor_inode)) { in mext_check_arguments()
481 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
490 } else if (!(ext4_test_inode_flag(donor_inode, EXT4_INODE_EXTENTS))) { in mext_check_arguments()
492 "based file [ino:donor %lu]\n", donor_inode->i_ino); in mext_check_arguments()
496 if ((!orig_inode->i_size) || (!donor_inode->i_size)) { in mext_check_arguments()
506 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
517 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
531 donor_inode->i_ino); in mext_check_arguments()
557 struct inode *donor_inode = file_inode(d_filp); in ext4_move_extents() local
564 if (orig_inode->i_sb != donor_inode->i_sb) { in ext4_move_extents()
567 orig_inode->i_ino, donor_inode->i_ino); in ext4_move_extents()
572 if (orig_inode == donor_inode) { in ext4_move_extents()
575 orig_inode->i_ino, donor_inode->i_ino); in ext4_move_extents()
580 if (!S_ISREG(orig_inode->i_mode) || !S_ISREG(donor_inode->i_mode)) { in ext4_move_extents()
583 orig_inode->i_ino, donor_inode->i_ino); in ext4_move_extents()
590 ext4_should_journal_data(donor_inode)) { in ext4_move_extents()
596 if (IS_ENCRYPTED(orig_inode) || IS_ENCRYPTED(donor_inode)) { in ext4_move_extents()
603 lock_two_nondirectories(orig_inode, donor_inode); in ext4_move_extents()
607 inode_dio_wait(donor_inode); in ext4_move_extents()
610 ext4_double_down_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
612 ret = mext_check_arguments(orig_inode, donor_inode, orig_blk, in ext4_move_extents()
660 donor_inode->i_blkbits); in ext4_move_extents()
671 ext4_double_up_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
673 move_extent_per_page(o_filp, donor_inode, in ext4_move_extents()
677 ext4_double_down_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
690 ext4_discard_preallocations(donor_inode); in ext4_move_extents()
695 ext4_double_up_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
696 unlock_two_nondirectories(orig_inode, donor_inode); in ext4_move_extents()