Lines Matching refs:tip
1373 struct xfs_inode *tip) /* tmp inode */ in xfs_swap_extents_check_format() argument
1378 tip->i_d.di_format == XFS_DINODE_FMT_LOCAL) in xfs_swap_extents_check_format()
1385 if (ip->i_d.di_nextents < tip->i_d.di_nextents) in xfs_swap_extents_check_format()
1401 tip->i_d.di_format == XFS_DINODE_FMT_BTREE) in xfs_swap_extents_check_format()
1405 if (tip->i_d.di_format == XFS_DINODE_FMT_EXTENTS && in xfs_swap_extents_check_format()
1406 XFS_IFORK_NEXTENTS(tip, XFS_DATA_FORK) > in xfs_swap_extents_check_format()
1413 XFS_IFORK_MAXEXT(tip, XFS_DATA_FORK)) in xfs_swap_extents_check_format()
1425 if (tip->i_d.di_format == XFS_DINODE_FMT_BTREE) { in xfs_swap_extents_check_format()
1427 XFS_BMAP_BMDR_SPACE(tip->i_df.if_broot) > XFS_IFORK_BOFF(ip)) in xfs_swap_extents_check_format()
1429 if (XFS_IFORK_NEXTENTS(tip, XFS_DATA_FORK) <= in xfs_swap_extents_check_format()
1436 if (XFS_IFORK_Q(tip) && in xfs_swap_extents_check_format()
1437 XFS_BMAP_BMDR_SPACE(ip->i_df.if_broot) > XFS_IFORK_BOFF(tip)) in xfs_swap_extents_check_format()
1440 XFS_IFORK_MAXEXT(tip, XFS_DATA_FORK)) in xfs_swap_extents_check_format()
1471 struct xfs_inode *tip) in xfs_swap_extent_rmap() argument
1492 tip_flags2 = tip->i_d.di_flags2; in xfs_swap_extent_rmap()
1494 tip->i_d.di_flags2 |= XFS_DIFLAG2_REFLINK; in xfs_swap_extent_rmap()
1503 error = xfs_bmapi_read(tip, offset_fsb, count_fsb, &tirec, in xfs_swap_extent_rmap()
1510 trace_xfs_swap_extent_rmap_remap(tip, &tirec); in xfs_swap_extent_rmap()
1516 trace_xfs_swap_extent_rmap_remap_piece(tip, &tirec); in xfs_swap_extent_rmap()
1534 trace_xfs_swap_extent_rmap_remap_piece(tip, &uirec); in xfs_swap_extent_rmap()
1537 xfs_bmap_unmap_extent(tp, tip, &uirec); in xfs_swap_extent_rmap()
1546 xfs_bmap_map_extent(tp, tip, &irec); in xfs_swap_extent_rmap()
1565 tip->i_d.di_flags2 = tip_flags2; in xfs_swap_extent_rmap()
1570 tip->i_d.di_flags2 = tip_flags2; in xfs_swap_extent_rmap()
1579 struct xfs_inode *tip, in xfs_swap_extent_forks() argument
1599 if ( ((XFS_IFORK_Q(tip) != 0) && (tip->i_d.di_anextents > 0)) && in xfs_swap_extent_forks()
1600 (tip->i_d.di_aformat != XFS_DINODE_FMT_LOCAL)) { in xfs_swap_extent_forks()
1601 error = xfs_bmap_count_blocks(tp, tip, XFS_ATTR_FORK, &junk, in xfs_swap_extent_forks()
1617 if (tip->i_d.di_version == 3 && in xfs_swap_extent_forks()
1618 tip->i_d.di_format == XFS_DINODE_FMT_BTREE) in xfs_swap_extent_forks()
1624 swap(ip->i_df, tip->i_df); in xfs_swap_extent_forks()
1630 ip->i_d.di_nblocks = tip->i_d.di_nblocks - taforkblks + aforkblks; in xfs_swap_extent_forks()
1631 tip->i_d.di_nblocks = tmp + taforkblks - aforkblks; in xfs_swap_extent_forks()
1633 swap(ip->i_d.di_nextents, tip->i_d.di_nextents); in xfs_swap_extent_forks()
1634 swap(ip->i_d.di_format, tip->i_d.di_format); in xfs_swap_extent_forks()
1645 ASSERT(tip->i_delayed_blks == 0); in xfs_swap_extent_forks()
1646 tip->i_delayed_blks = ip->i_delayed_blks; in xfs_swap_extent_forks()
1660 switch (tip->i_d.di_format) { in xfs_swap_extent_forks()
1666 ASSERT(tip->i_d.di_version < 3 || in xfs_swap_extent_forks()
1719 struct xfs_inode *tip, /* tmp inode */ in xfs_swap_extents() argument
1737 lock_two_nondirectories(VFS_I(ip), VFS_I(tip)); in xfs_swap_extents()
1739 xfs_lock_two_inodes(ip, XFS_MMAPLOCK_EXCL, tip, XFS_MMAPLOCK_EXCL); in xfs_swap_extents()
1742 if ((VFS_I(ip)->i_mode & S_IFMT) != (VFS_I(tip)->i_mode & S_IFMT)) { in xfs_swap_extents()
1748 if (XFS_IS_REALTIME_INODE(ip) != XFS_IS_REALTIME_INODE(tip)) { in xfs_swap_extents()
1756 error = xfs_swap_extent_flush(tip); in xfs_swap_extents()
1760 if (xfs_inode_has_cow_data(tip)) { in xfs_swap_extents()
1761 error = xfs_reflink_cancel_cow_range(tip, 0, NULLFILEOFF, true); in xfs_swap_extents()
1774 uint32_t tipnext = XFS_IFORK_NEXTENTS(tip, w); in xfs_swap_extents()
1792 if (tipnext == (XFS_IFORK_MAXEXT(tip, w) + 1)) in xfs_swap_extents()
1793 resblks += XFS_IFORK_MAXEXT(tip, w); in xfs_swap_extents()
1803 xfs_lock_two_inodes(ip, XFS_ILOCK_EXCL, tip, XFS_ILOCK_EXCL); in xfs_swap_extents()
1806 xfs_trans_ijoin(tp, tip, 0); in xfs_swap_extents()
1812 sxp->sx_length != tip->i_d.di_size) { in xfs_swap_extents()
1818 trace_xfs_swap_extent_before(tip, 1); in xfs_swap_extents()
1821 error = xfs_swap_extents_check_format(ip, tip); in xfs_swap_extents()
1855 error = xfs_swap_extent_rmap(&tp, ip, tip); in xfs_swap_extents()
1857 error = xfs_swap_extent_forks(tp, ip, tip, &src_log_flags, in xfs_swap_extents()
1864 (tip->i_d.di_flags2 & XFS_DIFLAG2_REFLINK)) { in xfs_swap_extents()
1867 ip->i_d.di_flags2 |= tip->i_d.di_flags2 & XFS_DIFLAG2_REFLINK; in xfs_swap_extents()
1868 tip->i_d.di_flags2 &= ~XFS_DIFLAG2_REFLINK; in xfs_swap_extents()
1869 tip->i_d.di_flags2 |= f & XFS_DIFLAG2_REFLINK; in xfs_swap_extents()
1875 ASSERT(tip->i_cformat == XFS_DINODE_FMT_EXTENTS); in xfs_swap_extents()
1877 swap(ip->i_cnextents, tip->i_cnextents); in xfs_swap_extents()
1878 swap(ip->i_cowfp, tip->i_cowfp); in xfs_swap_extents()
1884 if (tip->i_cowfp && tip->i_cowfp->if_bytes) in xfs_swap_extents()
1885 xfs_inode_set_cowblocks_tag(tip); in xfs_swap_extents()
1887 xfs_inode_clear_cowblocks_tag(tip); in xfs_swap_extents()
1891 xfs_trans_log_inode(tp, tip, target_log_flags); in xfs_swap_extents()
1900 error = xfs_swap_change_owner(&tp, ip, tip); in xfs_swap_extents()
1905 error = xfs_swap_change_owner(&tp, tip, ip); in xfs_swap_extents()
1920 trace_xfs_swap_extent_after(tip, 1); in xfs_swap_extents()
1924 xfs_iunlock(tip, lock_flags); in xfs_swap_extents()
1925 unlock_two_nondirectories(VFS_I(ip), VFS_I(tip)); in xfs_swap_extents()