aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuoqing Jiang <gqjiang@suse.com>2015-10-12 05:21:21 -0400
committerGoldwyn Rodrigues <rgoldwyn@suse.com>2015-10-12 12:58:14 -0400
commitfaeff83fa478b4dca9877d6b10a25ad252891f14 (patch)
tree2f51f84ec00f96633413819f3fb1875d6b398be8
parentd216711bed1a0fb6527858f32cd89ff4a6553a97 (diff)
md-cluster: make other members of cluster_msg is handled by little endian funcs
Signed-off-by: Guoqing Jiang <gqjiang@suse.com>
-rw-r--r--drivers/md/md-cluster.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/drivers/md/md-cluster.c b/drivers/md/md-cluster.c
index 85d0a1fef807..3c1818516070 100644
--- a/drivers/md/md-cluster.c
+++ b/drivers/md/md-cluster.c
@@ -418,7 +418,7 @@ static void process_add_new_disk(struct mddev *mddev, struct cluster_msg *cmsg)
418 418
419 len = snprintf(disk_uuid, 64, "DEVICE_UUID="); 419 len = snprintf(disk_uuid, 64, "DEVICE_UUID=");
420 sprintf(disk_uuid + len, "%pU", cmsg->uuid); 420 sprintf(disk_uuid + len, "%pU", cmsg->uuid);
421 snprintf(raid_slot, 16, "RAID_DISK=%d", cmsg->raid_slot); 421 snprintf(raid_slot, 16, "RAID_DISK=%d", le32_to_cpu(cmsg->raid_slot));
422 pr_info("%s:%d Sending kobject change with %s and %s\n", __func__, __LINE__, disk_uuid, raid_slot); 422 pr_info("%s:%d Sending kobject change with %s and %s\n", __func__, __LINE__, disk_uuid, raid_slot);
423 init_completion(&cinfo->newdisk_completion); 423 init_completion(&cinfo->newdisk_completion);
424 set_bit(MD_CLUSTER_WAITING_FOR_NEWDISK, &cinfo->state); 424 set_bit(MD_CLUSTER_WAITING_FOR_NEWDISK, &cinfo->state);
@@ -438,22 +438,26 @@ static void process_metadata_update(struct mddev *mddev, struct cluster_msg *msg
438 438
439static void process_remove_disk(struct mddev *mddev, struct cluster_msg *msg) 439static void process_remove_disk(struct mddev *mddev, struct cluster_msg *msg)
440{ 440{
441 struct md_rdev *rdev = md_find_rdev_nr_rcu(mddev, msg->raid_slot); 441 struct md_rdev *rdev = md_find_rdev_nr_rcu(mddev,
442 le32_to_cpu(msg->raid_slot));
442 443
443 if (rdev) 444 if (rdev)
444 md_kick_rdev_from_array(rdev); 445 md_kick_rdev_from_array(rdev);
445 else 446 else
446 pr_warn("%s: %d Could not find disk(%d) to REMOVE\n", __func__, __LINE__, msg->raid_slot); 447 pr_warn("%s: %d Could not find disk(%d) to REMOVE\n",
448 __func__, __LINE__, le32_to_cpu(msg->raid_slot));
447} 449}
448 450
449static void process_readd_disk(struct mddev *mddev, struct cluster_msg *msg) 451static void process_readd_disk(struct mddev *mddev, struct cluster_msg *msg)
450{ 452{
451 struct md_rdev *rdev = md_find_rdev_nr_rcu(mddev, msg->raid_slot); 453 struct md_rdev *rdev = md_find_rdev_nr_rcu(mddev,
454 le32_to_cpu(msg->raid_slot));
452 455
453 if (rdev && test_bit(Faulty, &rdev->flags)) 456 if (rdev && test_bit(Faulty, &rdev->flags))
454 clear_bit(Faulty, &rdev->flags); 457 clear_bit(Faulty, &rdev->flags);
455 else 458 else
456 pr_warn("%s: %d Could not find disk(%d) which is faulty", __func__, __LINE__, msg->raid_slot); 459 pr_warn("%s: %d Could not find disk(%d) which is faulty",
460 __func__, __LINE__, le32_to_cpu(msg->raid_slot));
457} 461}
458 462
459static void process_recvd_msg(struct mddev *mddev, struct cluster_msg *msg) 463static void process_recvd_msg(struct mddev *mddev, struct cluster_msg *msg)
@@ -936,7 +940,7 @@ static int add_new_disk(struct mddev *mddev, struct md_rdev *rdev)
936 memset(&cmsg, 0, sizeof(cmsg)); 940 memset(&cmsg, 0, sizeof(cmsg));
937 cmsg.type = cpu_to_le32(NEWDISK); 941 cmsg.type = cpu_to_le32(NEWDISK);
938 memcpy(cmsg.uuid, uuid, 16); 942 memcpy(cmsg.uuid, uuid, 16);
939 cmsg.raid_slot = rdev->desc_nr; 943 cmsg.raid_slot = cpu_to_le32(rdev->desc_nr);
940 lock_comm(cinfo); 944 lock_comm(cinfo);
941 ret = __sendmsg(cinfo, &cmsg); 945 ret = __sendmsg(cinfo, &cmsg);
942 if (ret) 946 if (ret)
@@ -979,8 +983,8 @@ static int remove_disk(struct mddev *mddev, struct md_rdev *rdev)
979{ 983{
980 struct cluster_msg cmsg; 984 struct cluster_msg cmsg;
981 struct md_cluster_info *cinfo = mddev->cluster_info; 985 struct md_cluster_info *cinfo = mddev->cluster_info;
982 cmsg.type = REMOVE; 986 cmsg.type = cpu_to_le32(REMOVE);
983 cmsg.raid_slot = rdev->desc_nr; 987 cmsg.raid_slot = cpu_to_le32(rdev->desc_nr);
984 return __sendmsg(cinfo, &cmsg); 988 return __sendmsg(cinfo, &cmsg);
985} 989}
986 990
@@ -992,8 +996,8 @@ static int gather_bitmaps(struct md_rdev *rdev)
992 struct mddev *mddev = rdev->mddev; 996 struct mddev *mddev = rdev->mddev;
993 struct md_cluster_info *cinfo = mddev->cluster_info; 997 struct md_cluster_info *cinfo = mddev->cluster_info;
994 998
995 cmsg.type = RE_ADD; 999 cmsg.type = cpu_to_le32(RE_ADD);
996 cmsg.raid_slot = rdev->desc_nr; 1000 cmsg.raid_slot = cpu_to_le32(rdev->desc_nr);
997 err = sendmsg(cinfo, &cmsg); 1001 err = sendmsg(cinfo, &cmsg);
998 if (err) 1002 if (err)
999 goto out; 1003 goto out;