summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRavishankar N <ravishankar@redhat.com>2020-10-27 18:13:52 +0530
committerGitHub <noreply@github.com>2020-10-27 18:13:52 +0530
commitc061417413ff3941c87bfbca4473914eac42156d (patch)
treec78370b745d5c31669a430ca1e647e9418c25da6
parent61ee44f31325442ec1fca9133f60c752754c5694 (diff)
downloadglusterfs-c061417413ff3941c87bfbca4473914eac42156d.tar.gz
glusterfs-c061417413ff3941c87bfbca4473914eac42156d.tar.xz
glusterfs-c061417413ff3941c87bfbca4473914eac42156d.zip
fixed AFR_READ_POLICY_GFID_PID_HASH policy bug (#1562)
Change-Id: Ib927a770a486c95e4b157e76ba96e9904d1a9716 Fixes: #1499 Signed-off-by: perrynzhou <perrynzhou@gmail.com> Co-authored-by: perrynzhou <perrynzhou@gmail.com>
-rw-r--r--xlators/cluster/afr/src/afr-common.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xlators/cluster/afr/src/afr-common.c b/xlators/cluster/afr/src/afr-common.c
index 1da75c07f7..90de868b5c 100644
--- a/xlators/cluster/afr/src/afr-common.c
+++ b/xlators/cluster/afr/src/afr-common.c
@@ -1640,8 +1640,9 @@ afr_hash_child(afr_read_subvol_args_t *args, afr_private_t *priv,
* need is a low probability that multiple clients
* won't converge on the same subvolume.
*/
+ gf_uuid_copy(gfid_copy, args->gfid);
pid = getpid();
- memcpy(gfid_copy, &pid, sizeof(pid));
+ *(pid_t *)gfid_copy ^= pid;
}
child = SuperFastHash((char *)gfid_copy, sizeof(gfid_copy)) %
priv->child_count;