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()
418 ext4_double_down_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
419 replaced_count = ext4_swap_extents(handle, donor_inode, orig_inode, in move_extent_per_page()
422 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
448 struct inode *donor_inode, __u64 orig_start, in mext_check_arguments() argument
456 donor_eof = (i_size_read(donor_inode) + blocksize - 1) >> blkbits; in mext_check_arguments()
459 if (donor_inode->i_mode & (S_ISUID|S_ISGID)) { in mext_check_arguments()
462 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
466 if (IS_IMMUTABLE(donor_inode) || IS_APPEND(donor_inode)) in mext_check_arguments()
470 if (IS_SWAPFILE(orig_inode) || IS_SWAPFILE(donor_inode)) { in mext_check_arguments()
473 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
477 if (ext4_is_quota_file(orig_inode) && ext4_is_quota_file(donor_inode)) { in mext_check_arguments()
480 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
489 } else if (!(ext4_test_inode_flag(donor_inode, EXT4_INODE_EXTENTS))) { in mext_check_arguments()
491 "based file [ino:donor %lu]\n", donor_inode->i_ino); in mext_check_arguments()
495 if ((!orig_inode->i_size) || (!donor_inode->i_size)) { in mext_check_arguments()
505 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
516 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
526 donor_inode->i_ino); in mext_check_arguments()
552 struct inode *donor_inode = file_inode(d_filp); in ext4_move_extents() local
559 if (orig_inode->i_sb != donor_inode->i_sb) { in ext4_move_extents()
562 orig_inode->i_ino, donor_inode->i_ino); in ext4_move_extents()
567 if (orig_inode == donor_inode) { in ext4_move_extents()
570 orig_inode->i_ino, donor_inode->i_ino); in ext4_move_extents()
575 if (!S_ISREG(orig_inode->i_mode) || !S_ISREG(donor_inode->i_mode)) { in ext4_move_extents()
578 orig_inode->i_ino, donor_inode->i_ino); in ext4_move_extents()
585 ext4_should_journal_data(donor_inode)) { in ext4_move_extents()
592 ext4_encrypted_inode(donor_inode)) { in ext4_move_extents()
599 lock_two_nondirectories(orig_inode, donor_inode); in ext4_move_extents()
603 inode_dio_wait(donor_inode); in ext4_move_extents()
606 ext4_double_down_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
608 ret = mext_check_arguments(orig_inode, donor_inode, orig_blk, in ext4_move_extents()
656 donor_inode->i_blkbits); in ext4_move_extents()
667 ext4_double_up_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
669 move_extent_per_page(o_filp, donor_inode, in ext4_move_extents()
673 ext4_double_down_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
686 ext4_discard_preallocations(donor_inode); in ext4_move_extents()
691 ext4_double_up_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
692 unlock_two_nondirectories(orig_inode, donor_inode); in ext4_move_extents()