Lines Matching defs:rmap

140 /* Look for a corresponding rmap for this irec. */
147 struct xfs_rmap_irec *rmap)
171 * range rmap lookup to make sure we get the correct owner/offset.
175 owner, offset, rflags, rmap, &has_rmap);
178 owner, offset, rflags, rmap, &has_rmap);
196 struct xfs_rmap_irec rmap;
203 /* Find the rmap record for this irec. */
204 if (!xchk_bmap_get_rmap(info, irec, agbno, owner, &rmap))
208 * The rmap must be an exact match for this incore file mapping record,
211 if (rmap.rm_startblock != agbno)
215 rmap_end = (unsigned long long)rmap.rm_startblock + rmap.rm_blockcount;
221 if (rmap.rm_offset != irec->br_startoff)
225 rmap_end = (unsigned long long)rmap.rm_offset + rmap.rm_blockcount;
231 if (rmap.rm_owner != owner)
237 * the rmap. Note that the (in-memory) CoW fork distinguishes between
238 * unwritten and written extents, but we don't track that in the rmap
243 !!(rmap.rm_flags & XFS_RMAP_UNWRITTEN))
248 !!(rmap.rm_flags & XFS_RMAP_ATTR_FORK))
251 if (rmap.rm_flags & XFS_RMAP_BMBT_BLOCK)
263 struct xfs_rmap_irec rmap;
270 /* Find the rmap record for this irec. */
271 if (!xchk_bmap_get_rmap(info, irec, agbno, owner, &rmap))
275 * CoW staging extents are owned by the refcount btree, so the rmap
279 if (rmap.rm_startblock > agbno)
283 rmap_end = (unsigned long long)rmap.rm_startblock + rmap.rm_blockcount;
289 if (rmap.rm_owner != owner)
296 * the rmap records because the blocks are owned (on-disk) by the
299 if (rmap.rm_flags & XFS_RMAP_ATTR_FORK)
302 if (rmap.rm_flags & XFS_RMAP_BMBT_BLOCK)
305 if (rmap.rm_flags & XFS_RMAP_UNWRITTEN)
556 /* Can we find bmaps that fit this rmap? */
594 * However, rmap extent record lengths are constrained only by AG
596 * entire rmap is covered by bmbt records.
630 /* Make sure each rmap has a corresponding bmbt entry. */
713 /* Don't support realtime rmap checks yet. */
736 * Decide if we want to walk every rmap btree in the fs to make sure that each
737 * rmap for this file fork has corresponding bmbt entries.
758 /* Make sure each rmap has a corresponding bmbt entry. */
988 * reduces runtime. Cross referencing with the rmap is simpler because
989 * the rmap must match the combined mapping exactly.