Thread (31 messages) flat view 31 messages, 4 authors, 2017-02-17

Re: [PATCH 13/17] md: raid1: use bio_segments_all()

From: Ming Lei <tom.leiming@gmail.com>
Date: 2017-02-16 13:38:08
Also in: linux-raid, lkml

On Thu, Feb 16, 2017 at 9:34 PM, Johannes Thumshirn [off-list ref] wrote:
On 02/16/2017 02:32 PM, Ming Lei wrote:
quoted
On Thu, Feb 16, 2017 at 8:35 PM, Johannes Thumshirn [off-list ref] wrote:
quoted
On 02/16/2017 12:45 PM, Ming Lei wrote:
quoted
@@ -998,7 +998,8 @@ static void alloc_behind_pages(struct bio *bio, struct r1bio *r1_bio)
 {
      int i;
      struct bio_vec *bvec;
-     struct bio_vec *bvecs = kzalloc(bio->bi_vcnt * sizeof(struct bio_vec),
+     unsigned vcnt = bio_segments_all(bio);
+     struct bio_vec *bvecs = kzalloc(vcnt * sizeof(struct bio_vec),
                                      GFP_NOIO);
Maybe use kcalloc() instead of kzalloc() with a multiplication.
That doesn't belong to this patch, which just wants to remove direct
access to .bi_vcnt.
But you're touching it anyways, aren't you?
Don't you know the policy of 'do one thing, do it better' in one patch?

If you want to switch to kcalloc(), just post a patch, that is fine, but
please don't push me to do that in this patch.

Thanks,
Ming Lei
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help