summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Darcy <jdarcy@fb.com>2017-07-18 07:12:09 -0700
committerJeff Darcy <jeff@pl.atyp.us>2017-07-18 15:41:21 +0000
commit3f91ecd8acffcae01486a0b4f0227dd97f487a7d (patch)
tree18a56c59b569ede3ba914b4964e785480e2221c1
parentbc02e5423d097aff5280a849b7c6e6cf5d63ef96 (diff)
server: fix core dumps on upstream test machines
Change-Id: I48f5340507a5fcebe874f498eba737585c1c32a7 Signed-off-by: Jeff Darcy <jdarcy@fb.com> Reviewed-on: https://review.gluster.org/17818 Smoke: Gluster Build System <jenkins@build.gluster.org> Tested-by: Jeff Darcy <jeff@pl.atyp.us> CentOS-regression: Gluster Build System <jenkins@build.gluster.org> Reviewed-by: Jeff Darcy <jeff@pl.atyp.us>
-rw-r--r--xlators/protocol/server/src/server-resolve.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/xlators/protocol/server/src/server-resolve.c b/xlators/protocol/server/src/server-resolve.c
index 6f621119278..a1fe2e85267 100644
--- a/xlators/protocol/server/src/server-resolve.c
+++ b/xlators/protocol/server/src/server-resolve.c
@@ -11,6 +11,7 @@
#include "server.h"
#include "server-helpers.h"
#include "server-messages.h"
+#include "compat-errno.h"
int
@@ -59,7 +60,7 @@ resolve_gfid_entry_cbk (call_frame_t *frame, void *cookie, xlator_t *this,
resolve_loc = &resolve->resolve_loc;
if (!state->loc.inode && inode) {
- state->loc.inode = inode;
+ state->loc.inode = inode_ref (inode);
}
if (op_ret == -1) {
@@ -75,6 +76,9 @@ resolve_gfid_entry_cbk (call_frame_t *frame, void *cookie, xlator_t *this,
uuid_utoa (resolve_loc->pargfid),
resolve_loc->name, strerror (op_errno));
}
+ if (op_errno != ENODATA) {
+ goto out;
+ }
}
link_inode = inode_link (inode, resolve_loc->parent,