Re: [PATCH v3 1/3] zram: remove bio parameter from zram_bvec_rw().
From: Jerome Marchand
Date: Tue Oct 21 2014 - 11:14:19 EST
On 10/21/2014 09:27 AM, karam.lee@xxxxxxx wrote:
> From: "karam.lee" <karam.lee@xxxxxxx>
>
> This patch removes an unnecessary parameter(bio)
> from zram_bvec_rw() and zram_bvec_read().
> zram_bvec_read() doesn't use a bio parameter, so remove it.
> zram_bvec_rw() calls a read/write operation not using bio, so a rw parameter
> replaces a bio parameter.
>
> Signed-off-by: karam.lee <karam.lee@xxxxxxx>
Acked-by: Jerome Marchand <jmarchan@xxxxxxxxxx>
> ---
> drivers/block/zram/zram_drv.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
> index 48eccb3..54da18a 100644
> --- a/drivers/block/zram/zram_drv.c
> +++ b/drivers/block/zram/zram_drv.c
> @@ -368,7 +368,7 @@ static int zram_decompress_page(struct zram *zram, char *mem, u32 index)
> }
>
> static int zram_bvec_read(struct zram *zram, struct bio_vec *bvec,
> - u32 index, int offset, struct bio *bio)
> + u32 index, int offset)
> {
> int ret;
> struct page *page;
> @@ -535,14 +535,13 @@ out:
> }
>
> static int zram_bvec_rw(struct zram *zram, struct bio_vec *bvec, u32 index,
> - int offset, struct bio *bio)
> + int offset, int rw)
> {
> int ret;
> - int rw = bio_data_dir(bio);
>
> if (rw == READ) {
> atomic64_inc(&zram->stats.num_reads);
> - ret = zram_bvec_read(zram, bvec, index, offset, bio);
> + ret = zram_bvec_read(zram, bvec, index, offset);
> } else {
> atomic64_inc(&zram->stats.num_writes);
> ret = zram_bvec_write(zram, bvec, index, offset);
> @@ -718,7 +717,7 @@ out:
>
> static void __zram_make_request(struct zram *zram, struct bio *bio)
> {
> - int offset;
> + int offset, rw;
> u32 index;
> struct bio_vec bvec;
> struct bvec_iter iter;
> @@ -733,6 +732,7 @@ static void __zram_make_request(struct zram *zram, struct bio *bio)
> return;
> }
>
> + rw = bio_data_dir(bio);
> bio_for_each_segment(bvec, bio, iter) {
> int max_transfer_size = PAGE_SIZE - offset;
>
> @@ -747,15 +747,15 @@ static void __zram_make_request(struct zram *zram, struct bio *bio)
> bv.bv_len = max_transfer_size;
> bv.bv_offset = bvec.bv_offset;
>
> - if (zram_bvec_rw(zram, &bv, index, offset, bio) < 0)
> + if (zram_bvec_rw(zram, &bv, index, offset, rw) < 0)
> goto out;
>
> bv.bv_len = bvec.bv_len - max_transfer_size;
> bv.bv_offset += max_transfer_size;
> - if (zram_bvec_rw(zram, &bv, index + 1, 0, bio) < 0)
> + if (zram_bvec_rw(zram, &bv, index + 1, 0, rw) < 0)
> goto out;
> } else
> - if (zram_bvec_rw(zram, &bvec, index, offset, bio) < 0)
> + if (zram_bvec_rw(zram, &bvec, index, offset, rw) < 0)
> goto out;
>
> update_position(&index, &offset, &bvec);
>
Attachment:
signature.asc
Description: OpenPGP digital signature