- /*
- *
- * Check if there is a CTR_REQUEST_LINK_COUNT_XDATA from CTR Xlator
- *
- * */
- op_ret = dict_get_int32 (xdata, CTR_REQUEST_LINK_COUNT_XDATA,
- &ctr_link_req);
- if (op_ret) {
- /*Since no request no response*/
- op_ret = 0;
- goto out;
- }
-
- /* Sending back inode link count to ctr_unlink(changetimerecoder xlator)
- * via "CTR_RESPONSE_LINK_COUNT_XDATA" key using unwind_dict.
- * CTR Xlator will clear all the records if the link count has become 1
- * i.e this was the last hard link.
- * */
- unwind_dict = dict_new ();
- /* Even if unwind_dict fails to alloc memory we will not mark the FOP
- * unsuccessful
- * because this dict is only used by CTR Xlator to clear
- * all records if link count == 0*/
- if (!unwind_dict) {
- op_ret = 0;
- goto out;
- }
- /* Even if unwind_dict fails to set CTR_RESPONSE_LINK_COUNT_XDATA we
- * will not mark the FOP unsuccessful
- * because this dict is only used by CTR Xlator to clear
- * all records if link count == 0*/
- op_ret = dict_set_uint32 (unwind_dict, CTR_RESPONSE_LINK_COUNT_XDATA,
- stbuf.ia_nlink);
- if (op_ret == -1) {
- gf_msg (this->name, GF_LOG_WARNING, 0, P_MSG_SET_XDATA_FAIL,
- "Failed to set CTR_RESPONSE_LINK_COUNT_XDATA");
- }
-