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()
249 move_extent_per_page(struct file *o_filp, struct inode *donor_inode, in move_extent_per_page() argument
305 *err = mext_page_double_lock(orig_inode, donor_inode, orig_page_offset, in move_extent_per_page()
317 ext4_double_down_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
325 unwritten &= mext_check_coverage(donor_inode, donor_blk_offset, in move_extent_per_page()
331 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
342 donor_inode, orig_blk_offset, in move_extent_per_page()
346 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
361 ext4_double_down_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
362 replaced_count = ext4_swap_extents(handle, orig_inode, donor_inode, in move_extent_per_page()
365 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
421 ext4_double_down_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
422 replaced_count = ext4_swap_extents(handle, donor_inode, orig_inode, in move_extent_per_page()
425 ext4_double_up_write_data_sem(orig_inode, donor_inode); in move_extent_per_page()
451 struct inode *donor_inode, __u64 orig_start, in mext_check_arguments() argument
459 donor_eof = (i_size_read(donor_inode) + blocksize - 1) >> blkbits; in mext_check_arguments()
462 if (donor_inode->i_mode & (S_ISUID|S_ISGID)) { in mext_check_arguments()
465 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
469 if (IS_IMMUTABLE(donor_inode) || IS_APPEND(donor_inode)) in mext_check_arguments()
473 if (IS_SWAPFILE(orig_inode) || IS_SWAPFILE(donor_inode)) { in mext_check_arguments()
475 orig_inode->i_ino, donor_inode->i_ino); in mext_check_arguments()
479 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()
659 donor_inode->i_blkbits); in ext4_move_extents()
670 ext4_double_up_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
672 move_extent_per_page(o_filp, donor_inode, in ext4_move_extents()
676 ext4_double_down_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
689 ext4_discard_preallocations(donor_inode, 0); in ext4_move_extents()
693 ext4_double_up_write_data_sem(orig_inode, donor_inode); in ext4_move_extents()
694 unlock_two_nondirectories(orig_inode, donor_inode); in ext4_move_extents()