md/raid5: small tidyup in raid5_align_endio
authorNeilBrown <neilb@suse.de>
Thu, 25 Mar 2010 05:06:03 +0000 (16:06 +1100)
committerNeilBrown <neilb@suse.de>
Tue, 18 May 2010 05:27:50 +0000 (15:27 +1000)
Diving through ->queue to find mddev is unnecessarily complex - there
is an easier path to finding mddev, so use that.

Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/raid5.c

index 020143d..7bfeba3 100644 (file)
@@ -3713,10 +3713,10 @@ static void raid5_align_endio(struct bio *bi, int error)
 
        bio_put(bi);
 
-       mddev = raid_bi->bi_bdev->bd_disk->queue->queuedata;
-       conf = mddev->private;
        rdev = (void*)raid_bi->bi_next;
        raid_bi->bi_next = NULL;
+       mddev = rdev->mddev;
+       conf = mddev->private;
 
        rdev_dec_pending(rdev, conf->mddev);