md/raid5: duplicate some more handle_stripe_clean_event code in break_stripe_batch_list
authorNeilBrown <neilb@suse.de>
Thu, 21 May 2015 02:00:47 +0000 (12:00 +1000)
committerNeilBrown <neilb@suse.de>
Thu, 28 May 2015 01:36:25 +0000 (11:36 +1000)
commitfb642b92c267beeefd352af9bc461eac93a7552c
treeb65a1548db0ed487de3fe42ac8a072c3a8a59c05
parent4e3d62ff4976f26d22b8b91572a49136bb3a23f1
md/raid5: duplicate some more handle_stripe_clean_event code in break_stripe_batch_list

break_stripe_batch list didn't clear head_sh->batch_head.
This was probably a bug.

Also clear all R5_Overlap flags and if any were cleared, wake up
'wait_for_overlap'.
This isn't always necessary but the worst effect is a little
extra checking for code that is waiting on wait_for_overlap.

Also, don't use wake_up_nr() because that does the wrong thing
if 'nr' is zero, and it number of flags cleared doesn't
strongly correlate with the number of threads to wake.

Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/raid5.c