| /linux/fs/xfs/ |
| H A D | xfs_aops.c | 299 struct iomap_writepage_ctx *wpc, in xfs_imap_valid() argument 303 if (offset < wpc->iomap.offset || in xfs_imap_valid() 304 offset >= wpc->iomap.offset + wpc->iomap.length) in xfs_imap_valid() 311 if (wpc->iomap.flags & IOMAP_F_SHARED) in xfs_imap_valid() 321 if (XFS_WPC(wpc)->data_seq != READ_ONCE(ip->i_df.if_seq)) { in xfs_imap_valid() 322 trace_xfs_wb_data_iomap_invalid(ip, &wpc->iomap, in xfs_imap_valid() 323 XFS_WPC(wpc)->data_seq, XFS_DATA_FORK); in xfs_imap_valid() 327 XFS_WPC(wpc)->cow_seq != READ_ONCE(ip->i_cowfp->if_seq)) { in xfs_imap_valid() 328 trace_xfs_wb_cow_iomap_invalid(ip, &wpc->iomap, in xfs_imap_valid() 329 XFS_WPC(wpc)->cow_seq, XFS_COW_FORK); in xfs_imap_valid() [all …]
|
| /linux/fs/iomap/ |
| H A D | ioend.c | 136 int iomap_ioend_writeback_submit(struct iomap_writepage_ctx *wpc, int error) in iomap_ioend_writeback_submit() argument 138 struct iomap_ioend *ioend = wpc->wb_ctx; in iomap_ioend_writeback_submit() 143 if (WARN_ON_ONCE(wpc->iomap.flags & IOMAP_F_ANON_WRITE)) in iomap_ioend_writeback_submit() 152 if (wpc->iomap.flags & IOMAP_F_INTEGRITY) in iomap_ioend_writeback_submit() 159 static struct iomap_ioend *iomap_alloc_ioend(struct iomap_writepage_ctx *wpc, in iomap_alloc_ioend() argument 164 bio = bio_alloc_bioset(wpc->iomap.bdev, BIO_MAX_VECS, in iomap_alloc_ioend() 165 REQ_OP_WRITE | wbc_to_write_flags(wpc->wbc), in iomap_alloc_ioend() 167 bio->bi_iter.bi_sector = iomap_sector(&wpc->iomap, pos); in iomap_alloc_ioend() 168 bio->bi_write_hint = wpc->inode->i_write_hint; in iomap_alloc_ioend() 169 wbc_init_bio(wpc->wbc, bio); in iomap_alloc_ioend() [all …]
|
| H A D | buffered-io.c | 1889 static int iomap_writeback_range(struct iomap_writepage_ctx *wpc, in iomap_writeback_range() argument 1896 ret = wpc->ops->writeback_range(wpc, folio, pos, rlen, end_pos); in iomap_writeback_range() 1908 if (wpc->iomap.type != IOMAP_HOLE) in iomap_writeback_range() 1923 struct iomap_writepage_ctx *wpc, u64 *end_pos) in iomap_writeback_handle_eof() argument 1925 struct inode *inode = wpc->inode; in iomap_writeback_handle_eof() 1928 if (wpc->iomap.flags & IOMAP_F_FSVERITY) { in iomap_writeback_handle_eof() 1980 int iomap_writeback_folio(struct iomap_writepage_ctx *wpc, struct folio *folio) in iomap_writeback_folio() argument 1983 struct inode *inode = wpc->inode; in iomap_writeback_folio() 1998 if (!iomap_writeback_handle_eof(folio, wpc, &end_pos)) in iomap_writeback_folio() 2022 error = iomap_writeback_range(wpc, folio, pos, rlen, end_pos, in iomap_writeback_folio() [all …]
|
| /linux/fs/exfat/ |
| H A D | iomap.c | 211 static ssize_t exfat_writeback_range(struct iomap_writepage_ctx *wpc, in exfat_writeback_range() argument 214 if (offset < wpc->iomap.offset || in exfat_writeback_range() 215 offset >= wpc->iomap.offset + wpc->iomap.length) { in exfat_writeback_range() 218 error = __exfat_iomap_begin(wpc->inode, offset, len, in exfat_writeback_range() 219 0, &wpc->iomap, false); in exfat_writeback_range() 224 return iomap_add_to_ioend(wpc, folio, offset, end_pos, len); in exfat_writeback_range()
|
| /linux/block/ |
| H A D | fops.c | 524 static ssize_t blkdev_writeback_range(struct iomap_writepage_ctx *wpc, in blkdev_writeback_range() argument 527 loff_t isize = i_size_read(wpc->inode); in blkdev_writeback_range() 532 if (offset < wpc->iomap.offset || in blkdev_writeback_range() 533 offset >= wpc->iomap.offset + wpc->iomap.length) { in blkdev_writeback_range() 536 error = blkdev_iomap_begin(wpc->inode, offset, isize - offset, in blkdev_writeback_range() 537 IOMAP_WRITE, &wpc->iomap, NULL); in blkdev_writeback_range() 542 return iomap_add_to_ioend(wpc, folio, offset, end_pos, len); in blkdev_writeback_range() 553 struct iomap_writepage_ctx wpc = { in blkdev_writepages() local 559 return iomap_writepages(&wpc); in blkdev_writepages()
|
| /linux/include/linux/ |
| H A D | iomap.h | 537 ssize_t (*writeback_range)(struct iomap_writepage_ctx *wpc, 548 int (*writeback_submit)(struct iomap_writepage_ctx *wpc, int error); 568 ssize_t iomap_add_to_ioend(struct iomap_writepage_ctx *wpc, struct folio *folio, 570 int iomap_ioend_writeback_submit(struct iomap_writepage_ctx *wpc, int error); 577 int iomap_writeback_folio(struct iomap_writepage_ctx *wpc, struct folio *folio); 578 int iomap_writepages(struct iomap_writepage_ctx *wpc);
|
| /linux/fs/ntfs/ |
| H A D | aops.c | 257 struct iomap_writepage_ctx wpc = { in ntfs_writepages() local 288 ret = iomap_writepages(&wpc); in ntfs_writepages()
|
| /linux/fs/gfs2/ |
| H A D | bmap.c | 2508 static ssize_t gfs2_writeback_range(struct iomap_writepage_ctx *wpc, in gfs2_writeback_range() argument 2511 if (WARN_ON_ONCE(gfs2_is_stuffed(GFS2_I(wpc->inode)))) in gfs2_writeback_range() 2514 if (offset < wpc->iomap.offset || in gfs2_writeback_range() 2515 offset >= wpc->iomap.offset + wpc->iomap.length) { in gfs2_writeback_range() 2518 memset(&wpc->iomap, 0, sizeof(wpc->iomap)); in gfs2_writeback_range() 2519 ret = gfs2_iomap_get(wpc->inode, offset, INT_MAX, &wpc->iomap); in gfs2_writeback_range() 2524 return iomap_add_to_ioend(wpc, folio, offset, end_pos, len); in gfs2_writeback_range()
|
| /linux/fs/fuse/ |
| H A D | file.c | 2213 static ssize_t fuse_iomap_writeback_range(struct iomap_writepage_ctx *wpc, in fuse_iomap_writeback_range() argument 2217 struct fuse_fill_wb_data *data = wpc->wb_ctx; in fuse_iomap_writeback_range() 2220 struct inode *inode = wpc->inode; in fuse_iomap_writeback_range() 2273 static int fuse_iomap_writeback_submit(struct iomap_writepage_ctx *wpc, in fuse_iomap_writeback_submit() argument 2276 struct fuse_fill_wb_data *data = wpc->wb_ctx; in fuse_iomap_writeback_submit() 2282 fuse_writepages_send(wpc->inode, data); in fuse_iomap_writeback_submit() 2302 struct iomap_writepage_ctx wpc = { in fuse_writepages() local 2317 return iomap_writepages(&wpc); in fuse_writepages() 2324 struct iomap_writepage_ctx wpc = { in fuse_launder_folio() local 2332 err = iomap_writeback_folio(&wpc, folio); in fuse_launder_folio() [all …]
|
| /linux/fs/ntfs3/ |
| H A D | inode.c | 1163 static ssize_t ntfs_writeback_range(struct iomap_writepage_ctx *wpc, in ntfs_writeback_range() argument 1167 struct iomap *iomap = &wpc->iomap; in ntfs_writeback_range() 1171 struct inode *inode = wpc->inode; in ntfs_writeback_range() 1191 return iomap_add_to_ioend(wpc, folio, offset, end_pos, len); in ntfs_writeback_range() 1205 struct iomap_writepage_ctx wpc = { in ntfs_writepages() local 1240 return iomap_writepages(&wpc); in ntfs_writepages()
|
| /linux/Documentation/filesystems/iomap/ |
| H A D | operations.rst | 311 The ``wpc`` pointer should be allocated by the filesystem and must 331 int (*writeback_range)(struct iomap_writepage_ctx *wpc, 333 int (*writeback_submit)(struct iomap_writepage_ctx *wpc, int error); 338 - ``writeback_range``: Sets ``wpc->iomap`` to the space mapping of the file
|
| /linux/drivers/net/ieee802154/ |
| H A D | ca8210.c | 661 struct work_priv_container *wpc = container_of( in ca8210_mlme_reset_worker() local 666 struct ca8210_priv *priv = wpc->priv; in ca8210_mlme_reset_worker() 669 kfree(wpc); in ca8210_mlme_reset_worker()
|