Re: [RFC v2 0/5] remove page_endio()

From: Mike Marshall
Date: Thu Mar 23 2023 - 10:30:52 EST


I have tested this patch on orangefs on top of 6.3.0-rc3, no
regressions.

It is very easy to build a single host orangefs test system on
a vm. There are instructions in orangefs.rst, and also I'd
be glad to help make them better...

-Mike

On Wed, Mar 22, 2023 at 9:50 AM Pankaj Raghav <p.raghav@xxxxxxxxxxx> wrote:
>
> It was decided to remove the page_endio() as per the previous RFC
> discussion[1] of this series and move that functionality into the caller
> itself. One of the side benefit of doing that is the callers have been
> modified to directly work on folios as page_endio() already worked on
> folios.
>
> mpage changes were tested with a simple boot testing. zram and orangefs is
> only build tested. No functional changes were introduced as a part of
> this AFAIK.
>
> Open questions:
> - Willy pointed out that the calls to folio_set_error() and
> folio_clear_uptodate() are not needed anymore in the read path when an
> error happens[2]. I still don't understand 100% why they aren't needed
> anymore as I see those functions are still called in iomap. It will be
> good to put that rationale as a part of the commit message.
>
> [1] https://lore.kernel.org/linux-mm/ZBHcl8Pz2ULb4RGD@xxxxxxxxxxxxx/
> [2] https://lore.kernel.org/linux-mm/ZBSH6Uq6IIXON%2Frh@xxxxxxxxxxxxxxxxxxxx/
>
> Pankaj Raghav (5):
> zram: remove zram_page_end_io function
> orangefs: use folios in orangefs_readahead
> mpage: split bi_end_io callback for reads and writes
> mpage: use folios in bio end_io handler
> filemap: remove page_endio()
>
> drivers/block/zram/zram_drv.c | 13 +----------
> fs/mpage.c | 44 ++++++++++++++++++++++++++++-------
> fs/orangefs/inode.c | 9 +++----
> include/linux/pagemap.h | 2 --
> mm/filemap.c | 30 ------------------------
> 5 files changed, 42 insertions(+), 56 deletions(-)
>
> --
> 2.34.1
>