Skip to content

Commit

Permalink
md: raid10: wake up frozen array
Browse files Browse the repository at this point in the history
When rescheduling a bio in raid10, we wake up
the md thread, but if the array is frozen, this
will have no effect.  This causes the array to
remain frozen for eternity.  We add a wake_up
to allow the array to de-freeze.  This code is
nearly identical to the raid1 code, which has
this fix already.

Signed-off-by: Arthur Jones <ajones@riverbed.com>
Signed-off-by: NeilBrown <neilb@suse.de>
  • Loading branch information
Arthur Jones authored and NeilBrown committed Aug 1, 2008
1 parent e542713 commit 388667b
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions drivers/md/raid10.c
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,9 @@ static void reschedule_retry(r10bio_t *r10_bio)
conf->nr_queued ++;
spin_unlock_irqrestore(&conf->device_lock, flags);

/* wake up frozen array... */
wake_up(&conf->wait_barrier);

md_wakeup_thread(mddev->thread);
}

Expand Down

0 comments on commit 388667b

Please sign in to comment.