md/raid5: add missing call to schedule() after prepare_to_wait()
commit7786253062211453885cb7e86528ff96e9099268
authorDan Williams <dan.j.williams@intel.com>
Tue, 16 Jun 2009 23:00:33 +0000 (16 16:00 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 2 Jul 2009 23:40:49 +0000 (2 16:40 -0700)
tree4b4e2d808864a233c94650d5e561ef5153550404
parent6e8ad8ea9d8c134f345ef3cca89c91aeadf2553e
md/raid5: add missing call to schedule() after prepare_to_wait()

commit 7a3ab908948b6296ee7e81d42f7c176361c51975 upstream.

In the unlikely event that reshape progresses past the current request
while it is waiting for a stripe we need to schedule() before retrying
for 2 reasons:
1/ Prevent list corruption from duplicated list_add() calls without
   intervening list_del().
2/ Give the reshape code a chance to make some progress to resolve the
   conflict.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/md/raid5.c