forked from Minki/linux
md/raid5: ignore released_stripes check
conf->released_stripes list isn't always related to where there are free stripes pending. Active stripes can be in the list too. And even free stripes were active very recently. Signed-off-by: Shaohua Li <shli@fb.com> Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
e9e4c377e2
commit
713bc5c2de
@ -681,8 +681,8 @@ get_active_stripe(struct r5conf *conf, sector_t sector,
|
||||
if (!sh) {
|
||||
if (!test_bit(R5_INACTIVE_BLOCKED, &conf->cache_state)) {
|
||||
sh = get_free_stripe(conf, hash);
|
||||
if (!sh && llist_empty(&conf->released_stripes) &&
|
||||
!test_bit(R5_DID_ALLOC, &conf->cache_state))
|
||||
if (!sh && !test_bit(R5_DID_ALLOC,
|
||||
&conf->cache_state))
|
||||
set_bit(R5_ALLOC_MORE,
|
||||
&conf->cache_state);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user