diff options
-rw-r--r-- | drivers/md/md-cluster.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/md/md-cluster.c b/drivers/md/md-cluster.c index 35ac2e8cb7f1..aad5e7cda523 100644 --- a/drivers/md/md-cluster.c +++ b/drivers/md/md-cluster.c | |||
@@ -847,20 +847,21 @@ static int metadata_update_finish(struct mddev *mddev) | |||
847 | struct cluster_msg cmsg; | 847 | struct cluster_msg cmsg; |
848 | struct md_rdev *rdev; | 848 | struct md_rdev *rdev; |
849 | int ret = 0; | 849 | int ret = 0; |
850 | int raid_slot = -1; | ||
850 | 851 | ||
851 | memset(&cmsg, 0, sizeof(cmsg)); | 852 | memset(&cmsg, 0, sizeof(cmsg)); |
852 | cmsg.type = cpu_to_le32(METADATA_UPDATED); | 853 | cmsg.type = cpu_to_le32(METADATA_UPDATED); |
853 | cmsg.raid_slot = -1; | ||
854 | /* Pick up a good active device number to send. | 854 | /* Pick up a good active device number to send. |
855 | */ | 855 | */ |
856 | rdev_for_each(rdev, mddev) | 856 | rdev_for_each(rdev, mddev) |
857 | if (rdev->raid_disk > -1 && !test_bit(Faulty, &rdev->flags)) { | 857 | if (rdev->raid_disk > -1 && !test_bit(Faulty, &rdev->flags)) { |
858 | cmsg.raid_slot = cpu_to_le32(rdev->desc_nr); | 858 | raid_slot = rdev->desc_nr; |
859 | break; | 859 | break; |
860 | } | 860 | } |
861 | if (cmsg.raid_slot >= 0) | 861 | if (raid_slot >= 0) { |
862 | cmsg.raid_slot = cpu_to_le32(raid_slot); | ||
862 | ret = __sendmsg(cinfo, &cmsg); | 863 | ret = __sendmsg(cinfo, &cmsg); |
863 | else | 864 | } else |
864 | pr_warn("md-cluster: No good device id found to send\n"); | 865 | pr_warn("md-cluster: No good device id found to send\n"); |
865 | unlock_comm(cinfo); | 866 | unlock_comm(cinfo); |
866 | return ret; | 867 | return ret; |