| From 736fda51c5fe29b82e3fc1fb0f6ad7d9807897d8 Mon Sep 17 00:00:00 2001 |
| From: Zhiqiang Liu <liuzhiqiang26@huawei.com> |
| Date: Tue, 10 Dec 2019 10:42:25 +0800 |
| Subject: [PATCH] md: raid1: check rdev before reference in raid1_sync_request |
| func |
| |
| commit 028288df635f5a9addd48ac4677b720192747944 upstream. |
| |
| In raid1_sync_request func, rdev should be checked before reference. |
| |
| Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com> |
| Signed-off-by: Song Liu <songliubraving@fb.com> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c |
| index c0ba5503106e..7ad019202caf 100644 |
| --- a/drivers/md/raid1.c |
| +++ b/drivers/md/raid1.c |
| @@ -2747,7 +2747,7 @@ static sector_t raid1_sync_request(struct mddev *mddev, sector_t sector_nr, |
| write_targets++; |
| } |
| } |
| - if (bio->bi_end_io) { |
| + if (rdev && bio->bi_end_io) { |
| atomic_inc(&rdev->nr_pending); |
| bio->bi_iter.bi_sector = sector_nr + rdev->data_offset; |
| bio_set_dev(bio, rdev->bdev); |
| -- |
| 2.7.4 |
| |