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. orangefs was tested by Mike Marshall (No code changes since he tested). Zram was only build tested. No functional changes were introduced as a part of this AFAIK. Changes since RFC 2[2]: - Call bio_put in zram bio end io handler (Still not Acked by hch[3]) - Call folio_set_error in mpage read endio error path (Willy) - Directly call folio->mapping in mpage write endio error path (Willy) [1] https://lore.kernel.org/linux-mm/ZBHcl8Pz2ULb4RGD@xxxxxxxxxxxxx/ [2] https://lore.kernel.org/linux-mm/20230322135013.197076-1-p.raghav@xxxxxxxxxxx/ [3] https://lore.kernel.org/linux-mm/8adb0770-6124-e11f-2551-6582db27ed32@xxxxxxxxxxx/ Pankaj Raghav (5): zram: remove the call to page_endio in the bio end_io handler 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 | 8 ++------ fs/mpage.c | 38 +++++++++++++++++++++++++++-------- fs/orangefs/inode.c | 9 +++++---- include/linux/pagemap.h | 2 -- mm/filemap.c | 30 --------------------------- 5 files changed, 37 insertions(+), 50 deletions(-) -- 2.34.1