diff options
Diffstat (limited to 'drivers/md/dm-raid1.c')
| -rw-r--r-- | drivers/md/dm-raid1.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/md/dm-raid1.c b/drivers/md/dm-raid1.c index 9726577cde49..33f179e66bf5 100644 --- a/drivers/md/dm-raid1.c +++ b/drivers/md/dm-raid1.c | |||
| @@ -648,7 +648,13 @@ static void do_writes(struct mirror_set *ms, struct bio_list *writes) | |||
| 648 | */ | 648 | */ |
| 649 | dm_rh_inc_pending(ms->rh, &sync); | 649 | dm_rh_inc_pending(ms->rh, &sync); |
| 650 | dm_rh_inc_pending(ms->rh, &nosync); | 650 | dm_rh_inc_pending(ms->rh, &nosync); |
| 651 | ms->log_failure = dm_rh_flush(ms->rh) ? 1 : 0; | 651 | |
| 652 | /* | ||
| 653 | * If the flush fails on a previous call and succeeds here, | ||
| 654 | * we must not reset the log_failure variable. We need | ||
| 655 | * userspace interaction to do that. | ||
| 656 | */ | ||
| 657 | ms->log_failure = dm_rh_flush(ms->rh) ? 1 : ms->log_failure; | ||
| 652 | 658 | ||
| 653 | /* | 659 | /* |
| 654 | * Dispatch io. | 660 | * Dispatch io. |
