Lines Matching +full:data +full:- +full:mapping
1 /* SPDX-License-Identifier: GPL-2.0 */
31 #define IOMAP_INLINE 4 /* data inline in the inode */
37 * zeroing for areas that no data is copied to.
40 * written data and requires fdatasync to commit them to persistent storage.
51 * buffer heads for this mapping.
77 #define IOMAP_NULL_ADDR -1ULL /* addr is not valid */
82 u64 addr; /* disk offset of mapping, bytes */
83 loff_t offset; /* file offset of mapping, bytes */
84 u64 length; /* length of mapping, bytes */
85 u16 type; /* type of mapping */
86 u16 flags; /* flags for mapping */
96 return (iomap->addr + pos - iomap->offset) >> SECTOR_SHIFT; in iomap_sector()
100 * Returns the inline data pointer for logical offset @pos.
104 return iomap->inline_data + pos - iomap->offset; in iomap_inline_data()
108 * Check if the mapping's length is within the valid range for inline data.
109 * This is used to guard against accessing data beyond the page inline_data
114 return iomap->length <= PAGE_SIZE - offset_in_page(iomap->inline_data); in iomap_inline_data_valid()
118 * When a filesystem sets page_ops in an iomap mapping it returns, page_prepare
139 #define IOMAP_FAULT (1 << 3) /* mapping for page fault */
147 * Return the existing mapping at pos, or reserve space starting at
148 * pos for up to length, as long as we can do it as a single mapping.
149 * The actual length is returned in iomap->length.
159 * Written might be zero if no data was written.
166 * struct iomap_iter - Iterate through a range of a file
169 * calls to iomap_iter(). Treat as read-only in the body.
191 * iomap_length - length of the current iomap iteration
198 u64 end = iter->iomap.offset + iter->iomap.length; in iomap_length()
200 if (iter->srcmap.type != IOMAP_HOLE) in iomap_length()
201 end = min(end, iter->srcmap.offset + iter->srcmap.length); in iomap_length()
202 return min(iter->len, end - iter->pos); in iomap_length()
206 * iomap_iter_srcmap - return the source map for the current iomap iteration
212 * map in &i->iomap.
216 if (i->srcmap.type != IOMAP_HOLE) in iomap_iter_srcmap()
217 return &i->srcmap; in iomap_iter_srcmap()
218 return &i->iomap; in iomap_iter_srcmap()
231 int iomap_migrate_page(struct address_space *mapping, struct page *newpage,
250 sector_t iomap_bmap(struct address_space *mapping, sector_t bno,
303 int iomap_writepages(struct address_space *mapping,
308 * Flags for direct I/O ->end_io:
328 * the caller by returning -EAGAIN. Used to optimize direct I/O writes that
350 # define iomap_swapfile_activate(sis, swapfile, pagespan, ops) (-EIO)