Lines Matching refs:imap
329 struct xfs_bmbt_irec imap; in xfs_map_blocks() local
373 xfs_iext_lookup_extent(ip, ip->i_cowfp, offset_fsb, &icur, &imap)) in xfs_map_blocks()
374 cow_fsb = imap.br_startoff; in xfs_map_blocks()
397 if (!xfs_iext_lookup_extent(ip, &ip->i_df, offset_fsb, &icur, &imap)) in xfs_map_blocks()
398 imap.br_startoff = end_fsb; /* fake a hole past EOF */ in xfs_map_blocks()
403 if (imap.br_startoff > offset_fsb) { in xfs_map_blocks()
404 imap.br_blockcount = imap.br_startoff - offset_fsb; in xfs_map_blocks()
405 imap.br_startoff = offset_fsb; in xfs_map_blocks()
406 imap.br_startblock = HOLESTARTBLOCK; in xfs_map_blocks()
407 imap.br_state = XFS_EXT_NORM; in xfs_map_blocks()
417 cow_fsb < imap.br_startoff + imap.br_blockcount) in xfs_map_blocks()
418 imap.br_blockcount = cow_fsb - imap.br_startoff; in xfs_map_blocks()
421 if (imap.br_startblock != HOLESTARTBLOCK && in xfs_map_blocks()
422 isnullstartblock(imap.br_startblock)) in xfs_map_blocks()
425 xfs_bmbt_to_iomap(ip, &wpc->iomap, &imap, 0); in xfs_map_blocks()
426 trace_xfs_map_blocks_found(ip, offset, count, whichfork, &imap); in xfs_map_blocks()
458 trace_xfs_map_blocks_alloc(ip, offset, count, whichfork, &imap); in xfs_map_blocks()