OSDN Git Service

dm raid: fix raid "check" regression due to improper cleanup in raid_message()
authorMike Snitzer <snitzer@redhat.com>
Tue, 28 Feb 2017 16:55:16 +0000 (11:55 -0500)
committerMike Snitzer <snitzer@redhat.com>
Tue, 28 Feb 2017 21:47:50 +0000 (16:47 -0500)
commitad47047220777460c6d7dc8333808591f29e5c17
treef919340456653c7794100937e52a31949f70ae0d
parentd67a5f4b5947aba4bfe9a80a2b86079c215ca755
dm raid: fix raid "check" regression due to improper cleanup in raid_message()

While cleaning up awkward branching in raid_message() a raid set "check"
regression was introduced because "check" needs both MD_RECOVERY_SYNC
and MD_RECOVERY_REQUESTED flags set.

Fix this regression by explicitly setting both flags for the "check"
case (like is also done for the "repair" case, but redundant set_bit()s
are perfectly fine because it adds clarity to what is needed in response
to both messages -- in addition this isn't fast path code).

Fixes: 105db59912 ("dm raid: cleanup awkward branching in raid_message() option processing")
Reported-by: Heinz Mauelshagen <heinzm@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm-raid.c