Hi Christoph, Willy,
Will bv_page in struct bio_vec ever become a folio pointer rather than I page
pointer? I'm guessing not as it still presumably needs to be able to point to
non-folio pages.
David
On Tue, Jan 02, 2024 at 08:56:46AM +0000, David Howells wrote:
> Hi Christoph, Willy,
>
> Will bv_page in struct bio_vec ever become a folio pointer rather than I page
> pointer? I'm guessing not as it still presumably needs to be able to point to
> non-folio pages.
My plan for bio_vec is that it becomes phyr -- a physical address +
length. No more page or folio reference.
Matthew Wilcox <[email protected]> wrote:
> On Tue, Jan 02, 2024 at 08:56:46AM +0000, David Howells wrote:
> > Hi Christoph, Willy,
> >
> > Will bv_page in struct bio_vec ever become a folio pointer rather than I page
> > pointer? I'm guessing not as it still presumably needs to be able to point to
> > non-folio pages.
>
> My plan for bio_vec is that it becomes phyr -- a physical address +
> length. No more page or folio reference.
Interesting... What does that mean for those places that currently use
bv_page as a place to stash a pointer to the page and use it to clean up the
page later?
David
On Tue, Jan 02, 2024 at 10:03:58AM +0000, David Howells wrote:
> Matthew Wilcox <[email protected]> wrote:
>
> > On Tue, Jan 02, 2024 at 08:56:46AM +0000, David Howells wrote:
> > > Hi Christoph, Willy,
> > >
> > > Will bv_page in struct bio_vec ever become a folio pointer rather than I page
> > > pointer? I'm guessing not as it still presumably needs to be able to point to
> > > non-folio pages.
> >
> > My plan for bio_vec is that it becomes phyr -- a physical address +
> > length. No more page or folio reference.
>
> Interesting... What does that mean for those places that currently use
> bv_page as a place to stash a pointer to the page and use it to clean up the
> page later?
I don't intend to get rid of bio_for_each_folio_all() or bio_add_page()
for example. It's just a phys_to_page() away. The advantage is that
we wouldn't need a struct page to do I/O to a physical address.