On 2025/9/3 05:24, Joanne Koong wrote:
On Fri, Aug 29, 2025 at 6:54 PM Gao Xiang <xiang@xxxxxxxxxx> wrote:
Hi Joanne,
On Fri, Aug 29, 2025 at 04:56:24PM -0700, Joanne Koong wrote:
Add a void *private arg for read and readahead which filesystems that
pass in custom read callbacks can use. Stash this in the existing
private field in the iomap_iter.
Signed-off-by: Joanne Koong <joannelkoong@xxxxxxxxx>
---
block/fops.c | 4 ++--
fs/erofs/data.c | 4 ++--
fs/gfs2/aops.c | 4 ++--
fs/iomap/buffered-io.c | 8 ++++++--
fs/xfs/xfs_aops.c | 4 ++--
fs/zonefs/file.c | 4 ++--
include/linux/iomap.h | 4 ++--
7 files changed, 18 insertions(+), 14 deletions(-)
...
int iomap_read_folio(struct folio *folio, const struct iomap_ops *ops,
- const struct iomap_read_ops *read_ops)
+ const struct iomap_read_ops *read_ops, void *private)
{
struct iomap_iter iter = {
.inode = folio->mapping->host,
.pos = folio_pos(folio),
.len = folio_size(folio),
+ .private = private,
};
Will this whole work be landed for v6.18?
If not, may I ask if this patch can be shifted advance in this
patchset for applying separately (I tried but no luck).
Because I also need some similar approach for EROFS iomap page
cache sharing feature since EROFS uncompressed I/Os go through
iomap and extra information needs a proper way to pass down to
iomap_{begin,end} with extra pointer `.private` too.
Hi Gao,
I'm not sure whether this will be landed for v6.18 but I'm happy to
shift this patch to the beginning of the patchset for applying
separately.
Yeah, thanks. At least this common patch can be potentially applied
easily (e.g. form a common commit id for both features if really
needed) since other iomap/FUSE patches are not dependency of our new
feature and shouldn't be coupled with our development branch later.
Thanks,
Gao Xiang
Thanks,
Joanne
Thanks,
Gao Xiang