]> git.baikalelectronics.ru Git - kernel.git/commit
raid5: delayed stripe fix
authorShaohua Li <shli@kernel.org>
Tue, 3 Jul 2012 05:57:19 +0000 (15:57 +1000)
committerNeilBrown <neilb@suse.de>
Tue, 3 Jul 2012 05:57:19 +0000 (15:57 +1000)
commit29ab73543fdc4743d8b3e63fac8f2b0a4eeea720
treeb9d247b33102421f46b21462cd569853cb926fdb
parent303552a7ae8dc71a88834fcdd04cdd1e8eb14f3b
raid5: delayed stripe fix

There isn't locking setting STRIPE_DELAYED and STRIPE_PREREAD_ACTIVE bits, but
the two bits have relationship. A delayed stripe can be moved to hold list only
when preread active stripe count is below IO_THRESHOLD. If a stripe has both
the bits set, such stripe will be in delayed list and preread count not 0,
which will make such stripe never leave delayed list.

Signed-off-by: Shaohua Li <shli@fusionio.com>
Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/raid5.c