Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 45c91d80 authored by Shaohua Li's avatar Shaohua Li
Browse files

raid5: avoid unnecessary bio data set



bio_reset doesn't change bi_io_vec and bi_max_vecs, so we don't need to
set them every time. bi_private will be set before the bio is
dispatched.

Signed-off-by: default avatarShaohua Li <shli@fb.com>
parent 5f9d1fde
Loading
Loading
Loading
Loading
+5 −8
Original line number Diff line number Diff line
@@ -2005,7 +2005,12 @@ static struct stripe_head *alloc_stripe(struct kmem_cache *sc, gfp_t gfp,
			struct r5dev *dev = &sh->dev[i];

			bio_init(&dev->req);
			dev->req.bi_io_vec = &dev->vec;
			dev->req.bi_max_vecs = 1;

			bio_init(&dev->rreq);
			dev->rreq.bi_io_vec = &dev->rvec;
			dev->rreq.bi_max_vecs = 1;
		}
	}
	return sh;
@@ -2507,14 +2512,6 @@ static void raid5_build_block(struct stripe_head *sh, int i, int previous)
{
	struct r5dev *dev = &sh->dev[i];

	dev->req.bi_io_vec = &dev->vec;
	dev->req.bi_max_vecs = 1;
	dev->req.bi_private = sh;

	dev->rreq.bi_io_vec = &dev->rvec;
	dev->rreq.bi_max_vecs = 1;
	dev->rreq.bi_private = sh;

	dev->flags = 0;
	dev->sector = raid5_compute_blocknr(sh, i, previous);
}