fuse-resolve: loc_wipe() after inode_link()

the inode to be linked may have the last ref. loc_wipe() can
destroy it before inode_link() gets to ref it.

Change-Id: Ic2d44084e6e9c8289f35cae82c8e4575af105398
BUG: 1089216
Signed-off-by: Anand Avati <avati@redhat.com>
Reviewed-on: http://review.gluster.org/7505
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
This commit is contained in:
Anand Avati 2014-03-27 23:53:58 -07:00
parent a67630b397
commit bac02a359f

View File

@ -163,10 +163,10 @@ fuse_resolve_gfid_cbk (call_frame_t *frame, void *cookie, xlator_t *this,
goto out;
}
loc_wipe (&resolve->resolve_loc);
link_inode = inode_link (inode, NULL, NULL, buf);
loc_wipe (&resolve->resolve_loc);
if (!link_inode)
goto out;