Lines Matching refs:rmap

116 /* Look for a corresponding rmap for this irec. */
123 struct xfs_rmap_irec *rmap)
147 * range rmap lookup to make sure we get the correct owner/offset.
151 owner, offset, rflags, rmap, &has_rmap);
154 owner, offset, rflags, rmap, &has_rmap);
172 struct xfs_rmap_irec rmap;
179 /* Find the rmap record for this irec. */
180 if (!xchk_bmap_get_rmap(info, irec, agbno, owner, &rmap))
184 * The rmap must be an exact match for this incore file mapping record,
187 if (rmap.rm_startblock != agbno)
191 rmap_end = (unsigned long long)rmap.rm_startblock + rmap.rm_blockcount;
197 if (rmap.rm_offset != irec->br_startoff)
201 rmap_end = (unsigned long long)rmap.rm_offset + rmap.rm_blockcount;
207 if (rmap.rm_owner != owner)
213 * the rmap. Note that the (in-memory) CoW fork distinguishes between
214 * unwritten and written extents, but we don't track that in the rmap
219 !!(rmap.rm_flags & XFS_RMAP_UNWRITTEN))
224 !!(rmap.rm_flags & XFS_RMAP_ATTR_FORK))
227 if (rmap.rm_flags & XFS_RMAP_BMBT_BLOCK)
239 struct xfs_rmap_irec rmap;
246 /* Find the rmap record for this irec. */
247 if (!xchk_bmap_get_rmap(info, irec, agbno, owner, &rmap))
251 * CoW staging extents are owned by the refcount btree, so the rmap
255 if (rmap.rm_startblock > agbno)
259 rmap_end = (unsigned long long)rmap.rm_startblock + rmap.rm_blockcount;
265 if (rmap.rm_owner != owner)
272 * the rmap records because the blocks are owned (on-disk) by the
275 if (rmap.rm_flags & XFS_RMAP_ATTR_FORK)
278 if (rmap.rm_flags & XFS_RMAP_BMBT_BLOCK)
281 if (rmap.rm_flags & XFS_RMAP_UNWRITTEN)
532 /* Can we find bmaps that fit this rmap? */
570 * However, rmap extent record lengths are constrained only by AG
572 * entire rmap is covered by bmbt records.
606 /* Make sure each rmap has a corresponding bmbt entry. */
636 * Decide if we want to walk every rmap btree in the fs to make sure that each
637 * rmap for this file fork has corresponding bmbt entries.
653 /* Don't support realtime rmap checks yet. */
677 /* Make sure each rmap has a corresponding bmbt entry. */
907 * reduces runtime. Cross referencing with the rmap is simpler because
908 * the rmap must match the combined mapping exactly.