Re: [PATCH 1/5] zram: remove the call to page_endio in the bio end_io handler

From: Matthew Wilcox
Date: Tue Mar 28 2023 - 11:22:07 EST


On Tue, Mar 28, 2023 at 01:27:12PM +0200, Pankaj Raghav wrote:
> -static void zram_page_end_io(struct bio *bio)
> +static void zram_read_end_io(struct bio *bio)
> {
> - struct page *page = bio_first_page_all(bio);
> -
> - page_endio(page, op_is_write(bio_op(bio)),
> - blk_status_to_errno(bio->bi_status));
> bio_put(bio);
> }
>
> @@ -635,7 +631,7 @@ static int read_from_bdev_async(struct zram *zram, struct bio_vec *bvec,
> }
>
> if (!parent)
> - bio->bi_end_io = zram_page_end_io;
> + bio->bi_end_io = zram_read_end_io;

Can we just do:

if (!parent)
bio->bi_end_io = bio_put;

drivers/nvme/target/passthru.c does this, so it wouldn't be the first.