summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/afr/src/afr-dir-read.c
diff options
context:
space:
mode:
authorKrutika Dhananjay <kdhananj@redhat.com>2015-06-24 08:02:51 +0530
committerVijay Bellur <vbellur@redhat.com>2015-06-24 17:11:00 -0700
commit4c751009f668910a734cd400c10e8b3bdd6360a1 (patch)
tree9fa6f4e5b679073f6b4d61f4114d56b7ba4c4652 /xlators/cluster/afr/src/afr-dir-read.c
parent2f0d36d16c241365760aaa6d857b7a4d438e1042 (diff)
cluster/afr: Pick gfid from poststat during fresh lookup for read child calculation
Change-Id: I12c1e4f67f4ec4affbe13d7daf871044a8a2a12e BUG: 1235216 Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com> Reviewed-on: http://review.gluster.org/11373 Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com> Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Diffstat (limited to 'xlators/cluster/afr/src/afr-dir-read.c')
-rw-r--r--xlators/cluster/afr/src/afr-dir-read.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/xlators/cluster/afr/src/afr-dir-read.c b/xlators/cluster/afr/src/afr-dir-read.c
index 1237b261b14..fae5661d021 100644
--- a/xlators/cluster/afr/src/afr-dir-read.c
+++ b/xlators/cluster/afr/src/afr-dir-read.c
@@ -148,7 +148,12 @@ afr_validate_read_subvol (inode_t *inode, xlator_t *this, int par_read_subvol)
if (!priv->consistent_metadata)
return 0;
- entry_read_subvol = afr_data_subvol_get (inode, this, 0, 0);
+ /* For an inode fetched through readdirp which is yet to be linked,
+ * inode ctx would not be initialised (yet). So this function returns
+ * -1 above due to gen being 0, which is why it is OK to pass NULL for
+ * read_subvol_args here.
+ */
+ entry_read_subvol = afr_data_subvol_get (inode, this, 0, 0, NULL);
if (entry_read_subvol != par_read_subvol)
return -1;