diff options
Diffstat (limited to 'drivers/md/dm-raid.c')
| -rw-r--r-- | drivers/md/dm-raid.c | 7 | 
1 files changed, 4 insertions, 3 deletions
| diff --git a/drivers/md/dm-raid.c b/drivers/md/dm-raid.c index 7ef469e902c6..c1d1034ff7b7 100644 --- a/drivers/md/dm-raid.c +++ b/drivers/md/dm-raid.c @@ -3408,9 +3408,10 @@ static sector_t rs_get_progress(struct raid_set *rs, unsigned long recovery,  		set_bit(RT_FLAG_RS_IN_SYNC, &rs->runtime_flags);  	} else { -		if (test_bit(MD_RECOVERY_NEEDED, &recovery) || -		    test_bit(MD_RECOVERY_RESHAPE, &recovery) || -		    test_bit(MD_RECOVERY_RUNNING, &recovery)) +		if (!test_bit(MD_RECOVERY_INTR, &recovery) && +		    (test_bit(MD_RECOVERY_NEEDED, &recovery) || +		     test_bit(MD_RECOVERY_RESHAPE, &recovery) || +		     test_bit(MD_RECOVERY_RUNNING, &recovery)))  			r = mddev->curr_resync_completed;  		else  			r = mddev->recovery_cp; | 
