Re: [PATCH v1 13/16] iomap: add a private arg for read and readahead

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Sep 2, 2025 at 6:55 PM Gao Xiang <hsiangkao@xxxxxxxxxxxxxxxxx> wrote:
>
> 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.
>

Hi Gao,

I'll be dropping this patch in v2 since all the iomap read stuff is
going to go through a struct ctx arg instead of through iter->private.
Sorry this won't help your use case, but looking forward to seeing your patches.


Thanks,
Joanne

> Thanks,
> Gao Xiang
>
> >
> > Thanks,
> > Joanne
> >>
> >> Thanks,
> >> Gao Xiang
>





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux