diff options
| author | Anand Avati <avati@gluster.com> | 2009-11-13 02:58:25 +0000 | 
|---|---|---|
| committer | Anand V. Avati <avati@dev.gluster.com> | 2009-11-13 02:13:20 -0800 | 
| commit | 590e5879f819018aee63b800b0f66fd6ff49641d (patch) | |
| tree | 25cddbfbd7bb428a19096517e5eaeb142b33e80b | |
| parent | 63ece0f8bc81c2ec145465ff132a18ca47e50be5 (diff) | |
protocol/client: whitespace cleanup
Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com>
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 170 (Auto-heal fails on files that are open()-ed/mmap()-ed)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=170
| -rw-r--r-- | xlators/protocol/client/src/client-protocol.c | 7228 | ||||
| -rw-r--r-- | xlators/protocol/client/src/client-protocol.h | 34 | 
2 files changed, 3631 insertions, 3631 deletions
diff --git a/xlators/protocol/client/src/client-protocol.c b/xlators/protocol/client/src/client-protocol.c index e82caeb5d6e..38a36e28fd3 100644 --- a/xlators/protocol/client/src/client-protocol.c +++ b/xlators/protocol/client/src/client-protocol.c @@ -93,83 +93,83 @@ ret:  client_fd_ctx_t *  this_fd_del_ctx (fd_t *file, xlator_t *this)  { -	int         dict_ret = -1; -	uint64_t    ctxaddr  = 0; +        int         dict_ret = -1; +        uint64_t    ctxaddr  = 0; -	GF_VALIDATE_OR_GOTO ("client", this, out); -	GF_VALIDATE_OR_GOTO (this->name, file, out); +        GF_VALIDATE_OR_GOTO ("client", this, out); +        GF_VALIDATE_OR_GOTO (this->name, file, out); -	dict_ret = fd_ctx_del (file, this, &ctxaddr); +        dict_ret = fd_ctx_del (file, this, &ctxaddr); -	if (dict_ret < 0) { -		ctxaddr = 0; -	} +        if (dict_ret < 0) { +                ctxaddr = 0; +        }  out: -	return (client_fd_ctx_t *)(unsigned long)ctxaddr; +        return (client_fd_ctx_t *)(unsigned long)ctxaddr;  }  client_fd_ctx_t *  this_fd_get_ctx (fd_t *file, xlator_t *this)  { -	int         dict_ret = -1; -	uint64_t    ctxaddr = 0; +        int         dict_ret = -1; +        uint64_t    ctxaddr = 0; -	GF_VALIDATE_OR_GOTO ("client", this, out); -	GF_VALIDATE_OR_GOTO (this->name, file, out); +        GF_VALIDATE_OR_GOTO ("client", this, out); +        GF_VALIDATE_OR_GOTO (this->name, file, out); -	dict_ret = fd_ctx_get (file, this, &ctxaddr); +        dict_ret = fd_ctx_get (file, this, &ctxaddr); -	if (dict_ret < 0) { -		ctxaddr = 0; -	} +        if (dict_ret < 0) { +                ctxaddr = 0; +        }  out: -	return (client_fd_ctx_t *)(unsigned long)ctxaddr; +        return (client_fd_ctx_t *)(unsigned long)ctxaddr;  }  static void  this_fd_set_ctx (fd_t *file, xlator_t *this, loc_t *loc, client_fd_ctx_t *ctx)  { -	uint64_t oldaddr = 0; -	int32_t  ret = -1; - -	GF_VALIDATE_OR_GOTO ("client", this, out); -	GF_VALIDATE_OR_GOTO (this->name, file, out); - -	ret = fd_ctx_get (file, this, &oldaddr); -	if (ret >= 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"%s (%"PRId64"): trying duplicate remote fd set. ", -			loc->path, loc->inode->ino); -	} - -	ret = fd_ctx_set (file, this, (uint64_t)(unsigned long)ctx); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"%s (%"PRId64"): failed to set remote fd", -			loc->path, loc->inode->ino); -	} +        uint64_t oldaddr = 0; +        int32_t  ret = -1; + +        GF_VALIDATE_OR_GOTO ("client", this, out); +        GF_VALIDATE_OR_GOTO (this->name, file, out); + +        ret = fd_ctx_get (file, this, &oldaddr); +        if (ret >= 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "%s (%"PRId64"): trying duplicate remote fd set. ", +                        loc->path, loc->inode->ino); +        } + +        ret = fd_ctx_set (file, this, (uint64_t)(unsigned long)ctx); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "%s (%"PRId64"): failed to set remote fd", +                        loc->path, loc->inode->ino); +        }  out: -	return; +        return;  } -static int  +static int  client_local_wipe (client_local_t *local)  { -	if (local) { -		loc_wipe (&local->loc); +        if (local) { +                loc_wipe (&local->loc); + +                if (local->fd) +                        fd_unref (local->fd); -		if (local->fd) -			fd_unref (local->fd); +                free (local); +        } -		free (local); -	}  -	 -	return 0; +        return 0;  }  /* @@ -183,192 +183,192 @@ client_local_wipe (client_local_t *local)  static call_frame_t *  lookup_frame (transport_t *trans, int32_t op, int8_t type, int64_t callid)  { -	client_connection_t *conn = NULL; -	call_frame_t        *frame = NULL; +        client_connection_t *conn = NULL; +        call_frame_t        *frame = NULL; -	conn = trans->xl_private; +        conn = trans->xl_private; -	pthread_mutex_lock (&conn->lock); -	{ -		frame = saved_frames_get (conn->saved_frames, -					  op, type, callid); -	} -	pthread_mutex_unlock (&conn->lock); +        pthread_mutex_lock (&conn->lock); +        { +                frame = saved_frames_get (conn->saved_frames, +                                          op, type, callid); +        } +        pthread_mutex_unlock (&conn->lock); -	return frame; +        return frame;  }  static void  call_bail (void *data)  { -	client_connection_t  *conn = NULL; -	struct timeval        current; -	transport_t          *trans = NULL; -	struct list_head      list; -	struct saved_frame   *saved_frame = NULL; -	struct saved_frame   *trav = NULL; -	struct saved_frame   *tmp = NULL; -	call_frame_t         *frame = NULL; -	gf_hdr_common_t       hdr = {0, }; -	char                **gf_op_list = NULL; -	gf_op_t              *gf_ops = NULL; -	struct tm             frame_sent_tm; -	char                  frame_sent[32] = {0,}; +        client_connection_t  *conn = NULL; +        struct timeval        current; +        transport_t          *trans = NULL; +        struct list_head      list; +        struct saved_frame   *saved_frame = NULL; +        struct saved_frame   *trav = NULL; +        struct saved_frame   *tmp = NULL; +        call_frame_t         *frame = NULL; +        gf_hdr_common_t       hdr = {0, }; +        char                **gf_op_list = NULL; +        gf_op_t              *gf_ops = NULL; +        struct tm             frame_sent_tm; +        char                  frame_sent[32] = {0,};          struct timeval        timeout = {0,};          gf_timer_cbk_t        timer_cbk = NULL; -	GF_VALIDATE_OR_GOTO("client", data, out); -	trans = data; - -	conn = trans->xl_private; - -	gettimeofday (¤t, NULL); -	INIT_LIST_HEAD (&list); - -	pthread_mutex_lock (&conn->lock); -	{ -		/* Chaining to get call-always functionality from  -		   call-once timer */ -		if (conn->timer) { -			timer_cbk = conn->timer->cbk; - -			timeout.tv_sec = 10; -			timeout.tv_usec = 0; - -			gf_timer_call_cancel (trans->xl->ctx, conn->timer); -			conn->timer = gf_timer_call_after (trans->xl->ctx, -							   timeout, -							   timer_cbk, -							   trans); -			if (conn->timer == NULL) { -				gf_log (trans->xl->name, GF_LOG_DEBUG, -					"Cannot create bailout timer"); -			} -		} - -		do { -			saved_frame =  -			saved_frames_get_timedout (conn->saved_frames, -						   GF_OP_TYPE_MOP_REQUEST, -						   conn->frame_timeout, -						   ¤t); -			if (saved_frame) -				list_add (&saved_frame->list, &list); -			 -		} while (saved_frame); - -		do { -			saved_frame =  -			saved_frames_get_timedout (conn->saved_frames, -						   GF_OP_TYPE_FOP_REQUEST, -						   conn->frame_timeout, -						   ¤t); -			if (saved_frame) -				list_add (&saved_frame->list, &list); -		} while (saved_frame); - -		do { -			saved_frame =  -			saved_frames_get_timedout (conn->saved_frames, -						   GF_OP_TYPE_CBK_REQUEST, -						   conn->frame_timeout, -						   ¤t); -			if (saved_frame) -				list_add (&saved_frame->list, &list); -		} while (saved_frame); -	} -	pthread_mutex_unlock (&conn->lock); - -	hdr.rsp.op_ret   = hton32 (-1); -	hdr.rsp.op_errno = hton32 (ENOTCONN); - -	list_for_each_entry_safe (trav, tmp, &list, list) { -		switch (trav->type) -		{ -		case GF_OP_TYPE_FOP_REQUEST: -			gf_ops = gf_fops; -			gf_op_list = gf_fop_list; -			break; -		case GF_OP_TYPE_MOP_REQUEST: -			gf_ops = gf_mops; -			gf_op_list = gf_mop_list; -			break; -		case GF_OP_TYPE_CBK_REQUEST: -			gf_ops = gf_cbks; -			gf_op_list = gf_cbk_list; -			break; -		} - -		localtime_r (&trav->saved_at.tv_sec, &frame_sent_tm); -		strftime (frame_sent, 32, "%Y-%m-%d %H:%M:%S", &frame_sent_tm); - -		gf_log (trans->xl->name, GF_LOG_ERROR, -			"bailing out frame %s(%d) " -			"frame sent = %s. frame-timeout = %d", +        GF_VALIDATE_OR_GOTO ("client", data, out); +        trans = data; + +        conn = trans->xl_private; + +        gettimeofday (¤t, NULL); +        INIT_LIST_HEAD (&list); + +        pthread_mutex_lock (&conn->lock); +        { +                /* Chaining to get call-always functionality from +                   call-once timer */ +                if (conn->timer) { +                        timer_cbk = conn->timer->cbk; + +                        timeout.tv_sec = 10; +                        timeout.tv_usec = 0; + +                        gf_timer_call_cancel (trans->xl->ctx, conn->timer); +                        conn->timer = gf_timer_call_after (trans->xl->ctx, +                                                           timeout, +                                                           timer_cbk, +                                                           trans); +                        if (conn->timer == NULL) { +                                gf_log (trans->xl->name, GF_LOG_DEBUG, +                                        "Cannot create bailout timer"); +                        } +                } + +                do { +                        saved_frame = +                                saved_frames_get_timedout (conn->saved_frames, +                                                           GF_OP_TYPE_MOP_REQUEST, +                                                           conn->frame_timeout, +                                                           ¤t); +                        if (saved_frame) +                                list_add (&saved_frame->list, &list); + +                } while (saved_frame); + +                do { +                        saved_frame = +                                saved_frames_get_timedout (conn->saved_frames, +                                                           GF_OP_TYPE_FOP_REQUEST, +                                                           conn->frame_timeout, +                                                           ¤t); +                        if (saved_frame) +                                list_add (&saved_frame->list, &list); +                } while (saved_frame); + +                do { +                        saved_frame = +                                saved_frames_get_timedout (conn->saved_frames, +                                                           GF_OP_TYPE_CBK_REQUEST, +                                                           conn->frame_timeout, +                                                           ¤t); +                        if (saved_frame) +                                list_add (&saved_frame->list, &list); +                } while (saved_frame); +        } +        pthread_mutex_unlock (&conn->lock); + +        hdr.rsp.op_ret   = hton32 (-1); +        hdr.rsp.op_errno = hton32 (ENOTCONN); + +        list_for_each_entry_safe (trav, tmp, &list, list) { +                switch (trav->type) +                { +                case GF_OP_TYPE_FOP_REQUEST: +                        gf_ops = gf_fops; +                        gf_op_list = gf_fop_list; +                        break; +                case GF_OP_TYPE_MOP_REQUEST: +                        gf_ops = gf_mops; +                        gf_op_list = gf_mop_list; +                        break; +                case GF_OP_TYPE_CBK_REQUEST: +                        gf_ops = gf_cbks; +                        gf_op_list = gf_cbk_list; +                        break; +                } + +                localtime_r (&trav->saved_at.tv_sec, &frame_sent_tm); +                strftime (frame_sent, 32, "%Y-%m-%d %H:%M:%S", &frame_sent_tm); + +                gf_log (trans->xl->name, GF_LOG_ERROR, +                        "bailing out frame %s(%d) " +                        "frame sent = %s. frame-timeout = %d",                          gf_op_list[trav->op], trav->op, -			frame_sent, conn->frame_timeout); +                        frame_sent, conn->frame_timeout); -		hdr.type = hton32 (trav->type); -		hdr.op   = hton32 (trav->op); +                hdr.type = hton32 (trav->type); +                hdr.op   = hton32 (trav->op); -		frame = trav->frame; +                frame = trav->frame; -		gf_ops[trav->op] (frame, &hdr, sizeof (hdr), NULL); +                gf_ops[trav->op] (frame, &hdr, sizeof (hdr), NULL); -		list_del_init (&trav->list); -		FREE (trav); -	} +                list_del_init (&trav->list); +                FREE (trav); +        }  out: -	return; +        return;  }  void  save_frame (transport_t *trans, call_frame_t *frame, -	    int32_t op, int8_t type, uint64_t callid) +            int32_t op, int8_t type, uint64_t callid)  { -	client_connection_t *conn = NULL; -	struct timeval       timeout = {0, }; +        client_connection_t *conn = NULL; +        struct timeval       timeout = {0, }; -	conn = trans->xl_private; +        conn = trans->xl_private; -	saved_frames_put (conn->saved_frames, frame, op, type, callid); +        saved_frames_put (conn->saved_frames, frame, op, type, callid); -	if (conn->timer == NULL) { -		timeout.tv_sec  = 10; -		timeout.tv_usec = 0; -		conn->timer = gf_timer_call_after (trans->xl->ctx, timeout, -						   call_bail, (void *) trans); -       } +        if (conn->timer == NULL) { +                timeout.tv_sec  = 10; +                timeout.tv_usec = 0; +                conn->timer = gf_timer_call_after (trans->xl->ctx, timeout, +                                                   call_bail, (void *) trans); +        }  } -void  +void  client_ping_timer_expired (void *data)  { -	xlator_t            *this = NULL; -	transport_t         *trans = NULL; -	client_conf_t       *conf = NULL; -	client_connection_t *conn = NULL; -	int                  disconnect = 0; -	int                  transport_activity = 0; -	struct timeval       timeout = {0, }; -	struct timeval       current = {0, }; -	 -	trans = data; -	this  = trans->xl; -	conf  = this->private; -	conn  = trans->xl_private; - -	pthread_mutex_lock (&conn->lock); -	{ -		if (conn->ping_timer) -			gf_timer_call_cancel (trans->xl->ctx,  -					      conn->ping_timer); -		gettimeofday (¤t, NULL); +        xlator_t            *this = NULL; +        transport_t         *trans = NULL; +        client_conf_t       *conf = NULL; +        client_connection_t *conn = NULL; +        int                  disconnect = 0; +        int                  transport_activity = 0; +        struct timeval       timeout = {0, }; +        struct timeval       current = {0, }; + +        trans = data; +        this  = trans->xl; +        conf  = this->private; +        conn  = trans->xl_private; + +        pthread_mutex_lock (&conn->lock); +        { +                if (conn->ping_timer) +                        gf_timer_call_cancel (trans->xl->ctx, +                                              conn->ping_timer); +                gettimeofday (¤t, NULL);                  pthread_mutex_lock (&conf->mutex);                  { @@ -381,158 +381,158 @@ client_ping_timer_expired (void *data)                  }                  pthread_mutex_unlock (&conf->mutex); -		if (transport_activity) { -			gf_log (this->name, GF_LOG_TRACE, -				"ping timer expired but transport activity " -				"detected - not bailing transport"); -			conn->transport_activity = 0; -			timeout.tv_sec = conn->ping_timeout; -			timeout.tv_usec = 0; - -			conn->ping_timer =  -				gf_timer_call_after (trans->xl->ctx, timeout, -						     client_ping_timer_expired, -						     (void *) trans); -			if (conn->ping_timer == NULL)  -				gf_log (this->name, GF_LOG_DEBUG, -					"unable to setup timer"); - -		} else { -			conn->ping_started = 0; -			conn->ping_timer = NULL; -			disconnect = 1; -		} -	} -	pthread_mutex_unlock (&conn->lock); -	if (disconnect) { -		gf_log (this->name, GF_LOG_ERROR, -			"Server %s has not responded in the last %d " +                if (transport_activity) { +                        gf_log (this->name, GF_LOG_TRACE, +                                "ping timer expired but transport activity " +                                "detected - not bailing transport"); +                        conn->transport_activity = 0; +                        timeout.tv_sec = conn->ping_timeout; +                        timeout.tv_usec = 0; + +                        conn->ping_timer = +                                gf_timer_call_after (trans->xl->ctx, timeout, +                                                     client_ping_timer_expired, +                                                     (void *) trans); +                        if (conn->ping_timer == NULL) +                                gf_log (this->name, GF_LOG_DEBUG, +                                        "unable to setup timer"); + +                } else { +                        conn->ping_started = 0; +                        conn->ping_timer = NULL; +                        disconnect = 1; +                } +        } +        pthread_mutex_unlock (&conn->lock); +        if (disconnect) { +                gf_log (this->name, GF_LOG_ERROR, +                        "Server %s has not responded in the last %d "                          "seconds, disconnecting.",                          conf->transport[0]->peerinfo.identifier,                          conn->ping_timeout); -                 -		transport_disconnect (conf->transport[0]); -		transport_disconnect (conf->transport[1]); -	} + +                transport_disconnect (conf->transport[0]); +                transport_disconnect (conf->transport[1]); +        }  }  void  client_start_ping (void *data)  { -	xlator_t            *this = NULL; -	transport_t         *trans = NULL; -	client_conf_t       *conf = NULL; -	client_connection_t *conn = NULL; -	int32_t              ret = -1; -	gf_hdr_common_t     *hdr = NULL; -	struct timeval       timeout = {0, }; -	call_frame_t        *dummy_frame = NULL; -	size_t               hdrlen = -1; -	gf_mop_ping_req_t   *req = NULL; - - -	trans = data; -	this  = trans->xl; -	conf  = this->private; -	conn  = trans->xl_private; - -	pthread_mutex_lock (&conn->lock); -	{ -		if ((conn->saved_frames->count == 0) ||  -		    !conn->connected) { -			/* using goto looked ugly here,  -			 * hence getting out this way */ -			if (conn->ping_timer) -				gf_timer_call_cancel (trans->xl->ctx,  -						      conn->ping_timer); -			conn->ping_timer = NULL; -			conn->ping_started = 0; -			/* unlock */ -			pthread_mutex_unlock (&conn->lock); -			return; -		} - -		if (conn->saved_frames->count < 0) { -			gf_log (this->name, GF_LOG_DEBUG, -				"saved_frames->count is %"PRId64,  -				conn->saved_frames->count); -			conn->saved_frames->count = 0; -		} -		timeout.tv_sec = conn->ping_timeout; -		timeout.tv_usec = 0; +        xlator_t            *this = NULL; +        transport_t         *trans = NULL; +        client_conf_t       *conf = NULL; +        client_connection_t *conn = NULL; +        int32_t              ret = -1; +        gf_hdr_common_t     *hdr = NULL; +        struct timeval       timeout = {0, }; +        call_frame_t        *dummy_frame = NULL; +        size_t               hdrlen = -1; +        gf_mop_ping_req_t   *req = NULL; + + +        trans = data; +        this  = trans->xl; +        conf  = this->private; +        conn  = trans->xl_private; + +        pthread_mutex_lock (&conn->lock); +        { +                if ((conn->saved_frames->count == 0) || +                    !conn->connected) { +                        /* using goto looked ugly here, +                         * hence getting out this way */ +                        if (conn->ping_timer) +                                gf_timer_call_cancel (trans->xl->ctx, +                                                      conn->ping_timer); +                        conn->ping_timer = NULL; +                        conn->ping_started = 0; +                        /* unlock */ +                        pthread_mutex_unlock (&conn->lock); +                        return; +                } + +                if (conn->saved_frames->count < 0) { +                        gf_log (this->name, GF_LOG_DEBUG, +                                "saved_frames->count is %"PRId64, +                                conn->saved_frames->count); +                        conn->saved_frames->count = 0; +                } +                timeout.tv_sec = conn->ping_timeout; +                timeout.tv_usec = 0;                  if (conn->ping_timer)                          gf_timer_call_cancel (trans->xl->ctx,                                                conn->ping_timer); -		conn->ping_timer =  -			gf_timer_call_after (trans->xl->ctx, timeout, -					     client_ping_timer_expired, -					     (void *) trans); - -		if (conn->ping_timer == NULL) { -			gf_log (this->name, GF_LOG_DEBUG, -				"unable to setup timer"); -		} else { -			conn->ping_started = 1; -		} -	} -	pthread_mutex_unlock (&conn->lock); - -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); - -	dummy_frame = create_frame (this, this->ctx->pool); -	dummy_frame->local = trans; - -	ret = protocol_client_xfer (dummy_frame, this, trans, -				    GF_OP_TYPE_MOP_REQUEST, GF_MOP_PING, -				    hdr, hdrlen, NULL, 0, NULL); +                conn->ping_timer = +                        gf_timer_call_after (trans->xl->ctx, timeout, +                                             client_ping_timer_expired, +                                             (void *) trans); + +                if (conn->ping_timer == NULL) { +                        gf_log (this->name, GF_LOG_DEBUG, +                                "unable to setup timer"); +                } else { +                        conn->ping_started = 1; +                } +        } +        pthread_mutex_unlock (&conn->lock); + +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); + +        dummy_frame = create_frame (this, this->ctx->pool); +        dummy_frame->local = trans; + +        ret = protocol_client_xfer (dummy_frame, this, trans, +                                    GF_OP_TYPE_MOP_REQUEST, GF_MOP_PING, +                                    hdr, hdrlen, NULL, 0, NULL);  }  int  client_ping_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		 struct iobuf *iobuf) +                 struct iobuf *iobuf)  { -	xlator_t            *this = NULL; -	transport_t         *trans = NULL; -	client_connection_t *conn = NULL; -	struct timeval       timeout = {0, }; -	int                  op_ret = 0; - -	trans  = frame->local; frame->local = NULL; -	this   = trans->xl; -	conn   = trans->xl_private; - -	op_ret = ntoh32 (hdr->rsp.op_ret); - -	if (op_ret == -1) { -		/* timer expired and transport bailed out */ -		gf_log (this->name, GF_LOG_DEBUG, "timer must have expired"); -		goto out; -	} - -	pthread_mutex_lock (&conn->lock); -	{ -		timeout.tv_sec  = conn->ping_timeout; -		timeout.tv_usec = 0; - -		gf_timer_call_cancel (trans->xl->ctx,  -				      conn->ping_timer); -	 -		conn->ping_timer =  -			gf_timer_call_after (trans->xl->ctx, timeout, -					     client_start_ping, (void *)trans); -		if (conn->ping_timer == NULL) -			gf_log (this->name, GF_LOG_DEBUG, -				"gf_timer_call_after() returned NULL"); -	} -	pthread_mutex_unlock (&conn->lock); +        xlator_t            *this = NULL; +        transport_t         *trans = NULL; +        client_connection_t *conn = NULL; +        struct timeval       timeout = {0, }; +        int                  op_ret = 0; + +        trans  = frame->local; frame->local = NULL; +        this   = trans->xl; +        conn   = trans->xl_private; + +        op_ret = ntoh32 (hdr->rsp.op_ret); + +        if (op_ret == -1) { +                /* timer expired and transport bailed out */ +                gf_log (this->name, GF_LOG_DEBUG, "timer must have expired"); +                goto out; +        } + +        pthread_mutex_lock (&conn->lock); +        { +                timeout.tv_sec  = conn->ping_timeout; +                timeout.tv_usec = 0; + +                gf_timer_call_cancel (trans->xl->ctx, +                                      conn->ping_timer); + +                conn->ping_timer = +                        gf_timer_call_after (trans->xl->ctx, timeout, +                                             client_start_ping, (void *)trans); +                if (conn->ping_timer == NULL) +                        gf_log (this->name, GF_LOG_DEBUG, +                                "gf_timer_call_after() returned NULL"); +        } +        pthread_mutex_unlock (&conn->lock);  out: -	STACK_DESTROY (frame->root); -	return 0; +        STACK_DESTROY (frame->root); +        return 0;  } @@ -543,85 +543,85 @@ protocol_client_xfer (call_frame_t *frame, xlator_t *this, transport_t *trans,                        struct iovec *vector, int count,                        struct iobref *iobref)  { -	client_conf_t        *conf = NULL; -	client_connection_t  *conn = NULL; -	uint64_t              callid = 0; -	int32_t               ret = -1; -	int                   start_ping = 0; -	gf_hdr_common_t       rsphdr = {0, }; - -	conf  = this->private; - -	if (!trans) { -		/* default to bulk op since it is 'safer' */ -		trans = conf->transport[CHANNEL_BULK]; -	} -	conn  = trans->xl_private; - -	pthread_mutex_lock (&conn->lock); -	{ -		callid = ++conn->callid; - -		hdr->callid = hton64 (callid); -		hdr->op     = hton32 (op); -		hdr->type   = hton32 (type); - -		if (frame) { -			hdr->req.uid = hton32 (frame->root->uid); -			hdr->req.gid = hton32 (frame->root->gid); -			hdr->req.pid = hton32 (frame->root->pid); -		} - -		if (conn->connected == 0) -			transport_connect (trans); - -		ret = -1; - -		if (conn->connected || -		    ((type == GF_OP_TYPE_MOP_REQUEST) && -		     (op == GF_MOP_SETVOLUME))) { -			ret = transport_submit (trans, (char *)hdr, hdrlen, -						vector, count, iobref); -		} -		 -		if ((ret >= 0) && frame) { +        client_conf_t        *conf = NULL; +        client_connection_t  *conn = NULL; +        uint64_t              callid = 0; +        int32_t               ret = -1; +        int                   start_ping = 0; +        gf_hdr_common_t       rsphdr = {0, }; + +        conf  = this->private; + +        if (!trans) { +                /* default to bulk op since it is 'safer' */ +                trans = conf->transport[CHANNEL_BULK]; +        } +        conn  = trans->xl_private; + +        pthread_mutex_lock (&conn->lock); +        { +                callid = ++conn->callid; + +                hdr->callid = hton64 (callid); +                hdr->op     = hton32 (op); +                hdr->type   = hton32 (type); + +                if (frame) { +                        hdr->req.uid = hton32 (frame->root->uid); +                        hdr->req.gid = hton32 (frame->root->gid); +                        hdr->req.pid = hton32 (frame->root->pid); +                } + +                if (conn->connected == 0) +                        transport_connect (trans); + +                ret = -1; + +                if (conn->connected || +                    ((type == GF_OP_TYPE_MOP_REQUEST) && +                     (op == GF_MOP_SETVOLUME))) { +                        ret = transport_submit (trans, (char *)hdr, hdrlen, +                                                vector, count, iobref); +                } + +                if ((ret >= 0) && frame) {                          pthread_mutex_lock (&conf->mutex);                          {                                  gettimeofday (&conf->last_sent, NULL);                          }                          pthread_mutex_unlock (&conf->mutex); -			save_frame (trans, frame, op, type, callid); -		} - -		if (!conn->ping_started && (ret >= 0)) { -			start_ping = 1; -		} -	} -	pthread_mutex_unlock (&conn->lock); - -	if (start_ping) -		client_start_ping ((void *) trans); - -	if (frame && (ret < 0)) { -		rsphdr.op = op; -		rsphdr.rsp.op_ret   = hton32 (-1); -		rsphdr.rsp.op_errno = hton32 (ENOTCONN); - -		if (type == GF_OP_TYPE_FOP_REQUEST) { -			rsphdr.type = GF_OP_TYPE_FOP_REPLY; -			gf_fops[op] (frame, &rsphdr, sizeof (rsphdr), NULL); -		} else if (type == GF_OP_TYPE_MOP_REQUEST) { -			rsphdr.type = GF_OP_TYPE_MOP_REPLY; -			gf_mops[op] (frame, &rsphdr, sizeof (rsphdr), NULL); -		} else { -			rsphdr.type = GF_OP_TYPE_CBK_REPLY; -			gf_cbks[op] (frame, &rsphdr, sizeof (rsphdr), NULL); -		} +                        save_frame (trans, frame, op, type, callid); +                } + +                if (!conn->ping_started && (ret >= 0)) { +                        start_ping = 1; +                } +        } +        pthread_mutex_unlock (&conn->lock); + +        if (start_ping) +                client_start_ping ((void *) trans); + +        if (frame && (ret < 0)) { +                rsphdr.op = op; +                rsphdr.rsp.op_ret   = hton32 (-1); +                rsphdr.rsp.op_errno = hton32 (ENOTCONN); + +                if (type == GF_OP_TYPE_FOP_REQUEST) { +                        rsphdr.type = GF_OP_TYPE_FOP_REPLY; +                        gf_fops[op] (frame, &rsphdr, sizeof (rsphdr), NULL); +                } else if (type == GF_OP_TYPE_MOP_REQUEST) { +                        rsphdr.type = GF_OP_TYPE_MOP_REPLY; +                        gf_mops[op] (frame, &rsphdr, sizeof (rsphdr), NULL); +                } else { +                        rsphdr.type = GF_OP_TYPE_CBK_REPLY; +                        gf_cbks[op] (frame, &rsphdr, sizeof (rsphdr), NULL); +                }                  FREE (hdr); -	} +        } -	return ret; +        return ret;  } @@ -641,59 +641,59 @@ int  client_create (call_frame_t *frame, xlator_t *this, loc_t *loc, int32_t flags,                 mode_t mode, fd_t *fd)  { -	gf_hdr_common_t     *hdr = NULL; -	gf_fop_create_req_t *req = NULL; -	size_t               hdrlen = 0; -	size_t               pathlen = 0; -	size_t               baselen = 0; -	int32_t              ret = -1; -	ino_t                par = 0; -	uint64_t             gen = 0; -	client_local_t      *local = NULL; - - -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); - -	local->fd = fd_ref (fd); -	loc_copy (&local->loc, loc); -	 -	frame->local = local; - -	pathlen = STRLEN_0(loc->path); -	baselen = STRLEN_0(loc->name); - -	ret = inode_ctx_get2 (loc->parent, this, &par, &gen); -	if (loc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"CREATE %"PRId64"/%s (%s): failed to get remote inode " -                        "number for parent inode",  +        gf_hdr_common_t     *hdr = NULL; +        gf_fop_create_req_t *req = NULL; +        size_t               hdrlen = 0; +        size_t               pathlen = 0; +        size_t               baselen = 0; +        int32_t              ret = -1; +        ino_t                par = 0; +        uint64_t             gen = 0; +        client_local_t      *local = NULL; + + +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); + +        local->fd = fd_ref (fd); +        loc_copy (&local->loc, loc); + +        frame->local = local; + +        pathlen = STRLEN_0 (loc->path); +        baselen = STRLEN_0 (loc->name); + +        ret = inode_ctx_get2 (loc->parent, this, &par, &gen); +        if (loc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "CREATE %"PRId64"/%s (%s): failed to get remote inode " +                        "number for parent inode",                          loc->parent->ino, loc->name, loc->path); -	} - -	hdrlen = gf_hdr_len (req, pathlen + baselen); -	hdr    = gf_hdr_new (req, pathlen + baselen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req    = gf_param (hdr); - -	req->flags   = hton32 (gf_flags_from_flags (flags)); -	req->mode    = hton32 (mode); -	req->par     = hton64 (par); -	req->gen     = hton64 (gen); -	strcpy (req->path, loc->path); -	strcpy (req->bname + pathlen, loc->name); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_CREATE, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        } + +        hdrlen = gf_hdr_len (req, pathlen + baselen); +        hdr    = gf_hdr_new (req, pathlen + baselen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr); + +        req->flags   = hton32 (gf_flags_from_flags (flags)); +        req->mode    = hton32 (mode); +        req->par     = hton64 (par); +        req->gen     = hton64 (gen); +        strcpy (req->path, loc->path); +        strcpy (req->bname + pathlen, loc->name); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_CREATE, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, fd, NULL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, fd, NULL, NULL); +        return 0;  } @@ -712,56 +712,56 @@ int  client_open (call_frame_t *frame, xlator_t *this, loc_t *loc, int32_t flags,               fd_t *fd, int32_t wbflags)  { -	int                 ret = -1; -	gf_hdr_common_t    *hdr = NULL; -	size_t              hdrlen = 0; -	gf_fop_open_req_t  *req = NULL; -	size_t              pathlen = 0; -	ino_t               ino = 0; +        int                 ret = -1; +        gf_hdr_common_t    *hdr = NULL; +        size_t              hdrlen = 0; +        gf_fop_open_req_t  *req = NULL; +        size_t              pathlen = 0; +        ino_t               ino = 0;          uint64_t            gen = 0; -	client_local_t     *local = NULL; +        client_local_t     *local = NULL; -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); -	local->fd = fd_ref (fd); -	loc_copy (&local->loc, loc);	 +        local->fd = fd_ref (fd); +        loc_copy (&local->loc, loc); -	frame->local = local; +        frame->local = local; -	pathlen = STRLEN_0(loc->path); +        pathlen = STRLEN_0 (loc->path); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"OPEN %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "OPEN %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino   = hton64 (ino); -	req->gen   = hton64 (gen); -	req->flags = hton32 (gf_flags_from_flags (flags)); +        req->ino   = hton64 (ino); +        req->gen   = hton64 (gen); +        req->flags = hton32 (gf_flags_from_flags (flags));          req->wbflags = hton32 (wbflags); -	strcpy (req->path, loc->path); -	 -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_OPEN, -				    hdr, hdrlen, NULL, 0, NULL); - -	return ret; +        strcpy (req->path, loc->path); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_OPEN, +                                    hdr, hdrlen, NULL, 0, NULL); + +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, fd); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, fd); +        return 0;  } @@ -778,45 +778,45 @@ unwind:  int  client_stat (call_frame_t *frame, xlator_t *this, loc_t *loc)  { -	gf_hdr_common_t   *hdr = NULL; -	gf_fop_stat_req_t *req = NULL; -	size_t             hdrlen = -1; -	int32_t            ret = -1; -	size_t             pathlen = 0; -	ino_t              ino = 0; -	ino_t              gen = 0; - -	pathlen = STRLEN_0(loc->path); - -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_TRACE, -			"STAT %"PRId64" (%s): " +        gf_hdr_common_t   *hdr = NULL; +        gf_fop_stat_req_t *req = NULL; +        size_t             hdrlen = -1; +        int32_t            ret = -1; +        size_t             pathlen = 0; +        ino_t              ino = 0; +        ino_t              gen = 0; + +        pathlen = STRLEN_0 (loc->path); + +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_TRACE, +                        "STAT %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino  = hton64 (ino); -	req->gen  = hton64 (gen); -	strcpy (req->path, loc->path); +        req->ino  = hton64 (ino); +        req->gen  = hton64 (gen); +        strcpy (req->path, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_STAT, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_STAT, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND (frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -833,46 +833,46 @@ unwind:  int  client_readlink (call_frame_t *frame, xlator_t *this, loc_t *loc, size_t size)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_readlink_req_t *req = NULL; -	size_t                 hdrlen = -1; -	int                    ret = -1; -	size_t                 pathlen = 0; -	ino_t                  ino = 0; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_readlink_req_t *req = NULL; +        size_t                 hdrlen = -1; +        int                    ret = -1; +        size_t                 pathlen = 0; +        ino_t                  ino = 0;          uint64_t               gen = 0; -	pathlen = STRLEN_0(loc->path); +        pathlen = STRLEN_0 (loc->path); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"READLINK %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "READLINK %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino  = hton64 (ino); -	req->gen  = hton64 (gen); -	req->size = hton32 (size); -	strcpy (req->path, loc->path); +        req->ino  = hton64 (ino); +        req->gen  = hton64 (gen); +        req->size = hton32 (size); +        strcpy (req->path, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_READLINK, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_READLINK, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -891,57 +891,57 @@ int  client_mknod (call_frame_t *frame, xlator_t *this, loc_t *loc, mode_t mode,                dev_t dev)  { -	gf_hdr_common_t    *hdr = NULL; -	gf_fop_mknod_req_t *req = NULL; -	size_t              hdrlen = -1; -	int                 ret = -1; -	size_t              pathlen = 0; -	size_t              baselen = 0; -	ino_t               par = 0; +        gf_hdr_common_t    *hdr = NULL; +        gf_fop_mknod_req_t *req = NULL; +        size_t              hdrlen = -1; +        int                 ret = -1; +        size_t              pathlen = 0; +        size_t              baselen = 0; +        ino_t               par = 0;          uint64_t            gen = 0; -	client_local_t     *local = NULL; +        client_local_t     *local = NULL; -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); -	loc_copy (&local->loc, loc);	 +        loc_copy (&local->loc, loc); -	frame->local = local; +        frame->local = local; -	pathlen = STRLEN_0(loc->path); -	baselen = STRLEN_0(loc->name); -	ret = inode_ctx_get2 (loc->parent, this, &par, &gen); -	if (loc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"MKNOD %"PRId64"/%s (%s): failed to get remote inode " -                        "number for parent",  +        pathlen = STRLEN_0 (loc->path); +        baselen = STRLEN_0 (loc->name); +        ret = inode_ctx_get2 (loc->parent, this, &par, &gen); +        if (loc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "MKNOD %"PRId64"/%s (%s): failed to get remote inode " +                        "number for parent",                          loc->parent->ino, loc->name, loc->path); -	} +        } -	hdrlen = gf_hdr_len (req, pathlen + baselen); -	hdr    = gf_hdr_new (req, pathlen + baselen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen + baselen); +        hdr    = gf_hdr_new (req, pathlen + baselen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->par  = hton64 (par); -	req->gen  = hton64 (gen); -	req->mode = hton32 (mode); -	req->dev  = hton64 (dev); -	strcpy (req->path, loc->path); -	strcpy (req->bname + pathlen, loc->name); +        req->par  = hton64 (par); +        req->gen  = hton64 (gen); +        req->mode = hton32 (mode); +        req->dev  = hton64 (dev); +        strcpy (req->path, loc->path); +        strcpy (req->bname + pathlen, loc->name); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_MKNOD, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_MKNOD, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, loc->inode, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, loc->inode, NULL); +        return 0;  } @@ -958,56 +958,56 @@ unwind:  int  client_mkdir (call_frame_t *frame, xlator_t *this, loc_t *loc, mode_t mode)  { -	gf_hdr_common_t    *hdr = NULL; -	gf_fop_mkdir_req_t *req = NULL; -	size_t              hdrlen = -1; -	int                 ret = -1; -	size_t              pathlen = 0; -	size_t              baselen = 0; -	ino_t               par = 0; +        gf_hdr_common_t    *hdr = NULL; +        gf_fop_mkdir_req_t *req = NULL; +        size_t              hdrlen = -1; +        int                 ret = -1; +        size_t              pathlen = 0; +        size_t              baselen = 0; +        ino_t               par = 0;          uint64_t            gen = 0; -	client_local_t     *local = NULL; - -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); -	 -	loc_copy (&local->loc, loc); - -	frame->local = local; - -	pathlen = STRLEN_0(loc->path); -	baselen = STRLEN_0(loc->name); -	ret = inode_ctx_get2 (loc->parent, this, &par, &gen); -	if (loc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"MKDIR %"PRId64"/%s (%s): failed to get remote inode " -                        "number for parent",  +        client_local_t     *local = NULL; + +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); + +        loc_copy (&local->loc, loc); + +        frame->local = local; + +        pathlen = STRLEN_0 (loc->path); +        baselen = STRLEN_0 (loc->name); +        ret = inode_ctx_get2 (loc->parent, this, &par, &gen); +        if (loc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "MKDIR %"PRId64"/%s (%s): failed to get remote inode " +                        "number for parent",                          loc->parent->ino, loc->name, loc->path); -	} - -	hdrlen = gf_hdr_len (req, pathlen + baselen); -	hdr    = gf_hdr_new (req, pathlen + baselen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req    = gf_param (hdr); - -	req->par  = hton64 (par); -	req->gen  = hton64 (gen); -	req->mode = hton32 (mode); -	strcpy (req->path, loc->path); -	strcpy (req->bname + pathlen, loc->name); -	 -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_MKDIR, -				    hdr, hdrlen, NULL, 0, NULL); - -	return ret; +        } + +        hdrlen = gf_hdr_len (req, pathlen + baselen); +        hdr    = gf_hdr_new (req, pathlen + baselen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr); + +        req->par  = hton64 (par); +        req->gen  = hton64 (gen); +        req->mode = hton32 (mode); +        strcpy (req->path, loc->path); +        strcpy (req->bname + pathlen, loc->name); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_MKDIR, +                                    hdr, hdrlen, NULL, 0, NULL); + +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, loc->inode, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, loc->inode, NULL); +        return 0;  } @@ -1023,47 +1023,47 @@ unwind:  int  client_unlink (call_frame_t *frame, xlator_t *this, loc_t *loc)  { -	gf_hdr_common_t     *hdr = NULL; -	gf_fop_unlink_req_t *req = NULL; -	size_t               hdrlen = -1; -	int                  ret = -1; -	size_t               pathlen = 0; -	size_t               baselen = 0; -	ino_t                par = 0; +        gf_hdr_common_t     *hdr = NULL; +        gf_fop_unlink_req_t *req = NULL; +        size_t               hdrlen = -1; +        int                  ret = -1; +        size_t               pathlen = 0; +        size_t               baselen = 0; +        ino_t                par = 0;          uint64_t             gen = 0; -	pathlen = STRLEN_0(loc->path); -	baselen = STRLEN_0(loc->name); -	ret = inode_ctx_get2 (loc->parent, this, &par, &gen); -	if (loc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"UNLINK %"PRId64"/%s (%s): failed to get remote inode " -                        "number for parent",  +        pathlen = STRLEN_0 (loc->path); +        baselen = STRLEN_0 (loc->name); +        ret = inode_ctx_get2 (loc->parent, this, &par, &gen); +        if (loc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "UNLINK %"PRId64"/%s (%s): failed to get remote inode " +                        "number for parent",                          loc->parent->ino, loc->name, loc->path); -	} +        } -	hdrlen = gf_hdr_len (req, pathlen + baselen); -	hdr    = gf_hdr_new (req, pathlen + baselen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen + baselen); +        hdr    = gf_hdr_new (req, pathlen + baselen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->par  = hton64 (par); -	req->gen  = hton64 (gen); -	strcpy (req->path, loc->path); -	strcpy (req->bname + pathlen, loc->name); +        req->par  = hton64 (par); +        req->gen  = hton64 (gen); +        strcpy (req->path, loc->path); +        strcpy (req->bname + pathlen, loc->name); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_UNLINK, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_UNLINK, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  } @@ -1079,47 +1079,47 @@ unwind:  int  client_rmdir (call_frame_t *frame, xlator_t *this, loc_t *loc)  { -	gf_hdr_common_t    *hdr = NULL; -	gf_fop_rmdir_req_t *req = NULL; -	size_t              hdrlen = -1; -	int                 ret = -1; -	size_t              pathlen = 0; -	size_t              baselen = 0; -	ino_t               par = 0; -	uint64_t            gen = 0; - -	pathlen = STRLEN_0(loc->path); -	baselen = STRLEN_0(loc->name); -	ret = inode_ctx_get2 (loc->parent, this, &par, &gen); -	if (loc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"RMDIR %"PRId64"/%s (%s): failed to get remote inode " -                        "number for parent",  +        gf_hdr_common_t    *hdr = NULL; +        gf_fop_rmdir_req_t *req = NULL; +        size_t              hdrlen = -1; +        int                 ret = -1; +        size_t              pathlen = 0; +        size_t              baselen = 0; +        ino_t               par = 0; +        uint64_t            gen = 0; + +        pathlen = STRLEN_0 (loc->path); +        baselen = STRLEN_0 (loc->name); +        ret = inode_ctx_get2 (loc->parent, this, &par, &gen); +        if (loc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "RMDIR %"PRId64"/%s (%s): failed to get remote inode " +                        "number for parent",                          loc->parent->ino, loc->name, loc->path); -	} +        } -	hdrlen = gf_hdr_len (req, pathlen + baselen); -	hdr    = gf_hdr_new (req, pathlen + baselen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen + baselen); +        hdr    = gf_hdr_new (req, pathlen + baselen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->par  = hton64 (par); -	req->gen  = hton64 (gen); -	strcpy (req->path, loc->path); -	strcpy (req->bname + pathlen, loc->name); +        req->par  = hton64 (par); +        req->gen  = hton64 (gen); +        strcpy (req->path, loc->path); +        strcpy (req->bname + pathlen, loc->name); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_RMDIR, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_RMDIR, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  } @@ -1138,57 +1138,57 @@ int  client_symlink (call_frame_t *frame, xlator_t *this, const char *linkname,                  loc_t *loc)  { -	int                   ret = -1; -	gf_hdr_common_t      *hdr = NULL; -	gf_fop_symlink_req_t *req = NULL; -	size_t                hdrlen  = 0; -	size_t                pathlen = 0; -	size_t                newlen  = 0; -	size_t                baselen = 0; -	ino_t                 par = 0; +        int                   ret = -1; +        gf_hdr_common_t      *hdr = NULL; +        gf_fop_symlink_req_t *req = NULL; +        size_t                hdrlen  = 0; +        size_t                pathlen = 0; +        size_t                newlen  = 0; +        size_t                baselen = 0; +        ino_t                 par = 0;          uint64_t              gen = 0; -	client_local_t       *local = NULL; - -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); -	 -	loc_copy (&local->loc, loc); - -	frame->local = local; - -	pathlen = STRLEN_0 (loc->path); -	baselen = STRLEN_0 (loc->name); -	newlen = STRLEN_0 (linkname); -	ret = inode_ctx_get2 (loc->parent, this, &par, &gen); -	if (loc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"SYMLINK %"PRId64"/%s (%s): failed to get remote inode" +        client_local_t       *local = NULL; + +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); + +        loc_copy (&local->loc, loc); + +        frame->local = local; + +        pathlen = STRLEN_0 (loc->path); +        baselen = STRLEN_0 (loc->name); +        newlen = STRLEN_0 (linkname); +        ret = inode_ctx_get2 (loc->parent, this, &par, &gen); +        if (loc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "SYMLINK %"PRId64"/%s (%s): failed to get remote inode"                          " number parent",                          loc->parent->ino, loc->name, loc->path); -	} - -	hdrlen = gf_hdr_len (req, pathlen + baselen + newlen); -	hdr    = gf_hdr_new (req, pathlen + baselen + newlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req    = gf_param (hdr); - -	req->par =  hton64 (par); -	req->gen =  hton64 (gen); -	strcpy (req->path, loc->path); -	strcpy (req->bname + pathlen, loc->name); -	strcpy (req->linkname + pathlen + baselen, linkname); -	 -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SYMLINK, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        } + +        hdrlen = gf_hdr_len (req, pathlen + baselen + newlen); +        hdr    = gf_hdr_new (req, pathlen + baselen + newlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr); + +        req->par =  hton64 (par); +        req->gen =  hton64 (gen); +        strcpy (req->path, loc->path); +        strcpy (req->bname + pathlen, loc->name); +        strcpy (req->linkname + pathlen + baselen, linkname); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SYMLINK, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, loc->inode, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, loc->inode, NULL); +        return 0;  } @@ -1206,69 +1206,69 @@ int  client_rename (call_frame_t *frame, xlator_t *this, loc_t *oldloc,                 loc_t *newloc)  { -	int                  ret = -1; -	gf_hdr_common_t     *hdr = NULL; -	gf_fop_rename_req_t *req = NULL; -	size_t               hdrlen = 0; -	size_t               oldpathlen = 0; -	size_t               oldbaselen = 0; -	size_t               newpathlen = 0; -	size_t               newbaselen = 0; -	ino_t                oldpar = 0; +        int                  ret = -1; +        gf_hdr_common_t     *hdr = NULL; +        gf_fop_rename_req_t *req = NULL; +        size_t               hdrlen = 0; +        size_t               oldpathlen = 0; +        size_t               oldbaselen = 0; +        size_t               newpathlen = 0; +        size_t               newbaselen = 0; +        ino_t                oldpar = 0;          uint64_t             oldgen = 0; -	ino_t                newpar = 0; +        ino_t                newpar = 0;          uint64_t             newgen = 0; -	oldpathlen = STRLEN_0(oldloc->path); -	oldbaselen = STRLEN_0(oldloc->name); -	newpathlen = STRLEN_0(newloc->path); -	newbaselen = STRLEN_0(newloc->name); -	ret = inode_ctx_get2 (oldloc->parent, this, &oldpar, &oldgen); -	if (oldloc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"RENAME %"PRId64"/%s (%s): failed to get remote inode " -                        "number for source parent",  +        oldpathlen = STRLEN_0 (oldloc->path); +        oldbaselen = STRLEN_0 (oldloc->name); +        newpathlen = STRLEN_0 (newloc->path); +        newbaselen = STRLEN_0 (newloc->name); +        ret = inode_ctx_get2 (oldloc->parent, this, &oldpar, &oldgen); +        if (oldloc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "RENAME %"PRId64"/%s (%s): failed to get remote inode " +                        "number for source parent",                          oldloc->parent->ino, oldloc->name, oldloc->path); -	} +        } -	ret = inode_ctx_get2 (newloc->parent, this, &newpar, &newgen); -	if (newloc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"CREATE %"PRId64"/%s (%s): failed to get remote inode " -                        "number for destination parent",  +        ret = inode_ctx_get2 (newloc->parent, this, &newpar, &newgen); +        if (newloc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "CREATE %"PRId64"/%s (%s): failed to get remote inode " +                        "number for destination parent",                          newloc->parent->ino, newloc->name, newloc->path); -	} +        } -	hdrlen = gf_hdr_len (req, (oldpathlen + oldbaselen +  -				   newpathlen + newbaselen)); -	hdr    = gf_hdr_new (req, (oldpathlen + oldbaselen +  -				   newpathlen + newbaselen)); +        hdrlen = gf_hdr_len (req, (oldpathlen + oldbaselen + +                                   newpathlen + newbaselen)); +        hdr    = gf_hdr_new (req, (oldpathlen + oldbaselen + +                                   newpathlen + newbaselen)); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->oldpar = hton64 (oldpar); +        req->oldpar = hton64 (oldpar);          req->oldgen = hton64 (oldgen); -	req->newpar = hton64 (newpar); +        req->newpar = hton64 (newpar);          req->newgen = hton64 (newgen); -	strcpy (req->oldpath, oldloc->path); -	strcpy (req->oldbname + oldpathlen, oldloc->name); -	strcpy (req->newpath  + oldpathlen + oldbaselen, newloc->path); -	strcpy (req->newbname + oldpathlen + oldbaselen + newpathlen,  -		newloc->name); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_RENAME, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        strcpy (req->oldpath, oldloc->path); +        strcpy (req->oldbname + oldpathlen, oldloc->name); +        strcpy (req->newpath  + oldpathlen + oldbaselen, newloc->path); +        strcpy (req->newbname + oldpathlen + oldbaselen + newpathlen, +                newloc->name); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_RENAME, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -1285,73 +1285,73 @@ unwind:  int  client_link (call_frame_t *frame, xlator_t *this, loc_t *oldloc, loc_t *newloc)  { -	int                ret = -1; -	gf_hdr_common_t   *hdr = NULL; -	gf_fop_link_req_t *req = NULL; -	size_t             hdrlen = 0; -	size_t             oldpathlen = 0; -	size_t             newpathlen = 0; -	size_t             newbaselen = 0; -	ino_t              oldino = 0; +        int                ret = -1; +        gf_hdr_common_t   *hdr = NULL; +        gf_fop_link_req_t *req = NULL; +        size_t             hdrlen = 0; +        size_t             oldpathlen = 0; +        size_t             newpathlen = 0; +        size_t             newbaselen = 0; +        ino_t              oldino = 0;          uint64_t           oldgen = 0; -	ino_t              newpar = 0; +        ino_t              newpar = 0;          uint64_t           newgen = 0; -	client_local_t    *local = NULL; +        client_local_t    *local = NULL; -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); -	loc_copy (&local->loc, oldloc); +        loc_copy (&local->loc, oldloc); -	frame->local = local; +        frame->local = local; -	oldpathlen = STRLEN_0(oldloc->path); -	newpathlen = STRLEN_0(newloc->path); -	newbaselen = STRLEN_0(newloc->name); +        oldpathlen = STRLEN_0 (oldloc->path); +        newpathlen = STRLEN_0 (newloc->path); +        newbaselen = STRLEN_0 (newloc->name); -	ret = inode_ctx_get2 (oldloc->inode, this, &oldino, &oldgen); -	if (oldloc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"LINK %"PRId64"/%s (%s) ==> %"PRId64" (%s): " +        ret = inode_ctx_get2 (oldloc->inode, this, &oldino, &oldgen); +        if (oldloc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "LINK %"PRId64"/%s (%s) ==> %"PRId64" (%s): "                          "failed to get remote inode number for source inode", -			newloc->parent->ino, newloc->name, newloc->path, +                        newloc->parent->ino, newloc->name, newloc->path,                          oldloc->ino, oldloc->path); -	} +        } -	ret = inode_ctx_get2 (newloc->parent, this, &newpar, &newgen); -	if (newloc->parent->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"LINK %"PRId64"/%s (%s) ==> %"PRId64" (%s): " -                        "failed to get remote inode number destination parent",  +        ret = inode_ctx_get2 (newloc->parent, this, &newpar, &newgen); +        if (newloc->parent->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "LINK %"PRId64"/%s (%s) ==> %"PRId64" (%s): " +                        "failed to get remote inode number destination parent",                          newloc->parent->ino, newloc->name, newloc->path,                          oldloc->ino, oldloc->path); -	} +        } -	hdrlen = gf_hdr_len (req, oldpathlen + newpathlen + newbaselen); -	hdr    = gf_hdr_new (req, oldpathlen + newpathlen + newbaselen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, oldpathlen + newpathlen + newbaselen); +        hdr    = gf_hdr_new (req, oldpathlen + newpathlen + newbaselen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	strcpy (req->oldpath, oldloc->path); -	strcpy (req->newpath  + oldpathlen, newloc->path); -	strcpy (req->newbname + oldpathlen + newpathlen, newloc->name); +        strcpy (req->oldpath, oldloc->path); +        strcpy (req->newpath  + oldpathlen, newloc->path); +        strcpy (req->newbname + oldpathlen + newpathlen, newloc->name); -	req->oldino = hton64 (oldino); -	req->oldgen = hton64 (oldgen); -	req->newpar = hton64 (newpar); -	req->newgen = hton64 (newgen); +        req->oldino = hton64 (oldino); +        req->oldgen = hton64 (oldgen); +        req->newpar = hton64 (newpar); +        req->newgen = hton64 (newgen); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_LINK, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_LINK, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, oldloc->inode, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, oldloc->inode, NULL); +        return 0;  } @@ -1368,45 +1368,45 @@ unwind:  int  client_truncate (call_frame_t *frame, xlator_t *this, loc_t *loc, off_t offset)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_truncate_req_t *req = NULL; -	size_t                 hdrlen = -1; -	int                    ret = -1; -	size_t                 pathlen = 0; -	ino_t                  ino = 0; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_truncate_req_t *req = NULL; +        size_t                 hdrlen = -1; +        int                    ret = -1; +        size_t                 pathlen = 0; +        ino_t                  ino = 0;          uint64_t               gen = 0; -	pathlen = STRLEN_0(loc->path); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"TRUNCATE %"PRId64" (%s): " +        pathlen = STRLEN_0 (loc->path); +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "TRUNCATE %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino    = hton64 (ino); +        req->ino    = hton64 (ino);          req->gen    = hton64 (gen); -	req->offset = hton64 (offset); -	strcpy (req->path, loc->path); +        req->offset = hton64 (offset); +        strcpy (req->path, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_TRUNCATE, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_TRUNCATE, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -1426,51 +1426,51 @@ int  client_readv (call_frame_t *frame, xlator_t *this, fd_t *fd, size_t size,                off_t offset)  { -	gf_hdr_common_t    *hdr = NULL; -	gf_fop_read_req_t  *req = NULL; -	size_t              hdrlen = 0; -	int64_t             remote_fd = -1; -	int                 ret = -1; +        gf_hdr_common_t    *hdr = NULL; +        gf_fop_read_req_t  *req = NULL; +        size_t              hdrlen = 0; +        int64_t             remote_fd = -1; +        int                 ret = -1;          client_fd_ctx_t    *fdctx = NULL; -        client_conf_t      *conf = NULL;  +        client_conf_t      *conf = NULL;          conf = this->private; -  +          pthread_mutex_lock (&conf->mutex);          {                  fdctx = this_fd_get_ctx (fd, this);          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx, EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD, NULL, 0, NULL); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx, EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, NULL, 0, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd     = hton64 (remote_fd); -	req->size   = hton32 (size); -	req->offset = hton64 (offset); +        req->fd     = hton64 (remote_fd); +        req->size   = hton32 (size); +        req->offset = hton64 (offset); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_READ, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_READ, +                                    hdr, hdrlen, NULL, 0, NULL); -	return 0; +        return 0;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL, 0, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL, 0, NULL); +        return 0;  } @@ -1491,11 +1491,11 @@ client_writev (call_frame_t *frame, xlator_t *this, fd_t *fd,                 struct iovec *vector, int32_t count, off_t offset,                 struct iobref *iobref)  { -	gf_hdr_common_t    *hdr = NULL; -	gf_fop_write_req_t *req = NULL; -	size_t              hdrlen = 0; -	int64_t             remote_fd = -1; -	int                 ret = -1; +        gf_hdr_common_t    *hdr = NULL; +        gf_fop_write_req_t *req = NULL; +        size_t              hdrlen = 0; +        int64_t             remote_fd = -1; +        int                 ret = -1;          client_fd_ctx_t    *fdctx = NULL;          client_conf_t      *conf = NULL; @@ -1507,34 +1507,34 @@ client_writev (call_frame_t *frame, xlator_t *this, fd_t *fd,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD, NULL); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd     = hton64 (remote_fd); -	req->size   = hton32 (iov_length (vector, count)); -	req->offset = hton64 (offset); +        req->fd     = hton64 (remote_fd); +        req->size   = hton32 (iov_length (vector, count)); +        req->offset = hton64 (offset); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_WRITE, -				    hdr, hdrlen, vector, count, iobref); -	return ret; +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_WRITE, +                                    hdr, hdrlen, vector, count, iobref); +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -1551,16 +1551,16 @@ unwind:  int  client_statfs (call_frame_t *frame, xlator_t *this, loc_t *loc)  { -	gf_hdr_common_t     *hdr = NULL; -	gf_fop_statfs_req_t *req = NULL; -	size_t               hdrlen = -1; -	int                  ret = -1; -	size_t               pathlen = 0; -	ino_t                ino = 0; -	ino_t                gen = 0; - -	pathlen = STRLEN_0(loc->path); -         +        gf_hdr_common_t     *hdr = NULL; +        gf_fop_statfs_req_t *req = NULL; +        size_t               hdrlen = -1; +        int                  ret = -1; +        size_t               pathlen = 0; +        ino_t                ino = 0; +        ino_t                gen = 0; + +        pathlen = STRLEN_0 (loc->path); +          if (loc->inode) {                  ret = inode_ctx_get2 (loc->inode, this, &ino, &gen);                  if (loc->inode->ino && ret < 0) { @@ -1571,27 +1571,27 @@ client_statfs (call_frame_t *frame, xlator_t *this, loc_t *loc)                  }          } -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino = hton64 (ino); -	req->gen = hton64 (gen); -	strcpy (req->path, loc->path); +        req->ino = hton64 (ino); +        req->gen = hton64 (gen); +        strcpy (req->path, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_STATFS, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_STATFS, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -1608,11 +1608,11 @@ unwind:  int  client_flush (call_frame_t *frame, xlator_t *this, fd_t *fd)  { -	gf_hdr_common_t     *hdr = NULL; -	gf_fop_flush_req_t  *req = NULL; -	size_t               hdrlen = 0; -	int64_t              remote_fd = -1; -	int                  ret = -1; +        gf_hdr_common_t     *hdr = NULL; +        gf_fop_flush_req_t  *req = NULL; +        size_t               hdrlen = 0; +        int64_t              remote_fd = -1; +        int                  ret = -1;          client_fd_ctx_t     *fdctx = NULL;          client_conf_t       *conf = NULL; @@ -1624,33 +1624,33 @@ client_flush (call_frame_t *frame, xlator_t *this, fd_t *fd)          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd = hton64 (remote_fd); +        req->fd = hton64 (remote_fd); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FLUSH, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FLUSH, +                                    hdr, hdrlen, NULL, 0, NULL); -	return 0; +        return 0;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  } @@ -1667,11 +1667,11 @@ unwind:  int  client_fsync (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t flags)  { -	gf_hdr_common_t    *hdr = NULL; -	gf_fop_fsync_req_t *req = NULL; -	size_t              hdrlen = 0; -	int64_t             remote_fd = -1; -	int32_t             ret = -1; +        gf_hdr_common_t    *hdr = NULL; +        gf_fop_fsync_req_t *req = NULL; +        size_t              hdrlen = 0; +        int64_t             remote_fd = -1; +        int32_t             ret = -1;          client_fd_ctx_t    *fdctx = NULL;          client_conf_t      *conf = NULL; @@ -1683,181 +1683,181 @@ client_fsync (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t flags)          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND(frame, -1, EBADFD); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd   = hton64 (remote_fd); -	req->data = hton32 (flags); +        req->fd   = hton64 (remote_fd); +        req->data = hton32 (flags); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSYNC, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSYNC, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  }  int  client_xattrop (call_frame_t *frame, xlator_t *this, loc_t *loc, -		gf_xattrop_flags_t flags, dict_t *dict) +                gf_xattrop_flags_t flags, dict_t *dict)  { -	gf_hdr_common_t      *hdr = NULL; -	gf_fop_xattrop_req_t *req = NULL; -	size_t                hdrlen = 0; -	size_t                dict_len = 0; -	int32_t               ret = -1; -	size_t                pathlen = 0; -	ino_t                 ino = 0; +        gf_hdr_common_t      *hdr = NULL; +        gf_fop_xattrop_req_t *req = NULL; +        size_t                hdrlen = 0; +        size_t                dict_len = 0; +        int32_t               ret = -1; +        size_t                pathlen = 0; +        ino_t                 ino = 0;          uint64_t              gen = 0;          char                 *buf = NULL; -	GF_VALIDATE_OR_GOTO("client", this, unwind); +        GF_VALIDATE_OR_GOTO ("client", this, unwind); -	GF_VALIDATE_OR_GOTO(this->name, loc, unwind); +        GF_VALIDATE_OR_GOTO (this->name, loc, unwind); -	if (dict) { -		ret = dict_allocate_and_serialize (dict, &buf, &dict_len); -		if (ret < 0) { -			gf_log (this->name, GF_LOG_DEBUG, -				"failed to get serialized length of dict(%p)", -				dict); -			goto unwind; -		} -	} +        if (dict) { +                ret = dict_allocate_and_serialize (dict, &buf, &dict_len); +                if (ret < 0) { +                        gf_log (this->name, GF_LOG_DEBUG, +                                "failed to get serialized length of dict(%p)", +                                dict); +                        goto unwind; +                } +        } -	pathlen = STRLEN_0(loc->path); +        pathlen = STRLEN_0 (loc->path); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"XATTROP %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "XATTROP %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, dict_len + pathlen); -	hdr    = gf_hdr_new (req, dict_len + pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, dict_len + pathlen); +        hdr    = gf_hdr_new (req, dict_len + pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->flags = hton32 (flags); -	req->dict_len = hton32 (dict_len); -	if (dict) { +        req->flags = hton32 (flags); +        req->dict_len = hton32 (dict_len); +        if (dict) {                  memcpy (req->dict, buf, dict_len);                  FREE (buf);          } -	req->ino = hton64 (ino); +        req->ino = hton64 (ino);          req->gen = hton64 (gen); -	strcpy (req->path + dict_len, loc->path); +        strcpy (req->path + dict_len, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_XATTROP, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_XATTROP, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  }  int  client_fxattrop (call_frame_t *frame, xlator_t *this, fd_t *fd, -		 gf_xattrop_flags_t flags, dict_t *dict) +                 gf_xattrop_flags_t flags, dict_t *dict)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_fxattrop_req_t *req = NULL; -	size_t                 hdrlen = 0; -	size_t                 dict_len = 0; -	int64_t                remote_fd = -1; -	int32_t                ret = -1; -	ino_t                  ino = 0; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_fxattrop_req_t *req = NULL; +        size_t                 hdrlen = 0; +        size_t                 dict_len = 0; +        int64_t                remote_fd = -1; +        int32_t                ret = -1; +        ino_t                  ino = 0;          client_fd_ctx_t       *fdctx = NULL;          client_conf_t         *conf  = NULL;          conf = this->private; -	if (dict) { -		dict_len = dict_serialized_length (dict); -		if (dict_len < 0) { -			gf_log (this->name, GF_LOG_DEBUG, -				"failed to get serialized length of dict(%p)", -				dict); -			goto unwind; -		} -	} - -	if (fd) { +        if (dict) { +                dict_len = dict_serialized_length (dict); +                if (dict_len < 0) { +                        gf_log (this->name, GF_LOG_DEBUG, +                                "failed to get serialized length of dict(%p)", +                                dict); +                        goto unwind; +                } +        } + +        if (fd) {                  pthread_mutex_lock (&conf->mutex);                  {                          fdctx = this_fd_get_ctx (fd, this);                  }                  pthread_mutex_unlock (&conf->mutex); -		if (fdctx == NULL) { -			gf_log (this->name, GF_LOG_TRACE, -				"(%"PRId64"): failed to get fd ctx. " -                                "returning EBADFD",  -				fd->inode->ino); -			goto unwind; -		} -		ino = fd->inode->ino; +                if (fdctx == NULL) { +                        gf_log (this->name, GF_LOG_TRACE, +                                "(%"PRId64"): failed to get fd ctx. " +                                "returning EBADFD", +                                fd->inode->ino); +                        goto unwind; +                } +                ino = fd->inode->ino;                  remote_fd = fdctx->remote_fd; -	} - -	hdrlen = gf_hdr_len (req, dict_len); -	hdr    = gf_hdr_new (req, dict_len); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req    = gf_param (hdr); - -	req->flags = hton32 (flags); -	req->dict_len = hton32 (dict_len); -	if (dict) { -		ret = dict_serialize (dict, req->dict); -		if (ret < 0) { -			gf_log (this->name, GF_LOG_DEBUG, -				"failed to serialize dictionary(%p)", -				dict); -			goto unwind; -		} -	} -	req->fd = hton64 (remote_fd); -	req->ino = hton64 (ino); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FXATTROP, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        } + +        hdrlen = gf_hdr_len (req, dict_len); +        hdr    = gf_hdr_new (req, dict_len); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr); + +        req->flags = hton32 (flags); +        req->dict_len = hton32 (dict_len); +        if (dict) { +                ret = dict_serialize (dict, req->dict); +                if (ret < 0) { +                        gf_log (this->name, GF_LOG_DEBUG, +                                "failed to serialize dictionary(%p)", +                                dict); +                        goto unwind; +                } +        } +        req->fd = hton64 (remote_fd); +        req->ino = hton64 (ino); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FXATTROP, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND (frame, -1, EBADFD, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EBADFD, NULL); +        return 0;  } @@ -1876,65 +1876,65 @@ int  client_setxattr (call_frame_t *frame, xlator_t *this, loc_t *loc,                   dict_t *dict, int32_t flags)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_setxattr_req_t *req = NULL; -	size_t                 hdrlen = 0; -	size_t                 dict_len = 0; -	int                    ret = -1; -	size_t                 pathlen = 0; -	ino_t                  ino = 0; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_setxattr_req_t *req = NULL; +        size_t                 hdrlen = 0; +        size_t                 dict_len = 0; +        int                    ret = -1; +        size_t                 pathlen = 0; +        ino_t                  ino = 0;          uint64_t               gen = 0; -	dict_len = dict_serialized_length (dict); -	if (dict_len < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to get serialized length of dict(%p)", -			dict); -		goto unwind; -	} +        dict_len = dict_serialized_length (dict); +        if (dict_len < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to get serialized length of dict(%p)", +                        dict); +                goto unwind; +        } -	pathlen = STRLEN_0(loc->path); +        pathlen = STRLEN_0 (loc->path); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"SETXATTR %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "SETXATTR %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, dict_len + pathlen); -	hdr    = gf_hdr_new (req, dict_len + pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, dict_len + pathlen); +        hdr    = gf_hdr_new (req, dict_len + pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino   = hton64 (ino); +        req->ino   = hton64 (ino);          req->gen   = hton64 (gen); -	req->flags = hton32 (flags); -	req->dict_len = hton32 (dict_len); - -	ret = dict_serialize (dict, req->dict); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to serialize dictionary(%p)", -			dict); -		goto unwind; -	} - -	strcpy (req->path + dict_len, loc->path); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SETXATTR, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        req->flags = hton32 (flags); +        req->dict_len = hton32 (dict_len); + +        ret = dict_serialize (dict, req->dict); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to serialize dictionary(%p)", +                        dict); +                goto unwind; +        } + +        strcpy (req->path + dict_len, loc->path); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SETXATTR, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  }  /** @@ -1952,25 +1952,25 @@ int  client_fsetxattr (call_frame_t *frame, xlator_t *this, fd_t *fd,                    dict_t *dict, int32_t flags)  { -	gf_hdr_common_t        *hdr = NULL; -	gf_fop_fsetxattr_req_t *req = NULL; -	size_t                  hdrlen = 0; -	size_t                  dict_len = 0; +        gf_hdr_common_t        *hdr = NULL; +        gf_fop_fsetxattr_req_t *req = NULL; +        size_t                  hdrlen = 0; +        size_t                  dict_len = 0;          ino_t                   ino; -	int                     ret = -1; -	int64_t                 remote_fd = -1; +        int                     ret = -1; +        int64_t                 remote_fd = -1;          client_fd_ctx_t        *fdctx = NULL;          client_conf_t          *conf  = NULL;          conf = this->private; -	dict_len = dict_serialized_length (dict); -	if (dict_len < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to get serialized length of dict(%p)", -			dict); -		goto unwind; -	} +        dict_len = dict_serialized_length (dict); +        if (dict_len < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to get serialized length of dict(%p)", +                        dict); +                goto unwind; +        }          pthread_mutex_lock (&conf->mutex);          { @@ -1987,37 +1987,37 @@ client_fsetxattr (call_frame_t *frame, xlator_t *this, fd_t *fd,          ino = fd->inode->ino;          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, dict_len); -	hdr    = gf_hdr_new (req, dict_len); +        hdrlen = gf_hdr_len (req, dict_len); +        hdr    = gf_hdr_new (req, dict_len); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino   = hton64 (ino); +        req->ino   = hton64 (ino);          req->fd    = hton64 (remote_fd); -	req->flags = hton32 (flags); -	req->dict_len = hton32 (dict_len); - -	ret = dict_serialize (dict, req->dict); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to serialize dictionary(%p)", -			dict); -		goto unwind; -	} - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSETXATTR, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        req->flags = hton32 (flags); +        req->dict_len = hton32 (dict_len); + +        ret = dict_serialize (dict, req->dict); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to serialize dictionary(%p)", +                        dict); +                goto unwind; +        } + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSETXATTR, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  }  /** @@ -2033,51 +2033,51 @@ int  client_getxattr (call_frame_t *frame, xlator_t *this, loc_t *loc,                   const char *name)  { -	int                    ret = -1; -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_getxattr_req_t *req = NULL; -	size_t                 hdrlen = 0; -	size_t                 pathlen = 0; -	size_t                 namelen = 0; -	ino_t                  ino = 0; +        int                    ret = -1; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_getxattr_req_t *req = NULL; +        size_t                 hdrlen = 0; +        size_t                 pathlen = 0; +        size_t                 namelen = 0; +        ino_t                  ino = 0;          uint64_t               gen = 0; -	pathlen = STRLEN_0(loc->path); -	if (name) -		namelen = STRLEN_0(name); +        pathlen = STRLEN_0 (loc->path); +        if (name) +                namelen = STRLEN_0 (name); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"GETXATTR %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "GETXATTR %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen + namelen); -	hdr    = gf_hdr_new (req, pathlen + namelen); -	GF_VALIDATE_OR_GOTO(frame->this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen + namelen); +        hdr    = gf_hdr_new (req, pathlen + namelen); +        GF_VALIDATE_OR_GOTO (frame->this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino   = hton64 (ino); +        req->ino   = hton64 (ino);          req->gen   = hton64 (gen); -	req->namelen = hton32 (namelen); -	strcpy (req->path, loc->path); -	if (name) -		strcpy (req->name + pathlen, name); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_GETXATTR, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        req->namelen = hton32 (namelen); +        strcpy (req->path, loc->path); +        if (name) +                strcpy (req->name + pathlen, name); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_GETXATTR, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -2094,18 +2094,18 @@ int  client_fgetxattr (call_frame_t *frame, xlator_t *this, fd_t *fd,                    const char *name)  { -	int                     ret = -1; -	gf_hdr_common_t        *hdr = NULL; -	gf_fop_fgetxattr_req_t *req = NULL; -	size_t                  hdrlen = 0; +        int                     ret = -1; +        gf_hdr_common_t        *hdr = NULL; +        gf_fop_fgetxattr_req_t *req = NULL; +        size_t                  hdrlen = 0;          int64_t                 remote_fd = -1; -	size_t                  namelen = 0; -	ino_t                   ino = 0; +        size_t                  namelen = 0; +        ino_t                   ino = 0;          client_fd_ctx_t        *fdctx = NULL;          client_conf_t          *conf  = NULL; -	if (name) -		namelen = STRLEN_0(name); +        if (name) +                namelen = STRLEN_0 (name);          conf = this->private; @@ -2124,31 +2124,31 @@ client_fgetxattr (call_frame_t *frame, xlator_t *this, fd_t *fd,          ino = fd->inode->ino;          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, namelen); -	hdr    = gf_hdr_new (req, namelen); +        hdrlen = gf_hdr_len (req, namelen); +        hdr    = gf_hdr_new (req, namelen); -	GF_VALIDATE_OR_GOTO(frame->this->name, hdr, unwind); +        GF_VALIDATE_OR_GOTO (frame->this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino   = hton64 (ino); +        req->ino   = hton64 (ino);          req->fd    = hton64 (remote_fd); -	req->namelen = hton32 (namelen); +        req->namelen = hton32 (namelen); -	if (name) -		strcpy (req->name, name); +        if (name) +                strcpy (req->name, name); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FGETXATTR, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FGETXATTR, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -2166,47 +2166,47 @@ int  client_removexattr (call_frame_t *frame, xlator_t *this, loc_t *loc,                      const char *name)  { -	int                       ret = -1; -	gf_hdr_common_t          *hdr = NULL; -	gf_fop_removexattr_req_t *req = NULL; -	size_t                    hdrlen = 0; -	size_t                    namelen = 0; -	size_t                    pathlen = 0; -	ino_t                     ino = 0; +        int                       ret = -1; +        gf_hdr_common_t          *hdr = NULL; +        gf_fop_removexattr_req_t *req = NULL; +        size_t                    hdrlen = 0; +        size_t                    namelen = 0; +        size_t                    pathlen = 0; +        ino_t                     ino = 0;          uint64_t                  gen = 0; -	pathlen = STRLEN_0(loc->path); -	namelen = STRLEN_0(name); +        pathlen = STRLEN_0 (loc->path); +        namelen = STRLEN_0 (name); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"REMOVEXATTR %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "REMOVEXATTR %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen + namelen); -	hdr    = gf_hdr_new (req, pathlen + namelen); -	GF_VALIDATE_OR_GOTO(frame->this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen + namelen); +        hdr    = gf_hdr_new (req, pathlen + namelen); +        GF_VALIDATE_OR_GOTO (frame->this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino   = hton64 (ino); +        req->ino   = hton64 (ino);          req->gen   = hton64 (gen); -	strcpy (req->path, loc->path); -	strcpy (req->name + pathlen, name); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_REMOVEXATTR, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        strcpy (req->path, loc->path); +        strcpy (req->name + pathlen, name); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_REMOVEXATTR, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  }  /** @@ -2222,54 +2222,54 @@ int  client_opendir (call_frame_t *frame, xlator_t *this, loc_t *loc,                  fd_t *fd)  { -	gf_fop_opendir_req_t *req = NULL; -	gf_hdr_common_t      *hdr = NULL; -	size_t                hdrlen = 0; -	int                   ret = -1; -	ino_t                 ino = 0; +        gf_fop_opendir_req_t *req = NULL; +        gf_hdr_common_t      *hdr = NULL; +        size_t                hdrlen = 0; +        int                   ret = -1; +        ino_t                 ino = 0;          uint64_t              gen = 0; -	size_t                pathlen = 0; -	client_local_t       *local = NULL; +        size_t                pathlen = 0; +        client_local_t       *local = NULL; + +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); +        loc_copy (&local->loc, loc); +        local->fd = fd_ref (fd); -	loc_copy (&local->loc, loc); -	local->fd = fd_ref (fd); +        frame->local = local; -	frame->local = local; -	 -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"OPENDIR %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "OPENDIR %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	pathlen = STRLEN_0(loc->path); +        pathlen = STRLEN_0 (loc->path); -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); -	GF_VALIDATE_OR_GOTO(frame->this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen); +        GF_VALIDATE_OR_GOTO (frame->this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino = hton64 (ino); +        req->ino = hton64 (ino);          req->gen = hton64 (gen); -	strcpy (req->path, loc->path); +        strcpy (req->path, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_OPENDIR, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_OPENDIR, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, fd); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, fd); +        return 0;  } @@ -2286,11 +2286,11 @@ int  client_getdents (call_frame_t *frame, xlator_t *this, fd_t *fd,                   size_t size, off_t offset, int32_t flag)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_getdents_req_t *req = NULL; -	size_t                 hdrlen = 0; -	int64_t                remote_fd = -1; -	int                    ret = -1; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_getdents_req_t *req = NULL; +        size_t                 hdrlen = 0; +        int64_t                remote_fd = -1; +        int                    ret = -1;          client_fd_ctx_t       *fdctx = NULL;          client_conf_t         *conf = NULL; @@ -2302,35 +2302,35 @@ client_getdents (call_frame_t *frame, xlator_t *this, fd_t *fd,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD, NULL); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(frame->this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (frame->this->name, hdr, unwind); -	req    = gf_param (hdr); -	GF_VALIDATE_OR_GOTO(frame->this->name, hdr, unwind); +        req    = gf_param (hdr); +        GF_VALIDATE_OR_GOTO (frame->this->name, hdr, unwind); -	req->fd     = hton64 (remote_fd); -	req->size   = hton32 (size); -	req->offset = hton64 (offset); -	req->flags  = hton32 (flag); +        req->fd     = hton64 (remote_fd); +        req->size   = hton32 (size); +        req->offset = hton64 (offset); +        req->flags  = hton32 (flag); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_GETDENTS, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_GETDENTS, +                                    hdr, hdrlen, NULL, 0, NULL); -	return 0; +        return 0;  unwind: -	STACK_UNWIND(frame, -1, EINVAL, NULL, 0); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL, 0); +        return 0;  } @@ -2370,10 +2370,10 @@ client_readdirp (call_frame_t *frame, xlator_t *this, fd_t *fd, size_t size,          remote_fd = fdctx->remote_fd;          hdrlen = gf_hdr_len (req, 0);          hdr    = gf_hdr_new (req, 0); -        GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind);          req    = gf_param (hdr); -        GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind);          req->fd     = hton64 (remote_fd);          req->size   = hton32 (size); @@ -2404,13 +2404,13 @@ unwind:  int  client_readdir (call_frame_t *frame, xlator_t *this, fd_t *fd, size_t size, -		off_t offset) +                off_t offset)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_readdir_req_t  *req = NULL; -	size_t                 hdrlen = 0; -	int64_t                remote_fd = -1; -	int                    ret = -1; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_readdir_req_t  *req = NULL; +        size_t                 hdrlen = 0; +        int64_t                remote_fd = -1; +        int                    ret = -1;          client_fd_ctx_t       *fdctx = NULL;          client_conf_t         *conf  = NULL; @@ -2422,35 +2422,35 @@ client_readdir (call_frame_t *frame, xlator_t *this, fd_t *fd, size_t size,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		goto unwind; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                goto unwind; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        req    = gf_param (hdr); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req->fd     = hton64 (remote_fd); -	req->size   = hton32 (size); -	req->offset = hton64 (offset); +        req->fd     = hton64 (remote_fd); +        req->size   = hton32 (size); +        req->offset = hton64 (offset); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_READDIR, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_READDIR, +                                    hdr, hdrlen, NULL, 0, NULL); -	return 0; +        return 0;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND (frame, -1, EBADFD, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EBADFD, NULL); +        return 0;  } @@ -2467,13 +2467,13 @@ unwind:  int  client_fsyncdir (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t flags)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_fsyncdir_req_t *req = NULL; -	size_t                 hdrlen = 0; -	int64_t                remote_fd = -1; -	int32_t                ret = -1; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_fsyncdir_req_t *req = NULL; +        size_t                 hdrlen = 0; +        int64_t                remote_fd = -1; +        int32_t                ret = -1;          client_fd_ctx_t       *fdctx = NULL; -        client_conf_t         *conf  = NULL;  +        client_conf_t         *conf  = NULL;          conf = this->private; @@ -2483,31 +2483,31 @@ client_fsyncdir (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t flags)          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		goto unwind; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                goto unwind; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->data = hton32 (flags); -	req->fd   = hton64 (remote_fd); +        req->data = hton32 (flags); +        req->fd   = hton64 (remote_fd); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSYNCDIR, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSYNCDIR, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	STACK_UNWIND (frame, -1, EBADFD); -	return 0; +        STACK_UNWIND (frame, -1, EBADFD); +        return 0;  }  /** @@ -2523,47 +2523,47 @@ unwind:  int  client_access (call_frame_t *frame, xlator_t *this, loc_t *loc, int32_t mask)  { -	gf_hdr_common_t     *hdr = NULL; -	gf_fop_access_req_t *req = NULL; -	size_t               hdrlen = -1; -	int                  ret = -1; -	ino_t                ino = 0; +        gf_hdr_common_t     *hdr = NULL; +        gf_fop_access_req_t *req = NULL; +        size_t               hdrlen = -1; +        int                  ret = -1; +        ino_t                ino = 0;          uint64_t             gen = 0; -	size_t               pathlen = 0; +        size_t               pathlen = 0; -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"ACCESS %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "ACCESS %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	pathlen = STRLEN_0(loc->path); +        pathlen = STRLEN_0 (loc->path); -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino  = hton64 (ino); -	req->gen  = hton64 (gen); -	req->mask = hton32 (mask); -	strcpy (req->path, loc->path); +        req->ino  = hton64 (ino); +        req->gen  = hton64 (gen); +        req->mask = hton32 (mask); +        strcpy (req->path, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_ACCESS, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_ACCESS, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  } @@ -2581,11 +2581,11 @@ int  client_ftruncate (call_frame_t *frame, xlator_t *this, fd_t *fd,                    off_t offset)  { -	gf_hdr_common_t        *hdr = NULL; -	gf_fop_ftruncate_req_t *req = NULL; -	int64_t                 remote_fd = -1; -	size_t                  hdrlen = -1; -	int                     ret = -1; +        gf_hdr_common_t        *hdr = NULL; +        gf_fop_ftruncate_req_t *req = NULL; +        int64_t                 remote_fd = -1; +        size_t                  hdrlen = -1; +        int                     ret = -1;          client_fd_ctx_t        *fdctx = NULL;          client_conf_t          *conf  = NULL; @@ -2597,35 +2597,35 @@ client_ftruncate (call_frame_t *frame, xlator_t *this, fd_t *fd,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD, NULL); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd     = hton64 (remote_fd); -	req->offset = hton64 (offset); +        req->fd     = hton64 (remote_fd); +        req->offset = hton64 (offset); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FTRUNCATE, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FTRUNCATE, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -2641,11 +2641,11 @@ unwind:  int  client_fstat (call_frame_t *frame, xlator_t *this, fd_t *fd)  { -	gf_hdr_common_t    *hdr = NULL; -	gf_fop_fstat_req_t *req = NULL; -	int64_t             remote_fd = -1; -	size_t              hdrlen = -1; -	int                 ret = -1; +        gf_hdr_common_t    *hdr = NULL; +        gf_fop_fstat_req_t *req = NULL; +        int64_t             remote_fd = -1; +        size_t              hdrlen = -1; +        int                 ret = -1;          client_fd_ctx_t    *fdctx = NULL;          client_conf_t      *conf  = NULL; @@ -2657,34 +2657,34 @@ client_fstat (call_frame_t *frame, xlator_t *this, fd_t *fd)          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD, NULL); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd = hton64 (remote_fd); +        req->fd = hton64 (remote_fd); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSTAT, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSTAT, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -2703,15 +2703,15 @@ int  client_lk (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t cmd,             struct flock *flock)  { -	int              ret = -1; -	gf_hdr_common_t *hdr = NULL; -	gf_fop_lk_req_t *req = NULL; -	size_t           hdrlen = 0; -	int64_t          remote_fd = -1; -	int32_t          gf_cmd = 0; -	int32_t          gf_type = 0; +        int              ret = -1; +        gf_hdr_common_t *hdr = NULL; +        gf_fop_lk_req_t *req = NULL; +        size_t           hdrlen = 0; +        int64_t          remote_fd = -1; +        int32_t          gf_cmd = 0; +        int32_t          gf_type = 0;          client_fd_ctx_t *fdctx = NULL; -        client_conf_t   *conf  = NULL;  +        client_conf_t   *conf  = NULL;          conf = this->private; @@ -2721,60 +2721,60 @@ client_lk (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t cmd,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND(frame, -1, EBADFD, NULL); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	if (cmd == F_GETLK || cmd == F_GETLK64) -		gf_cmd = GF_LK_GETLK; -	else if (cmd == F_SETLK || cmd == F_SETLK64) -		gf_cmd = GF_LK_SETLK; -	else if (cmd == F_SETLKW || cmd == F_SETLKW64) -		gf_cmd = GF_LK_SETLKW; -	else { -		gf_log (this->name, GF_LOG_DEBUG, -			"Unknown cmd (%d)!", gf_cmd); -		goto unwind; -	} - -	switch (flock->l_type) { -	case F_RDLCK: -		gf_type = GF_LK_F_RDLCK; -		break; -	case F_WRLCK: -		gf_type = GF_LK_F_WRLCK; -		break; -	case F_UNLCK: -		gf_type = GF_LK_F_UNLCK; -		break; -	} - -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req    = gf_param (hdr); - -	req->fd   = hton64 (remote_fd); -	req->cmd  = hton32 (gf_cmd); -	req->type = hton32 (gf_type); -	gf_flock_from_flock (&req->flock, flock); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_LK, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        if (cmd == F_GETLK || cmd == F_GETLK64) +                gf_cmd = GF_LK_GETLK; +        else if (cmd == F_SETLK || cmd == F_SETLK64) +                gf_cmd = GF_LK_SETLK; +        else if (cmd == F_SETLKW || cmd == F_SETLKW64) +                gf_cmd = GF_LK_SETLKW; +        else { +                gf_log (this->name, GF_LOG_DEBUG, +                        "Unknown cmd (%d)!", gf_cmd); +                goto unwind; +        } + +        switch (flock->l_type) { +        case F_RDLCK: +                gf_type = GF_LK_F_RDLCK; +                break; +        case F_WRLCK: +                gf_type = GF_LK_F_WRLCK; +                break; +        case F_UNLCK: +                gf_type = GF_LK_F_UNLCK; +                break; +        } + +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr); + +        req->fd   = hton64 (remote_fd); +        req->cmd  = hton32 (gf_cmd); +        req->type = hton32 (gf_type); +        gf_flock_from_flock (&req->flock, flock); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_LK, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  }  /** @@ -2790,83 +2790,83 @@ unwind:  int  client_inodelk (call_frame_t *frame, xlator_t *this, const char *volume, -		loc_t *loc, int32_t cmd, struct flock *flock) +                loc_t *loc, int32_t cmd, struct flock *flock)  { -	int                   ret = -1; -	gf_hdr_common_t      *hdr = NULL; -	gf_fop_inodelk_req_t *req = NULL; -	size_t                hdrlen = 0; -	int32_t               gf_cmd = 0; -	int32_t               gf_type = 0; -	ino_t                 ino  = 0; -	uint64_t              gen  = 0; -	size_t                pathlen = 0; +        int                   ret = -1; +        gf_hdr_common_t      *hdr = NULL; +        gf_fop_inodelk_req_t *req = NULL; +        size_t                hdrlen = 0; +        int32_t               gf_cmd = 0; +        int32_t               gf_type = 0; +        ino_t                 ino  = 0; +        uint64_t              gen  = 0; +        size_t                pathlen = 0;          size_t                vollen  = 0; -	pathlen = STRLEN_0(loc->path); -        vollen  = STRLEN_0(volume); +        pathlen = STRLEN_0 (loc->path); +        vollen  = STRLEN_0 (volume); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"INODELK %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "INODELK %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} - -	if (cmd == F_GETLK || cmd == F_GETLK64) -		gf_cmd = GF_LK_GETLK; -	else if (cmd == F_SETLK || cmd == F_SETLK64) -		gf_cmd = GF_LK_SETLK; -	else if (cmd == F_SETLKW || cmd == F_SETLKW64) -		gf_cmd = GF_LK_SETLKW; -	else { -		gf_log (this->name, GF_LOG_DEBUG, -			"Unknown cmd (%d)!", gf_cmd); -		goto unwind; -	} - -	switch (flock->l_type) { -	case F_RDLCK: -		gf_type = GF_LK_F_RDLCK; -		break; -	case F_WRLCK: -		gf_type = GF_LK_F_WRLCK; -		break; -	case F_UNLCK: -		gf_type = GF_LK_F_UNLCK; -		break; -	} - -	hdrlen = gf_hdr_len (req, pathlen + vollen); -	hdr    = gf_hdr_new (req, pathlen + vollen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req    = gf_param (hdr); - -	strcpy (req->path, loc->path); +                        loc->inode->ino, loc->path); +        } + +        if (cmd == F_GETLK || cmd == F_GETLK64) +                gf_cmd = GF_LK_GETLK; +        else if (cmd == F_SETLK || cmd == F_SETLK64) +                gf_cmd = GF_LK_SETLK; +        else if (cmd == F_SETLKW || cmd == F_SETLKW64) +                gf_cmd = GF_LK_SETLKW; +        else { +                gf_log (this->name, GF_LOG_DEBUG, +                        "Unknown cmd (%d)!", gf_cmd); +                goto unwind; +        } + +        switch (flock->l_type) { +        case F_RDLCK: +                gf_type = GF_LK_F_RDLCK; +                break; +        case F_WRLCK: +                gf_type = GF_LK_F_WRLCK; +                break; +        case F_UNLCK: +                gf_type = GF_LK_F_UNLCK; +                break; +        } + +        hdrlen = gf_hdr_len (req, pathlen + vollen); +        hdr    = gf_hdr_new (req, pathlen + vollen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr); + +        strcpy (req->path, loc->path);          strcpy (req->path + pathlen, volume); -	req->ino  = hton64 (ino); +        req->ino  = hton64 (ino);          req->gen  = hton64 (gen); -	req->cmd  = hton32 (gf_cmd); -	req->type = hton32 (gf_type); -	gf_flock_from_flock (&req->flock, flock); +        req->cmd  = hton32 (gf_cmd); +        req->type = hton32 (gf_type); +        gf_flock_from_flock (&req->flock, flock); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, -				    GF_FOP_INODELK, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, +                                    GF_FOP_INODELK, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  } @@ -2884,20 +2884,20 @@ unwind:  int  client_finodelk (call_frame_t *frame, xlator_t *this, const char *volume, -		 fd_t *fd, int32_t cmd, struct flock *flock) +                 fd_t *fd, int32_t cmd, struct flock *flock)  { -	int                    ret = -1; -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_finodelk_req_t *req = NULL; -	size_t                 hdrlen = 0; +        int                    ret = -1; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_finodelk_req_t *req = NULL; +        size_t                 hdrlen = 0;          size_t                 vollen = 0; -	int32_t                gf_cmd = 0; -	int32_t                gf_type = 0; -	int64_t                remote_fd = -1; +        int32_t                gf_cmd = 0; +        int32_t                gf_type = 0; +        int64_t                remote_fd = -1;          client_fd_ctx_t       *fdctx = NULL;          client_conf_t         *conf  = NULL; -        vollen = STRLEN_0(volume); +        vollen = STRLEN_0 (volume);          conf = this->private; @@ -2907,151 +2907,151 @@ client_finodelk (call_frame_t *frame, xlator_t *this, const char *volume,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND(frame, -1, EBADFD); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	if (cmd == F_GETLK || cmd == F_GETLK64) -		gf_cmd = GF_LK_GETLK; -	else if (cmd == F_SETLK || cmd == F_SETLK64) -		gf_cmd = GF_LK_SETLK; -	else if (cmd == F_SETLKW || cmd == F_SETLKW64) -		gf_cmd = GF_LK_SETLKW; -	else { -		gf_log (this->name, GF_LOG_DEBUG, -			"Unknown cmd (%d)!", gf_cmd); -		goto unwind; -	} - -	switch (flock->l_type) { -	case F_RDLCK: -		gf_type = GF_LK_F_RDLCK; -		break; -	case F_WRLCK: -		gf_type = GF_LK_F_WRLCK; -		break; -	case F_UNLCK: -		gf_type = GF_LK_F_UNLCK; -		break; -	} - -	hdrlen = gf_hdr_len (req, vollen); -	hdr    = gf_hdr_new (req, vollen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req    = gf_param (hdr); +        if (cmd == F_GETLK || cmd == F_GETLK64) +                gf_cmd = GF_LK_GETLK; +        else if (cmd == F_SETLK || cmd == F_SETLK64) +                gf_cmd = GF_LK_SETLK; +        else if (cmd == F_SETLKW || cmd == F_SETLKW64) +                gf_cmd = GF_LK_SETLKW; +        else { +                gf_log (this->name, GF_LOG_DEBUG, +                        "Unknown cmd (%d)!", gf_cmd); +                goto unwind; +        } + +        switch (flock->l_type) { +        case F_RDLCK: +                gf_type = GF_LK_F_RDLCK; +                break; +        case F_WRLCK: +                gf_type = GF_LK_F_WRLCK; +                break; +        case F_UNLCK: +                gf_type = GF_LK_F_UNLCK; +                break; +        } + +        hdrlen = gf_hdr_len (req, vollen); +        hdr    = gf_hdr_new (req, vollen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr);          strcpy (req->volume, volume); -	req->fd = hton64 (remote_fd); +        req->fd = hton64 (remote_fd); -	req->cmd  = hton32 (gf_cmd); -	req->type = hton32 (gf_type); -	gf_flock_from_flock (&req->flock, flock); +        req->cmd  = hton32 (gf_cmd); +        req->type = hton32 (gf_type); +        gf_flock_from_flock (&req->flock, flock); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, -				    GF_FOP_FINODELK, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, +                                    GF_FOP_FINODELK, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  }  int  client_entrylk (call_frame_t *frame, xlator_t *this, const char *volume, -		loc_t *loc, const char *name, entrylk_cmd cmd, +                loc_t *loc, const char *name, entrylk_cmd cmd,                  entrylk_type type)  { -	gf_hdr_common_t      *hdr = NULL; -	gf_fop_entrylk_req_t *req = NULL; -	size_t                pathlen = 0; +        gf_hdr_common_t      *hdr = NULL; +        gf_fop_entrylk_req_t *req = NULL; +        size_t                pathlen = 0;          size_t                vollen  = 0; -	size_t                hdrlen = -1; -	int                   ret = -1; -	ino_t                 ino = 0; +        size_t                hdrlen = -1; +        int                   ret = -1; +        ino_t                 ino = 0;          uint64_t              gen = 0; -	size_t                namelen = 0; +        size_t                namelen = 0; -	pathlen = STRLEN_0(loc->path); -        vollen  = STRLEN_0(volume); +        pathlen = STRLEN_0 (loc->path); +        vollen  = STRLEN_0 (volume); -	if (name) -		namelen = STRLEN_0(name); +        if (name) +                namelen = STRLEN_0 (name); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"ENTRYLK %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "ENTRYLK %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen + vollen + namelen); -	hdr    = gf_hdr_new (req, pathlen + vollen + namelen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, pathlen + vollen + namelen); +        hdr    = gf_hdr_new (req, pathlen + vollen + namelen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino  = hton64 (ino); +        req->ino  = hton64 (ino);          req->gen  = hton64 (gen); -	req->namelen = hton64 (namelen); +        req->namelen = hton64 (namelen); -	strcpy (req->path, loc->path); -	if (name) -		strcpy (req->name + pathlen, name); +        strcpy (req->path, loc->path); +        if (name) +                strcpy (req->name + pathlen, name);          strcpy (req->volume + pathlen + namelen, volume); -	req->cmd  = hton32 (cmd); -	req->type = hton32 (type); +        req->cmd  = hton32 (cmd); +        req->type = hton32 (type); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_ENTRYLK, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_ENTRYLK, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  }  int  client_fentrylk (call_frame_t *frame, xlator_t *this, const char *volume, -		 fd_t *fd, const char *name, entrylk_cmd cmd, +                 fd_t *fd, const char *name, entrylk_cmd cmd,                   entrylk_type type)  { -	gf_hdr_common_t        *hdr = NULL; -	gf_fop_fentrylk_req_t  *req = NULL; -	int64_t                 remote_fd = -1; +        gf_hdr_common_t        *hdr = NULL; +        gf_fop_fentrylk_req_t  *req = NULL; +        int64_t                 remote_fd = -1;          size_t                  vollen  = 0; -	size_t                  namelen = 0; -	size_t                  hdrlen = -1; -	int                     ret = -1; +        size_t                  namelen = 0; +        size_t                  hdrlen = -1; +        int                     ret = -1;          client_fd_ctx_t        *fdctx = NULL;          client_conf_t          *conf  = NULL; -	if (name) -		namelen = STRLEN_0(name); +        if (name) +                namelen = STRLEN_0 (name);          conf = this->private; -        vollen = STRLEN_0(volume); +        vollen = STRLEN_0 (volume);          pthread_mutex_lock (&conf->mutex);          { @@ -3059,43 +3059,43 @@ client_fentrylk (call_frame_t *frame, xlator_t *this, const char *volume,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_DEBUG, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND(frame, -1, EBADFD); -		return 0; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, namelen + vollen); -	hdr    = gf_hdr_new (req, namelen + vollen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, namelen + vollen); +        hdr    = gf_hdr_new (req, namelen + vollen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd = hton64 (remote_fd); -	req->namelen = hton64 (namelen); +        req->fd = hton64 (remote_fd); +        req->namelen = hton64 (namelen); -	if (name) -		strcpy (req->name, name); +        if (name) +                strcpy (req->name, name);          strcpy (req->volume + namelen, volume); -	req->cmd  = hton32 (cmd); -	req->type = hton32 (type); +        req->cmd  = hton32 (cmd); +        req->type = hton32 (type); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FENTRYLK, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FENTRYLK, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	if (hdr) -		free (hdr); +        if (hdr) +                free (hdr); -	STACK_UNWIND(frame, -1, EINVAL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL); +        return 0;  }  /* @@ -3111,86 +3111,86 @@ int  client_lookup (call_frame_t *frame, xlator_t *this, loc_t *loc,                 dict_t *xattr_req)  { -	gf_hdr_common_t     *hdr = NULL; -	gf_fop_lookup_req_t *req = NULL; -	size_t               hdrlen = -1; -	int                  ret = -1; -	ino_t                ino = 0; -	ino_t                par = 0; +        gf_hdr_common_t     *hdr = NULL; +        gf_fop_lookup_req_t *req = NULL; +        size_t               hdrlen = -1; +        int                  ret = -1; +        ino_t                ino = 0; +        ino_t                par = 0;          uint64_t             gen = 0; -	size_t               dictlen = 0; -	size_t               pathlen = 0; -	size_t               baselen = 0; -	int32_t              op_ret = -1; -	int32_t              op_errno = EINVAL; -	client_local_t      *local = NULL; +        size_t               dictlen = 0; +        size_t               pathlen = 0; +        size_t               baselen = 0; +        int32_t              op_ret = -1; +        int32_t              op_errno = EINVAL; +        client_local_t      *local = NULL;          char                *buf = NULL; -	local = calloc (1, sizeof (*local)); -	GF_VALIDATE_OR_GOTO(this->name, local, unwind); +        local = calloc (1, sizeof (*local)); +        GF_VALIDATE_OR_GOTO (this->name, local, unwind); -	loc_copy (&local->loc, loc); +        loc_copy (&local->loc, loc); -	frame->local = local; +        frame->local = local; -	GF_VALIDATE_OR_GOTO (this->name, loc, unwind); -	GF_VALIDATE_OR_GOTO (this->name, loc->path, unwind); +        GF_VALIDATE_OR_GOTO (this->name, loc, unwind); +        GF_VALIDATE_OR_GOTO (this->name, loc->path, unwind); -	if (loc->ino != 1) { +        if (loc->ino != 1) {                  ret = inode_ctx_get2 (loc->parent, this, &par, &gen);                  if (loc->parent->ino && ret < 0) {                          gf_log (this->name, GF_LOG_TRACE,                                  "LOOKUP %"PRId64"/%s (%s): failed to get " -                                "remote inode number for parent",  +                                "remote inode number for parent",                                  loc->parent->ino, loc->name, loc->path);                  } -		GF_VALIDATE_OR_GOTO (this->name, loc->name, unwind); -		baselen = STRLEN_0(loc->name); -	} else { -		ino = 1; -	} - -	pathlen = STRLEN_0(loc->path); -	 -	if (xattr_req) { -		ret = dict_allocate_and_serialize (xattr_req, &buf, &dictlen); -		if (ret < 0) { -			gf_log (this->name, GF_LOG_DEBUG, -				"failed to get serialized length of dict(%p)", -				xattr_req); -			goto unwind; -		} -	} - -	hdrlen = gf_hdr_len (req, pathlen + baselen + dictlen); -	hdr    = gf_hdr_new (req, pathlen + baselen + dictlen); -	GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); - -	req    = gf_param (hdr); - -	req->ino   = hton64 (ino); +                GF_VALIDATE_OR_GOTO (this->name, loc->name, unwind); +                baselen = STRLEN_0 (loc->name); +        } else { +                ino = 1; +        } + +        pathlen = STRLEN_0 (loc->path); + +        if (xattr_req) { +                ret = dict_allocate_and_serialize (xattr_req, &buf, &dictlen); +                if (ret < 0) { +                        gf_log (this->name, GF_LOG_DEBUG, +                                "failed to get serialized length of dict(%p)", +                                xattr_req); +                        goto unwind; +                } +        } + +        hdrlen = gf_hdr_len (req, pathlen + baselen + dictlen); +        hdr    = gf_hdr_new (req, pathlen + baselen + dictlen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req    = gf_param (hdr); + +        req->ino   = hton64 (ino);          req->gen   = hton64 (gen); -	req->par   = hton64 (par); -	strcpy (req->path, loc->path); -	if (baselen) -		strcpy (req->path + pathlen, loc->name); -	 -	if (dictlen > 0) { +        req->par   = hton64 (par); +        strcpy (req->path, loc->path); +        if (baselen) +                strcpy (req->path + pathlen, loc->name); + +        if (dictlen > 0) {                  memcpy (req->dict + pathlen + baselen, buf, dictlen);                  FREE (buf);          } -	req->dictlen = hton32 (dictlen); -	 -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_LOOKUP, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        req->dictlen = hton32 (dictlen); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_LOWLAT), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_LOOKUP, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  unwind: -	STACK_UNWIND (frame, op_ret, op_errno, loc->inode, NULL, NULL); -	return ret; +        STACK_UNWIND (frame, op_ret, op_errno, loc->inode, NULL, NULL); +        return ret;  } @@ -3198,25 +3198,25 @@ int  client_setdents (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t flags,                   dir_entry_t *entries, int32_t count)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_setdents_req_t *req = NULL; -	int64_t                remote_fd = 0; -	char                  *ptr = NULL; -	dir_entry_t           *trav = NULL; -	uint32_t               len = 0; -	int32_t                buf_len = 0; -	int32_t                ret = -1; -	int32_t                op_ret = -1; -	int32_t                op_errno = EINVAL; -	int32_t                vec_count = 0; -	size_t                 hdrlen = -1; -	struct iovec           vector[1]; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_setdents_req_t *req = NULL; +        int64_t                remote_fd = 0; +        char                  *ptr = NULL; +        dir_entry_t           *trav = NULL; +        uint32_t               len = 0; +        int32_t                buf_len = 0; +        int32_t                ret = -1; +        int32_t                op_ret = -1; +        int32_t                op_errno = EINVAL; +        int32_t                vec_count = 0; +        size_t                 hdrlen = -1; +        struct iovec           vector[1];          struct iobref         *iobref = NULL;          struct iobuf          *iobuf = NULL;          client_fd_ctx_t       *fdctx = NULL; -        client_conf_t         *conf  = NULL;  +        client_conf_t         *conf  = NULL; -	GF_VALIDATE_OR_GOTO (this->name, fd, unwind); +        GF_VALIDATE_OR_GOTO (this->name, fd, unwind);          conf = this->private; @@ -3226,96 +3226,96 @@ client_setdents (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t flags,          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_DEBUG, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		op_errno = EBADFD; -		goto unwind; -	} +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                op_errno = EBADFD; +                goto unwind; +        }          remote_fd = fdctx->remote_fd; -	GF_VALIDATE_OR_GOTO (this->name, entries, unwind); -	GF_VALIDATE_OR_GOTO (this->name, count, unwind); - -	trav = entries->next; -	while (trav) { -		len += strlen (trav->name); -		len += 1; -		len += strlen (trav->link); -		len += 1; -		len += 256; // max possible for statbuf; -		trav = trav->next; -	} -	iobuf = iobuf_get (this->ctx->iobuf_pool); -	GF_VALIDATE_OR_GOTO (this->name, iobuf, unwind); - -	ptr = iobuf->ptr; - -	trav = entries->next; -	while (trav) { -		int32_t this_len = 0; -		char *tmp_buf = NULL; -		struct stat *stbuf = &trav->buf; -		{ -			/* Convert the stat buf to string */ -			uint64_t dev = stbuf->st_dev; -			uint64_t ino = stbuf->st_ino; -			uint32_t mode = stbuf->st_mode; -			uint32_t nlink = stbuf->st_nlink; -			uint32_t uid = stbuf->st_uid; -			uint32_t gid = stbuf->st_gid; -			uint64_t rdev = stbuf->st_rdev; -			uint64_t size = stbuf->st_size; -			uint32_t blksize = stbuf->st_blksize; -			uint64_t blocks = stbuf->st_blocks; - -			uint32_t atime = stbuf->st_atime; -			uint32_t mtime = stbuf->st_mtime; -			uint32_t ctime = stbuf->st_ctime; - -			uint32_t atime_nsec = ST_ATIM_NSEC(stbuf); -			uint32_t mtime_nsec = ST_MTIM_NSEC(stbuf); -			uint32_t ctime_nsec = ST_CTIM_NSEC(stbuf); - -			ret = asprintf (&tmp_buf, GF_STAT_PRINT_FMT_STR, +        GF_VALIDATE_OR_GOTO (this->name, entries, unwind); +        GF_VALIDATE_OR_GOTO (this->name, count, unwind); + +        trav = entries->next; +        while (trav) { +                len += strlen (trav->name); +                len += 1; +                len += strlen (trav->link); +                len += 1; +                len += 256; // max possible for statbuf; +                trav = trav->next; +        } +        iobuf = iobuf_get (this->ctx->iobuf_pool); +        GF_VALIDATE_OR_GOTO (this->name, iobuf, unwind); + +        ptr = iobuf->ptr; + +        trav = entries->next; +        while (trav) { +                int32_t this_len = 0; +                char *tmp_buf = NULL; +                struct stat *stbuf = &trav->buf; +                { +                        /* Convert the stat buf to string */ +                        uint64_t dev = stbuf->st_dev; +                        uint64_t ino = stbuf->st_ino; +                        uint32_t mode = stbuf->st_mode; +                        uint32_t nlink = stbuf->st_nlink; +                        uint32_t uid = stbuf->st_uid; +                        uint32_t gid = stbuf->st_gid; +                        uint64_t rdev = stbuf->st_rdev; +                        uint64_t size = stbuf->st_size; +                        uint32_t blksize = stbuf->st_blksize; +                        uint64_t blocks = stbuf->st_blocks; + +                        uint32_t atime = stbuf->st_atime; +                        uint32_t mtime = stbuf->st_mtime; +                        uint32_t ctime = stbuf->st_ctime; + +                        uint32_t atime_nsec = ST_ATIM_NSEC(stbuf); +                        uint32_t mtime_nsec = ST_MTIM_NSEC(stbuf); +                        uint32_t ctime_nsec = ST_CTIM_NSEC(stbuf); + +                        ret = asprintf (&tmp_buf, GF_STAT_PRINT_FMT_STR,                                          dev, ino, mode, nlink, uid, gid,                                          rdev, size, blksize, blocks,                                          atime, atime_nsec, mtime, mtime_nsec,                                          ctime, ctime_nsec);                          if (-1 == ret) { -                                gf_log (this->name, GF_LOG_ERROR,  +                                gf_log (this->name, GF_LOG_ERROR,                                          "asprintf failed while setting stat "                                          "buf to string");                                  STACK_UNWIND (frame, -1, ENOMEM);                                  return 0;                          } -		} -		this_len = sprintf (ptr, "%s/%s%s\n", -				    trav->name, tmp_buf, trav->link); +                } +                this_len = sprintf (ptr, "%s/%s%s\n", +                                    trav->name, tmp_buf, trav->link); -		FREE (tmp_buf); -		trav = trav->next; -		ptr += this_len; -	} -	buf_len = strlen (iobuf->ptr); +                FREE (tmp_buf); +                trav = trav->next; +                ptr += this_len; +        } +        buf_len = strlen (iobuf->ptr); -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd    = hton64 (remote_fd); -	req->flags = hton32 (flags); -	req->count = hton32 (count); +        req->fd    = hton64 (remote_fd); +        req->flags = hton32 (flags); +        req->count = hton32 (count);          iobref = iobref_new ();          iobref_add (iobref, iobuf); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SETDENTS, -				    hdr, hdrlen, vector, vec_count, iobref); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SETDENTS, +                                    hdr, hdrlen, vector, vec_count, iobref);          if (iobref)                  iobref_unref (iobref); @@ -3323,7 +3323,7 @@ client_setdents (call_frame_t *frame, xlator_t *this, fd_t *fd, int32_t flags,          if (iobuf)                  iobuf_unref (iobuf); -	return ret; +        return ret;  unwind:          if (iobref) @@ -3332,52 +3332,52 @@ unwind:          if (iobuf)                  iobuf_unref (iobuf); -	STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno); +        return 0;  }  int  client_setattr (call_frame_t *frame, xlator_t *this, loc_t *loc,                  struct stat *stbuf, int32_t valid)  { -	gf_hdr_common_t      *hdr = NULL; -	gf_fop_setattr_req_t *req = NULL; -	size_t                hdrlen = 0; +        gf_hdr_common_t      *hdr = NULL; +        gf_fop_setattr_req_t *req = NULL; +        size_t                hdrlen = 0;          size_t                pathlen = 0;          ino_t                 ino = 0;          uint64_t              gen = 0;          int                   ret = -1; -	GF_VALIDATE_OR_GOTO ("client", this, unwind); -	GF_VALIDATE_OR_GOTO (this->name, frame, unwind); +        GF_VALIDATE_OR_GOTO ("client", this, unwind); +        GF_VALIDATE_OR_GOTO (this->name, frame, unwind); -        pathlen = STRLEN_0(loc->path); +        pathlen = STRLEN_0 (loc->path); -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_TRACE, -			"SETATTR %"PRId64" (%s): " +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_TRACE, +                        "SETATTR %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	hdrlen = gf_hdr_len (req, pathlen); -	hdr    = gf_hdr_new (req, pathlen); +        hdrlen = gf_hdr_len (req, pathlen); +        hdr    = gf_hdr_new (req, pathlen);          GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->ino  = hton64 (ino); +        req->ino  = hton64 (ino);          req->gen  = hton64 (gen); -	strcpy (req->path, loc->path); +        strcpy (req->path, loc->path);          gf_stat_from_stat (&req->stbuf, stbuf);          req->valid = hton32 (valid); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SETATTR, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_SETATTR, +                                    hdr, hdrlen, NULL, 0, NULL);          return ret;  unwind: @@ -3390,41 +3390,41 @@ int  client_fsetattr (call_frame_t *frame, xlator_t *this, fd_t *fd,                   struct stat *stbuf, int32_t valid)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_fsetattr_req_t *req = NULL; -	size_t                 hdrlen = 0; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_fsetattr_req_t *req = NULL; +        size_t                 hdrlen = 0;          int                    ret = -1;          client_fd_ctx_t       *fdctx = NULL;          int64_t                remote_fd = -1; -	GF_VALIDATE_OR_GOTO ("client", this, unwind); -	GF_VALIDATE_OR_GOTO (this->name, frame, unwind); +        GF_VALIDATE_OR_GOTO ("client", this, unwind); +        GF_VALIDATE_OR_GOTO (this->name, frame, unwind); -	fdctx = this_fd_get_ctx (fd, this); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD, NULL, NULL); -		return 0; -	} +        fdctx = this_fd_get_ctx (fd, this); +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, NULL, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd = hton64 (remote_fd); +        req->fd = hton64 (remote_fd);          gf_stat_from_stat (&req->stbuf, stbuf);          req->valid = hton32 (valid); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSETATTR, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_FSETATTR, +                                    hdr, hdrlen, NULL, 0, NULL);          return ret;  unwind: @@ -3443,19 +3443,19 @@ unwind:  int  client_releasedir (xlator_t *this, fd_t *fd)  { -	call_frame_t            *fr = NULL; -	int32_t                  ret = -1; -	int64_t                  remote_fd = 0; -	gf_hdr_common_t         *hdr = NULL; -	size_t                   hdrlen = 0; -	gf_cbk_releasedir_req_t *req  = NULL; -	client_conf_t           *conf = NULL; +        call_frame_t            *fr = NULL; +        int32_t                  ret = -1; +        int64_t                  remote_fd = 0; +        gf_hdr_common_t         *hdr = NULL; +        size_t                   hdrlen = 0; +        gf_cbk_releasedir_req_t *req  = NULL; +        client_conf_t           *conf = NULL;          client_fd_ctx_t         *fdctx = NULL; -	GF_VALIDATE_OR_GOTO ("client", this, out); -	GF_VALIDATE_OR_GOTO (this->name, fd, out); +        GF_VALIDATE_OR_GOTO ("client", this, out); +        GF_VALIDATE_OR_GOTO (this->name, fd, out); -	conf = this->private; +        conf = this->private;          pthread_mutex_lock (&conf->mutex);          { @@ -3466,33 +3466,33 @@ client_releasedir (xlator_t *this, fd_t *fd)          }          pthread_mutex_unlock (&conf->mutex); -	if (fdctx == NULL){ -		gf_log (this->name, GF_LOG_DEBUG, -			"(%"PRId64"): failed to get fd ctx.", -			fd->inode->ino); -		goto out; -	} +        if (fdctx == NULL){ +                gf_log (this->name, GF_LOG_DEBUG, +                        "(%"PRId64"): failed to get fd ctx.", +                        fd->inode->ino); +                goto out; +        }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO (this->name, hdr, out); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, out); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->fd = hton64 (remote_fd); +        req->fd = hton64 (remote_fd);          FREE (fdctx); -	fr = create_frame (this, this->ctx->pool); -	GF_VALIDATE_OR_GOTO (this->name, fr, out); +        fr = create_frame (this, this->ctx->pool); +        GF_VALIDATE_OR_GOTO (this->name, fr, out); -	ret = protocol_client_xfer (fr, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_CBK_REQUEST, GF_CBK_RELEASEDIR, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (fr, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_CBK_REQUEST, GF_CBK_RELEASEDIR, +                                    hdr, hdrlen, NULL, 0, NULL);  out: -	return ret; +        return ret;  } @@ -3507,19 +3507,19 @@ out:  int  client_release (xlator_t *this, fd_t *fd)  { -	call_frame_t          *fr = NULL; -	int32_t                ret = -1; -	int64_t                remote_fd = 0; -	gf_hdr_common_t       *hdr = NULL; -	size_t                 hdrlen = 0; -	gf_cbk_release_req_t  *req = NULL; -	client_conf_t         *conf = NULL; +        call_frame_t          *fr = NULL; +        int32_t                ret = -1; +        int64_t                remote_fd = 0; +        gf_hdr_common_t       *hdr = NULL; +        size_t                 hdrlen = 0; +        gf_cbk_release_req_t  *req = NULL; +        client_conf_t         *conf = NULL;          client_fd_ctx_t       *fdctx = NULL; -	GF_VALIDATE_OR_GOTO ("client", this, out); -	GF_VALIDATE_OR_GOTO (this->name, fd, out); +        GF_VALIDATE_OR_GOTO ("client", this, out); +        GF_VALIDATE_OR_GOTO (this->name, fd, out); -	conf = this->private; +        conf = this->private;          pthread_mutex_lock (&conf->mutex);          { @@ -3538,24 +3538,24 @@ client_release (xlator_t *this, fd_t *fd)          }          remote_fd = fdctx->remote_fd; -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO (this->name, hdr, out); -	req    = gf_param (hdr); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, out); +        req    = gf_param (hdr); -	req->fd = hton64 (remote_fd); +        req->fd = hton64 (remote_fd);          FREE (fdctx); -	fr = create_frame (this, this->ctx->pool); -	GF_VALIDATE_OR_GOTO (this->name, fr, out); +        fr = create_frame (this, this->ctx->pool); +        GF_VALIDATE_OR_GOTO (this->name, fr, out); -	ret = protocol_client_xfer (fr, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_CBK_REQUEST, GF_CBK_RELEASE, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (fr, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_CBK_REQUEST, GF_CBK_RELEASE, +                                    hdr, hdrlen, NULL, 0, NULL);  out: -	return ret; +        return ret;  }  /* @@ -3574,30 +3574,30 @@ out:  int  client_stats (call_frame_t *frame, xlator_t *this, int32_t flags)  { -	gf_hdr_common_t     *hdr = NULL; -	gf_mop_stats_req_t  *req = NULL; -	size_t               hdrlen = -1; -	int                  ret = -1; +        gf_hdr_common_t     *hdr = NULL; +        gf_mop_stats_req_t  *req = NULL; +        size_t               hdrlen = -1; +        int                  ret = -1; -	GF_VALIDATE_OR_GOTO ("client", this, unwind); +        GF_VALIDATE_OR_GOTO ("client", this, unwind); -	hdrlen = gf_hdr_len (req, 0); -	hdr    = gf_hdr_new (req, 0); -	GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); +        hdrlen = gf_hdr_len (req, 0); +        hdr    = gf_hdr_new (req, 0); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); -	req    = gf_param (hdr); +        req    = gf_param (hdr); -	req->flags = hton32 (flags); +        req->flags = hton32 (flags); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_MOP_REQUEST, GF_MOP_STATS, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_MOP_REQUEST, GF_MOP_STATS, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  unwind: -	STACK_UNWIND (frame, -1, EINVAL, NULL); -	return 0; +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  } @@ -3605,118 +3605,118 @@ unwind:  int  client_fxattrop_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		     struct iobuf *iobuf) +                     struct iobuf *iobuf)  { -	gf_fop_xattrop_rsp_t *rsp = NULL; -	int32_t               op_ret   = 0; -	int32_t               gf_errno = 0; -	int32_t               op_errno = 0; -	int32_t               dict_len = 0; -	dict_t               *dict = NULL; -	int32_t               ret = -1; -	char                 *dictbuf = NULL; - -	rsp = gf_param (hdr); -	GF_VALIDATE_OR_GOTO(frame->this->name, rsp, fail); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); - -	if (op_ret >= 0) { -		op_ret = -1; -		dict_len = ntoh32 (rsp->dict_len); - -		if (dict_len > 0) { -			dictbuf = memdup (rsp->dict, dict_len); -			GF_VALIDATE_OR_GOTO(frame->this->name, dictbuf, fail); - -			dict = dict_new(); -			GF_VALIDATE_OR_GOTO(frame->this->name, dict, fail); - -			ret = dict_unserialize (dictbuf, dict_len, &dict); -			if (ret < 0) { -				gf_log (frame->this->name, GF_LOG_DEBUG, -					"failed to serialize dictionary(%p)", -					dict); -				op_errno = -ret; -				goto fail; -			} else { -				dict->extra_free = dictbuf; -				dictbuf = NULL; -			} -		} -		op_ret = 0; -	} -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); +        gf_fop_xattrop_rsp_t *rsp = NULL; +        int32_t               op_ret   = 0; +        int32_t               gf_errno = 0; +        int32_t               op_errno = 0; +        int32_t               dict_len = 0; +        dict_t               *dict = NULL; +        int32_t               ret = -1; +        char                 *dictbuf = NULL; + +        rsp = gf_param (hdr); +        GF_VALIDATE_OR_GOTO (frame->this->name, rsp, fail); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); + +        if (op_ret >= 0) { +                op_ret = -1; +                dict_len = ntoh32 (rsp->dict_len); + +                if (dict_len > 0) { +                        dictbuf = memdup (rsp->dict, dict_len); +                        GF_VALIDATE_OR_GOTO (frame->this->name, dictbuf, fail); + +                        dict = dict_new(); +                        GF_VALIDATE_OR_GOTO (frame->this->name, dict, fail); + +                        ret = dict_unserialize (dictbuf, dict_len, &dict); +                        if (ret < 0) { +                                gf_log (frame->this->name, GF_LOG_DEBUG, +                                        "failed to serialize dictionary(%p)", +                                        dict); +                                op_errno = -ret; +                                goto fail; +                        } else { +                                dict->extra_free = dictbuf; +                                dictbuf = NULL; +                        } +                } +                op_ret = 0; +        } +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno);  fail: -	STACK_UNWIND (frame, op_ret, op_errno, dict); -	 -	if (dictbuf) -		free (dictbuf); +        STACK_UNWIND (frame, op_ret, op_errno, dict); + +        if (dictbuf) +                free (dictbuf); -	if (dict) -		dict_unref (dict); +        if (dict) +                dict_unref (dict); -	return 0; +        return 0;  }  int  client_xattrop_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		    struct iobuf *iobuf) +                    struct iobuf *iobuf)  { -	gf_fop_xattrop_rsp_t *rsp = NULL; -	int32_t               op_ret   = -1; -	int32_t               gf_errno = EINVAL; -	int32_t               op_errno = 0; -	int32_t               dict_len = 0; -	dict_t               *dict = NULL; -	int32_t               ret = -1; -	char                 *dictbuf = NULL; - -	rsp = gf_param (hdr); -	GF_VALIDATE_OR_GOTO(frame->this->name, rsp, fail); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	if (op_ret >= 0) { -		op_ret = -1; -		dict_len = ntoh32 (rsp->dict_len); - -		if (dict_len > 0) { -			dictbuf = memdup (rsp->dict, dict_len); -			GF_VALIDATE_OR_GOTO(frame->this->name, dictbuf, fail); - -			dict = get_new_dict(); -			GF_VALIDATE_OR_GOTO(frame->this->name, dict, fail); -			dict_ref (dict); -                                                -			ret = dict_unserialize (dictbuf, dict_len, &dict); -			if (ret < 0) { -				gf_log (frame->this->name, GF_LOG_DEBUG, -					"failed to serialize dictionary(%p)", -					dict); -				goto fail; -			} else { -				dict->extra_free = dictbuf; -				dictbuf = NULL; -			} -		} -		op_ret = 0; -	} -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); +        gf_fop_xattrop_rsp_t *rsp = NULL; +        int32_t               op_ret   = -1; +        int32_t               gf_errno = EINVAL; +        int32_t               op_errno = 0; +        int32_t               dict_len = 0; +        dict_t               *dict = NULL; +        int32_t               ret = -1; +        char                 *dictbuf = NULL; + +        rsp = gf_param (hdr); +        GF_VALIDATE_OR_GOTO (frame->this->name, rsp, fail); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        if (op_ret >= 0) { +                op_ret = -1; +                dict_len = ntoh32 (rsp->dict_len); + +                if (dict_len > 0) { +                        dictbuf = memdup (rsp->dict, dict_len); +                        GF_VALIDATE_OR_GOTO (frame->this->name, dictbuf, fail); + +                        dict = get_new_dict(); +                        GF_VALIDATE_OR_GOTO (frame->this->name, dict, fail); +                        dict_ref (dict); + +                        ret = dict_unserialize (dictbuf, dict_len, &dict); +                        if (ret < 0) { +                                gf_log (frame->this->name, GF_LOG_DEBUG, +                                        "failed to serialize dictionary(%p)", +                                        dict); +                                goto fail; +                        } else { +                                dict->extra_free = dictbuf; +                                dictbuf = NULL; +                        } +                } +                op_ret = 0; +        } +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno);  fail: -	STACK_UNWIND (frame, op_ret, op_errno, dict); -	 -	if (dictbuf) -		free (dictbuf); -	if (dict) -		dict_unref (dict); - -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno, dict); + +        if (dictbuf) +                free (dictbuf); +        if (dict) +                dict_unref (dict); + +        return 0;  }  /* @@ -3731,39 +3731,39 @@ int  client_create_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  { -	gf_fop_create_rsp_t  *rsp = NULL; -	int32_t               op_ret = 0; -	int32_t               op_errno = 0; -	fd_t                 *fd = NULL; -	inode_t              *inode = NULL; -	struct stat           stbuf = {0, }; -	struct stat           preparent = {0, }; -	struct stat           postparent = {0, }; -	int64_t               remote_fd = 0; -	int32_t               ret = -1; -	client_local_t       *local = NULL; -	client_conf_t        *conf = NULL; +        gf_fop_create_rsp_t  *rsp = NULL; +        int32_t               op_ret = 0; +        int32_t               op_errno = 0; +        fd_t                 *fd = NULL; +        inode_t              *inode = NULL; +        struct stat           stbuf = {0, }; +        struct stat           preparent = {0, }; +        struct stat           postparent = {0, }; +        int64_t               remote_fd = 0; +        int32_t               ret = -1; +        client_local_t       *local = NULL; +        client_conf_t        *conf = NULL;          client_fd_ctx_t      *fdctx = NULL; -	local = frame->local; frame->local = NULL; -	conf  = frame->this->private; -	fd    = local->fd; -	inode = local->loc.inode; +        local = frame->local; frame->local = NULL; +        conf  = frame->this->private; +        fd    = local->fd; +        inode = local->loc.inode; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret    = ntoh32 (hdr->rsp.op_ret); -	op_errno  = ntoh32 (hdr->rsp.op_errno); +        op_ret    = ntoh32 (hdr->rsp.op_ret); +        op_errno  = ntoh32 (hdr->rsp.op_errno); -	if (op_ret >= 0) { -		remote_fd = ntoh64 (rsp->fd); -		gf_stat_to_stat (&rsp->stat, &stbuf); +        if (op_ret >= 0) { +                remote_fd = ntoh64 (rsp->fd); +                gf_stat_to_stat (&rsp->stat, &stbuf); -		gf_stat_to_stat (&rsp->preparent, &preparent); -		gf_stat_to_stat (&rsp->postparent, &postparent); -	} +                gf_stat_to_stat (&rsp->preparent, &preparent); +                gf_stat_to_stat (&rsp->postparent, &postparent); +        } -	if (op_ret >= 0) { +        if (op_ret >= 0) {                  ret = inode_ctx_put2 (local->loc.inode, frame->this,                                        stbuf.st_ino, stbuf.st_dev);                  if (ret < 0) { @@ -3784,21 +3784,21 @@ client_create_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                  fdctx->remote_fd = remote_fd;                  INIT_LIST_HEAD (&fdctx->sfd_pos);                  fdctx->fd = fd; -		this_fd_set_ctx (fd, frame->this, &local->loc, fdctx); +                this_fd_set_ctx (fd, frame->this, &local->loc, fdctx); -		pthread_mutex_lock (&conf->mutex); -		{ +                pthread_mutex_lock (&conf->mutex); +                {                          list_add_tail (&fdctx->sfd_pos, &conf->saved_fds); -		} -		pthread_mutex_unlock (&conf->mutex); -	} +                } +                pthread_mutex_unlock (&conf->mutex); +        }  unwind_out: -	STACK_UNWIND (frame, op_ret, op_errno, fd, inode, &stbuf, +        STACK_UNWIND (frame, op_ret, op_errno, fd, inode, &stbuf,                        &preparent, &postparent); -	 -	client_local_wipe (local); -	return 0; +        client_local_wipe (local); + +        return 0;  } @@ -3813,30 +3813,30 @@ int  client_open_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                   struct iobuf *iobuf)  { -	int32_t              op_ret = -1; -	int32_t              op_errno = ENOTCONN; -	fd_t                *fd = NULL; -	int64_t              remote_fd = 0; -	gf_fop_open_rsp_t   *rsp = NULL; -	client_local_t      *local = NULL; -	client_conf_t       *conf = NULL; +        int32_t              op_ret = -1; +        int32_t              op_errno = ENOTCONN; +        fd_t                *fd = NULL; +        int64_t              remote_fd = 0; +        gf_fop_open_rsp_t   *rsp = NULL; +        client_local_t      *local = NULL; +        client_conf_t       *conf = NULL;          client_fd_ctx_t     *fdctx = NULL; -	 -	local = frame->local; frame->local = NULL; -	conf  = frame->this->private; -	fd    = local->fd; -	rsp = gf_param (hdr); +        local = frame->local; frame->local = NULL; +        conf  = frame->this->private; +        fd    = local->fd; + +        rsp = gf_param (hdr); -	op_ret    = ntoh32 (hdr->rsp.op_ret); -	op_errno  = ntoh32 (hdr->rsp.op_errno); +        op_ret    = ntoh32 (hdr->rsp.op_ret); +        op_errno  = ntoh32 (hdr->rsp.op_errno); -	if (op_ret >= 0) { -		remote_fd = ntoh64 (rsp->fd); -	} +        if (op_ret >= 0) { +                remote_fd = ntoh64 (rsp->fd); +        } -	if (op_ret >= 0) { +        if (op_ret >= 0) {                  fdctx = CALLOC (1, sizeof (*fdctx));                  if (!fdctx) {                          op_ret = -1; @@ -3846,20 +3846,20 @@ client_open_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                  fdctx->remote_fd = remote_fd;                  INIT_LIST_HEAD (&fdctx->sfd_pos);                  fdctx->fd = fd; -		this_fd_set_ctx (fd, frame->this, &local->loc, fdctx); - -		pthread_mutex_lock (&conf->mutex); -		{ -			list_add_tail (&fdctx->sfd_pos, &conf->saved_fds); -		} -		pthread_mutex_unlock (&conf->mutex); -	} +                this_fd_set_ctx (fd, frame->this, &local->loc, fdctx); + +                pthread_mutex_lock (&conf->mutex); +                { +                        list_add_tail (&fdctx->sfd_pos, &conf->saved_fds); +                } +                pthread_mutex_unlock (&conf->mutex); +        }  unwind_out: -	STACK_UNWIND (frame, op_ret, op_errno, fd); -	 -	client_local_wipe (local); +        STACK_UNWIND (frame, op_ret, op_errno, fd); + +        client_local_wipe (local); -	return 0; +        return 0;  }  /* @@ -3874,23 +3874,23 @@ int  client_stat_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                   struct iobuf *iobuf)  { -	struct stat        stbuf = {0, }; -	gf_fop_stat_rsp_t *rsp = NULL; -	int32_t            op_ret = 0; -	int32_t            op_errno = 0; +        struct stat        stbuf = {0, }; +        gf_fop_stat_rsp_t *rsp = NULL; +        int32_t            op_ret = 0; +        int32_t            op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret == 0) { -		gf_stat_to_stat (&rsp->stat, &stbuf); -	} +        if (op_ret == 0) { +                gf_stat_to_stat (&rsp->stat, &stbuf); +        } -	STACK_UNWIND (frame, op_ret, op_errno, &stbuf); +        STACK_UNWIND (frame, op_ret, op_errno, &stbuf); -	return 0; +        return 0;  } @@ -3906,27 +3906,27 @@ int  client_mknod_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	gf_fop_mknod_rsp_t *rsp = NULL; -	int32_t             op_ret = 0; -	int32_t             op_errno = 0; -	struct stat         stbuf = {0, }; -	inode_t            *inode = NULL; -	client_local_t     *local = NULL; +        gf_fop_mknod_rsp_t *rsp = NULL; +        int32_t             op_ret = 0; +        int32_t             op_errno = 0; +        struct stat         stbuf = {0, }; +        inode_t            *inode = NULL; +        client_local_t     *local = NULL;          int                 ret = 0;          struct stat         preparent = {0,};          struct stat         postparent = {0,}; -	local = frame->local; -	frame->local = NULL; -	inode = local->loc.inode; +        local = frame->local; +        frame->local = NULL; +        inode = local->loc.inode; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret >= 0) { -		gf_stat_to_stat (&rsp->stat, &stbuf); +        if (op_ret >= 0) { +                gf_stat_to_stat (&rsp->stat, &stbuf);                  ret = inode_ctx_put2 (local->loc.inode, frame->this,                                        stbuf.st_ino, stbuf.st_dev); @@ -3938,16 +3938,16 @@ client_mknod_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                                  local->loc.path);                  } -		gf_stat_to_stat (&rsp->preparent, &preparent); -		gf_stat_to_stat (&rsp->postparent, &postparent); -	} +                gf_stat_to_stat (&rsp->preparent, &preparent); +                gf_stat_to_stat (&rsp->postparent, &postparent); +        } -	STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf, +        STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf,                        &preparent, &postparent); -	 -	client_local_wipe (local); -	return 0; +        client_local_wipe (local); + +        return 0;  }  /* @@ -3962,27 +3962,27 @@ int  client_symlink_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                      struct iobuf *iobuf)  { -	gf_fop_symlink_rsp_t *rsp = NULL; -	int32_t               op_ret = 0; -	int32_t               op_errno = 0; -	struct stat           stbuf = {0, }; +        gf_fop_symlink_rsp_t *rsp = NULL; +        int32_t               op_ret = 0; +        int32_t               op_errno = 0; +        struct stat           stbuf = {0, };          struct stat           preparent = {0,};          struct stat           postparent = {0,}; -	inode_t              *inode = NULL; -	client_local_t       *local = NULL; +        inode_t              *inode = NULL; +        client_local_t       *local = NULL;          int                   ret = 0; -	local = frame->local; -	frame->local = NULL; -	inode = local->loc.inode; +        local = frame->local; +        frame->local = NULL; +        inode = local->loc.inode; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret >= 0) { -		gf_stat_to_stat (&rsp->stat, &stbuf); +        if (op_ret >= 0) { +                gf_stat_to_stat (&rsp->stat, &stbuf);                  ret = inode_ctx_put2 (inode, frame->this,                                        stbuf.st_ino, stbuf.st_dev); @@ -3993,16 +3993,16 @@ client_symlink_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                                  local->loc.parent->ino, local->loc.name,                                  local->loc.path);                  } -		gf_stat_to_stat (&rsp->preparent, &preparent); -		gf_stat_to_stat (&rsp->postparent, &postparent); -	} +                gf_stat_to_stat (&rsp->preparent, &preparent); +                gf_stat_to_stat (&rsp->postparent, &postparent); +        } -	STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf, +        STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf,                        &preparent, &postparent); -	 -	client_local_wipe (local); -	return 0; +        client_local_wipe (local); + +        return 0;  }  /* @@ -4017,37 +4017,37 @@ int  client_link_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                   struct iobuf *iobuf)  { -	gf_fop_link_rsp_t *rsp = NULL; -	int32_t            op_ret = 0; -	int32_t            op_errno = 0; -	struct stat        stbuf = {0, }; -	inode_t           *inode = NULL; -	client_local_t    *local = NULL; +        gf_fop_link_rsp_t *rsp = NULL; +        int32_t            op_ret = 0; +        int32_t            op_errno = 0; +        struct stat        stbuf = {0, }; +        inode_t           *inode = NULL; +        client_local_t    *local = NULL;          struct stat        preparent = {0,};          struct stat        postparent = {0,}; -	local = frame->local; -	frame->local = NULL; -	inode = local->loc.inode; +        local = frame->local; +        frame->local = NULL; +        inode = local->loc.inode; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret >= 0) { -		gf_stat_to_stat (&rsp->stat, &stbuf); +        if (op_ret >= 0) { +                gf_stat_to_stat (&rsp->stat, &stbuf); -		gf_stat_to_stat (&rsp->preparent, &preparent); -		gf_stat_to_stat (&rsp->postparent, &postparent); -	} +                gf_stat_to_stat (&rsp->preparent, &preparent); +                gf_stat_to_stat (&rsp->postparent, &postparent); +        } -	STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf, +        STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf,                        &preparent, &postparent); -	 -	client_local_wipe (local); -	return 0; +        client_local_wipe (local); + +        return 0;  }  /* @@ -4062,25 +4062,25 @@ int  client_truncate_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	gf_fop_truncate_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; -	struct stat         prestat = {0, }; -	struct stat         poststat = {0, }; +        gf_fop_truncate_rsp_t *rsp = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; +        struct stat         prestat = {0, }; +        struct stat         poststat = {0, }; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret == 0) { -		gf_stat_to_stat (&rsp->prestat, &prestat); -		gf_stat_to_stat (&rsp->poststat, &poststat); -	} +        if (op_ret == 0) { +                gf_stat_to_stat (&rsp->prestat, &prestat); +                gf_stat_to_stat (&rsp->poststat, &poststat); +        } -	STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); +        STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); -	return 0; +        return 0;  }  /* client_fstat_cbk - fstat callback for client protocol @@ -4094,24 +4094,24 @@ int  client_fstat_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	struct stat         stbuf = {0, }; -	gf_fop_fstat_rsp_t *rsp = NULL; -	int32_t             op_ret = 0; -	int32_t             op_errno = 0; +        struct stat         stbuf = {0, }; +        gf_fop_fstat_rsp_t *rsp = NULL; +        int32_t             op_ret = 0; +        int32_t             op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret == 0) { -		gf_stat_to_stat (&rsp->stat, &stbuf); +        if (op_ret == 0) { +                gf_stat_to_stat (&rsp->stat, &stbuf); -	} +        } -	STACK_UNWIND (frame, op_ret, op_errno, &stbuf); +        STACK_UNWIND (frame, op_ret, op_errno, &stbuf); -	return 0; +        return 0;  }  /* @@ -4125,25 +4125,25 @@ int  client_ftruncate_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                        struct iobuf *iobuf)  { -	gf_fop_ftruncate_rsp_t *rsp = NULL; -	int32_t                 op_ret = 0; -	int32_t                 op_errno = 0; -	struct stat             prestat = {0, }; -	struct stat             poststat = {0, }; +        gf_fop_ftruncate_rsp_t *rsp = NULL; +        int32_t                 op_ret = 0; +        int32_t                 op_errno = 0; +        struct stat             prestat = {0, }; +        struct stat             poststat = {0, }; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret == 0) { +        if (op_ret == 0) {                  gf_stat_to_stat (&rsp->prestat, &prestat);                  gf_stat_to_stat (&rsp->poststat, &poststat); -	} +        } -	STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); +        STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); -	return 0; +        return 0;  } @@ -4158,38 +4158,38 @@ int  client_readv_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	gf_fop_read_rsp_t  *rsp = NULL; -	int32_t             op_ret = 0; -	int32_t             op_errno = 0; -	struct iovec        vector = {0, }; -	struct stat         stbuf = {0, }; +        gf_fop_read_rsp_t  *rsp = NULL; +        int32_t             op_ret = 0; +        int32_t             op_errno = 0; +        struct iovec        vector = {0, }; +        struct stat         stbuf = {0, };          struct iobref      *iobref = NULL; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret != -1) { -		iobref = iobref_new (); -		gf_stat_to_stat (&rsp->stat, &stbuf); -		vector.iov_len  = op_ret; +        if (op_ret != -1) { +                iobref = iobref_new (); +                gf_stat_to_stat (&rsp->stat, &stbuf); +                vector.iov_len  = op_ret;                  if (op_ret > 0) {                          vector.iov_base = iobuf->ptr;                          iobref_add (iobref, iobuf);                  } -	} +        } -	STACK_UNWIND (frame, op_ret, op_errno, &vector, 1, &stbuf, iobref); +        STACK_UNWIND (frame, op_ret, op_errno, &vector, 1, &stbuf, iobref); -	if (iobref) -		iobref_unref (iobref); +        if (iobref) +                iobref_unref (iobref);          if (iobuf)                  iobuf_unref (iobuf); -	return 0; +        return 0;  }  /* @@ -4204,25 +4204,25 @@ int  client_write_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	gf_fop_write_rsp_t *rsp = NULL; -	int32_t             op_ret = 0; -	int32_t             op_errno = 0; -	struct stat         prestat = {0, }; -	struct stat         poststat = {0, }; +        gf_fop_write_rsp_t *rsp = NULL; +        int32_t             op_ret = 0; +        int32_t             op_errno = 0; +        struct stat         prestat = {0, }; +        struct stat         poststat = {0, }; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret >= 0) { -		gf_stat_to_stat (&rsp->prestat, &prestat); -		gf_stat_to_stat (&rsp->poststat, &poststat); +        if (op_ret >= 0) { +                gf_stat_to_stat (&rsp->prestat, &prestat); +                gf_stat_to_stat (&rsp->poststat, &poststat);          } -	STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); +        STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); -	return 0; +        return 0;  } @@ -4259,28 +4259,28 @@ int  client_readdir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                      struct iobuf *iobuf)  { -	gf_fop_readdir_rsp_t *rsp = NULL; -	int32_t               op_ret = 0; -	int32_t               op_errno = 0; -	uint32_t              buf_size = 0; -	gf_dirent_t           entries; +        gf_fop_readdir_rsp_t *rsp = NULL; +        int32_t               op_ret = 0; +        int32_t               op_errno = 0; +        uint32_t              buf_size = 0; +        gf_dirent_t           entries; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret    = ntoh32 (hdr->rsp.op_ret); -	op_errno  = ntoh32 (hdr->rsp.op_errno); +        op_ret    = ntoh32 (hdr->rsp.op_ret); +        op_errno  = ntoh32 (hdr->rsp.op_errno); -	INIT_LIST_HEAD (&entries.list); -	if (op_ret > 0) { -		buf_size = ntoh32 (rsp->size); -		gf_dirent_unserialize (&entries, rsp->buf, buf_size); -	} +        INIT_LIST_HEAD (&entries.list); +        if (op_ret > 0) { +                buf_size = ntoh32 (rsp->size); +                gf_dirent_unserialize (&entries, rsp->buf, buf_size); +        } -	STACK_UNWIND (frame, op_ret, op_errno, &entries); +        STACK_UNWIND (frame, op_ret, op_errno, &entries); -	gf_dirent_free (&entries); +        gf_dirent_free (&entries); -	return 0; +        return 0;  }  /* @@ -4296,25 +4296,25 @@ int  client_fsync_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	struct stat         prestat = {0, }; +        struct stat         prestat = {0, };          struct stat         poststat = {0,}; -	gf_fop_fsync_rsp_t *rsp = NULL; -	int32_t             op_ret = 0; -	int32_t             op_errno = 0; +        gf_fop_fsync_rsp_t *rsp = NULL; +        int32_t             op_ret = 0; +        int32_t             op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno));          if (op_ret == 0) {                  gf_stat_to_stat (&rsp->prestat, &prestat);                  gf_stat_to_stat (&rsp->poststat, &poststat);          } -	STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); +        STACK_UNWIND (frame, op_ret, op_errno, &prestat, &poststat); -	return 0; +        return 0;  }  /* @@ -4329,25 +4329,25 @@ int  client_unlink_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  { -	gf_fop_unlink_rsp_t *rsp = NULL; -	int32_t              op_ret = 0; -	int32_t              op_errno = 0; +        gf_fop_unlink_rsp_t *rsp = NULL; +        int32_t              op_ret = 0; +        int32_t              op_errno = 0;          struct stat          preparent = {0,};          struct stat          postparent = {0,}; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno));          if (op_ret == 0) {                  gf_stat_to_stat (&rsp->preparent, &preparent);                  gf_stat_to_stat (&rsp->postparent, &postparent);          } -	STACK_UNWIND (frame, op_ret, op_errno, &preparent, &postparent); +        STACK_UNWIND (frame, op_ret, op_errno, &preparent, &postparent); -	return 0; +        return 0;  }  /* @@ -4362,32 +4362,32 @@ int  client_rename_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  { -	struct stat          stbuf = {0, }; -	gf_fop_rename_rsp_t *rsp = NULL; -	int32_t              op_ret = 0; -	int32_t              op_errno = 0; -	struct stat          preoldparent = {0, }; -	struct stat          postoldparent = {0, }; -	struct stat          prenewparent = {0, }; -	struct stat          postnewparent = {0, }; - -	rsp = gf_param (hdr); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); - -	if (op_ret == 0) { -		gf_stat_to_stat (&rsp->stat, &stbuf); -		gf_stat_to_stat (&rsp->preoldparent, &preoldparent); -		gf_stat_to_stat (&rsp->postoldparent, &postoldparent); -		gf_stat_to_stat (&rsp->prenewparent, &prenewparent); -		gf_stat_to_stat (&rsp->postnewparent, &postnewparent); -	} - -	STACK_UNWIND (frame, op_ret, op_errno, &stbuf, &preoldparent, +        struct stat          stbuf = {0, }; +        gf_fop_rename_rsp_t *rsp = NULL; +        int32_t              op_ret = 0; +        int32_t              op_errno = 0; +        struct stat          preoldparent = {0, }; +        struct stat          postoldparent = {0, }; +        struct stat          prenewparent = {0, }; +        struct stat          postnewparent = {0, }; + +        rsp = gf_param (hdr); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); + +        if (op_ret == 0) { +                gf_stat_to_stat (&rsp->stat, &stbuf); +                gf_stat_to_stat (&rsp->preoldparent, &preoldparent); +                gf_stat_to_stat (&rsp->postoldparent, &postoldparent); +                gf_stat_to_stat (&rsp->prenewparent, &prenewparent); +                gf_stat_to_stat (&rsp->postnewparent, &postnewparent); +        } + +        STACK_UNWIND (frame, op_ret, op_errno, &stbuf, &preoldparent,                        &postoldparent, &prenewparent, &postnewparent); -	return 0; +        return 0;  } @@ -4403,24 +4403,24 @@ int  client_readlink_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	gf_fop_readlink_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; -	char                  *link = NULL; +        gf_fop_readlink_rsp_t *rsp = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; +        char                  *link = NULL;          struct stat            stbuf = {0,}; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret > 0) { -		link = rsp->path; +        if (op_ret > 0) { +                link = rsp->path;                  gf_stat_to_stat (&rsp->buf, &stbuf); -	} +        } -	STACK_UNWIND (frame, op_ret, op_errno, link, &stbuf); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno, link, &stbuf); +        return 0;  }  /* @@ -4435,27 +4435,27 @@ int  client_mkdir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	gf_fop_mkdir_rsp_t *rsp = NULL; -	int32_t             op_ret = 0; -	int32_t             op_errno = 0; -	struct stat         stbuf = {0, }; -	inode_t            *inode = NULL; -	client_local_t     *local = NULL; +        gf_fop_mkdir_rsp_t *rsp = NULL; +        int32_t             op_ret = 0; +        int32_t             op_errno = 0; +        struct stat         stbuf = {0, }; +        inode_t            *inode = NULL; +        client_local_t     *local = NULL;          int                 ret = 0;          struct stat         preparent = {0,};          struct stat         postparent = {0,}; -	local = frame->local; -	inode = local->loc.inode; -	frame->local = NULL; +        local = frame->local; +        inode = local->loc.inode; +        frame->local = NULL; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret >= 0) { -		gf_stat_to_stat (&rsp->stat, &stbuf); +        if (op_ret >= 0) { +                gf_stat_to_stat (&rsp->stat, &stbuf);                  ret = inode_ctx_put2 (inode, frame->this, stbuf.st_ino,                                        stbuf.st_dev); @@ -4467,16 +4467,16 @@ client_mkdir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                                  local->loc.path);                  } -		gf_stat_to_stat (&rsp->preparent, &preparent); -		gf_stat_to_stat (&rsp->postparent, &postparent); -	} +                gf_stat_to_stat (&rsp->preparent, &preparent); +                gf_stat_to_stat (&rsp->postparent, &postparent); +        } -	STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf, +        STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf,                        &preparent, &postparent); -	 -	client_local_wipe (local); -	return 0; +        client_local_wipe (local); + +        return 0;  }  /* @@ -4492,15 +4492,15 @@ int  client_flush_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	int32_t op_ret = 0; -	int32_t op_errno = 0; +        int32_t op_ret = 0; +        int32_t op_errno = 0; -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  /* @@ -4515,29 +4515,29 @@ int  client_opendir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                      struct iobuf *iobuf)  { -	int32_t               op_ret   = -1; -	int32_t               op_errno = ENOTCONN; -	fd_t                 *fd       = NULL; -	int64_t               remote_fd = 0; -	gf_fop_opendir_rsp_t *rsp       = NULL; -	client_local_t       *local = NULL; -	client_conf_t        *conf = NULL; +        int32_t               op_ret   = -1; +        int32_t               op_errno = ENOTCONN; +        fd_t                 *fd       = NULL; +        int64_t               remote_fd = 0; +        gf_fop_opendir_rsp_t *rsp       = NULL; +        client_local_t       *local = NULL; +        client_conf_t        *conf = NULL;          client_fd_ctx_t      *fdctx = NULL; -	local = frame->local; frame->local = NULL; -	conf  = frame->this->private; -	fd    = local->fd; +        local = frame->local; frame->local = NULL; +        conf  = frame->this->private; +        fd    = local->fd; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret    = ntoh32 (hdr->rsp.op_ret); -	op_errno  = ntoh32 (hdr->rsp.op_errno); +        op_ret    = ntoh32 (hdr->rsp.op_ret); +        op_errno  = ntoh32 (hdr->rsp.op_errno); -	if (op_ret >= 0) { -		remote_fd = ntoh64 (rsp->fd); -	} +        if (op_ret >= 0) { +                remote_fd = ntoh64 (rsp->fd); +        } -	if (op_ret >= 0) { +        if (op_ret >= 0) {                  fdctx = CALLOC (1, sizeof (*fdctx));                  if (!fdctx) {                          op_ret = -1; @@ -4547,20 +4547,20 @@ client_opendir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                  fdctx->remote_fd = remote_fd;                  INIT_LIST_HEAD (&fdctx->sfd_pos);                  fdctx->fd = fd; -		this_fd_set_ctx (fd, frame->this, &local->loc, fdctx); +                this_fd_set_ctx (fd, frame->this, &local->loc, fdctx); -		pthread_mutex_lock (&conf->mutex); -		{ +                pthread_mutex_lock (&conf->mutex); +                {                          list_add_tail (&fdctx->sfd_pos, &conf->saved_fds); -		} -		pthread_mutex_unlock (&conf->mutex); -	} +                } +                pthread_mutex_unlock (&conf->mutex); +        }  unwind_out: -	STACK_UNWIND (frame, op_ret, op_errno, fd); -	 -	client_local_wipe (local); +        STACK_UNWIND (frame, op_ret, op_errno, fd); -	return 0; +        client_local_wipe (local); + +        return 0;  }  /* @@ -4575,25 +4575,25 @@ int  client_rmdir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	gf_fop_rmdir_rsp_t *rsp = NULL; -	int32_t             op_ret = 0; -	int32_t             op_errno = 0; +        gf_fop_rmdir_rsp_t *rsp = NULL; +        int32_t             op_ret = 0; +        int32_t             op_errno = 0;          struct stat         preparent = {0,};          struct stat         postparent = {0,}; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno));          if (op_ret == 0) {                  gf_stat_to_stat (&rsp->preparent, &preparent);                  gf_stat_to_stat (&rsp->postparent, &postparent);          } -	STACK_UNWIND (frame, op_ret, op_errno, &preparent, &postparent); +        STACK_UNWIND (frame, op_ret, op_errno, &preparent, &postparent); -	return 0; +        return 0;  }  /* @@ -4608,18 +4608,18 @@ int  client_access_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  { -	gf_fop_access_rsp_t *rsp = NULL; -	int32_t              op_ret = 0; -	int32_t              op_errno = 0; +        gf_fop_access_rsp_t *rsp = NULL; +        int32_t              op_ret = 0; +        int32_t              op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  /* @@ -4635,35 +4635,35 @@ int  client_lookup_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  { -	struct stat          stbuf = {0, }; -	struct stat          postparent = {0, }; -	inode_t             *inode = NULL; -	dict_t              *xattr = NULL; -	gf_fop_lookup_rsp_t *rsp = NULL; -	int32_t              op_ret = 0; -	int32_t              op_errno = 0; -	size_t               dict_len = 0; -	char                *dictbuf = NULL; -	int32_t              ret = -1; -	int32_t              gf_errno = 0; -	client_local_t      *local = NULL; +        struct stat          stbuf = {0, }; +        struct stat          postparent = {0, }; +        inode_t             *inode = NULL; +        dict_t              *xattr = NULL; +        gf_fop_lookup_rsp_t *rsp = NULL; +        int32_t              op_ret = 0; +        int32_t              op_errno = 0; +        size_t               dict_len = 0; +        char                *dictbuf = NULL; +        int32_t              ret = -1; +        int32_t              gf_errno = 0; +        client_local_t      *local = NULL;          ino_t                oldino = 0;          uint64_t             oldgen = 0; -	local = frame->local;  -	inode = local->loc.inode; -	frame->local = NULL; +        local = frame->local; +        inode = local->loc.inode; +        frame->local = NULL; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_ret   = ntoh32 (hdr->rsp.op_ret);          gf_stat_to_stat (&rsp->postparent, &postparent); -	if (op_ret == 0) { -		op_ret = -1; -		gf_stat_to_stat (&rsp->stat, &stbuf); -                 +        if (op_ret == 0) { +                op_ret = -1; +                gf_stat_to_stat (&rsp->stat, &stbuf); +                  ret = inode_ctx_get2 (inode, frame->this, &oldino, &oldgen);                  if (oldino != stbuf.st_ino || oldgen != stbuf.st_dev) {                          if (oldino) { @@ -4671,13 +4671,13 @@ client_lookup_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                                          "LOOKUP %"PRId64"/%s (%s): "                                          "inode number changed from "                                          "%"PRId64" to %"PRId64, -                                        local->loc.parent->ino,  +                                        local->loc.parent->ino,                                          local->loc.name,                                          local->loc.path,                                          oldino, stbuf.st_ino);                                  goto fail;                          } -                                 +                          ret = inode_ctx_put2 (inode, frame->this,                                                stbuf.st_ino, stbuf.st_dev);                          if (ret < 0) { @@ -4685,193 +4685,193 @@ client_lookup_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                                          "LOOKUP %"PRId64"/%s (%s) : "                                          "failed to set remote inode "                                          "number to inode ctx", -                                        local->loc.parent->ino,  +                                        local->loc.parent->ino,                                          local->loc.name,                                          local->loc.path);                          }                  } -		dict_len = ntoh32 (rsp->dict_len); +                dict_len = ntoh32 (rsp->dict_len); -		if (dict_len > 0) { -			dictbuf = memdup (rsp->dict, dict_len); -			GF_VALIDATE_OR_GOTO(frame->this->name, dictbuf, fail); -			 -			xattr = dict_new(); -			GF_VALIDATE_OR_GOTO(frame->this->name, xattr, fail); +                if (dict_len > 0) { +                        dictbuf = memdup (rsp->dict, dict_len); +                        GF_VALIDATE_OR_GOTO (frame->this->name, dictbuf, fail); -			ret = dict_unserialize (dictbuf, dict_len, &xattr); -			if (ret < 0) { -				gf_log (frame->this->name, GF_LOG_DEBUG, -					"%s (%"PRId64"): failed to " +                        xattr = dict_new(); +                        GF_VALIDATE_OR_GOTO (frame->this->name, xattr, fail); + +                        ret = dict_unserialize (dictbuf, dict_len, &xattr); +                        if (ret < 0) { +                                gf_log (frame->this->name, GF_LOG_DEBUG, +                                        "%s (%"PRId64"): failed to "                                          "unserialize dictionary", -					local->loc.path, inode->ino); -				goto fail; -			} else { -				xattr->extra_free = dictbuf; -				dictbuf = NULL; -			} -		} -		op_ret = 0; -	} -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); -         +                                        local->loc.path, inode->ino); +                                goto fail; +                        } else { +                                xattr->extra_free = dictbuf; +                                dictbuf = NULL; +                        } +                } +                op_ret = 0; +        } +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno); +  fail: -	STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf, xattr, +        STACK_UNWIND (frame, op_ret, op_errno, inode, &stbuf, xattr,                        &postparent); -	 -	client_local_wipe (local); -	if (dictbuf) -		free (dictbuf); +        client_local_wipe (local); + +        if (dictbuf) +                free (dictbuf); -	if (xattr) -		dict_unref (xattr); +        if (xattr) +                dict_unref (xattr); -	return 0; +        return 0;  }  static int32_t  client_setattr_cbk (call_frame_t *frame,gf_hdr_common_t *hdr, size_t hdrlen,                      struct iobuf *iobuf)  { -	struct stat           statpre = {0, }; -	struct stat           statpost = {0, }; -	gf_fop_setattr_rsp_t *rsp = NULL; -	int32_t               op_ret = 0; -	int32_t               op_errno = 0; +        struct stat           statpre = {0, }; +        struct stat           statpost = {0, }; +        gf_fop_setattr_rsp_t *rsp = NULL; +        int32_t               op_ret = 0; +        int32_t               op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret == 0) { -		gf_stat_to_stat (&rsp->statpre, &statpre); -		gf_stat_to_stat (&rsp->statpost, &statpost); -	} +        if (op_ret == 0) { +                gf_stat_to_stat (&rsp->statpre, &statpre); +                gf_stat_to_stat (&rsp->statpost, &statpost); +        } -	STACK_UNWIND (frame, op_ret, op_errno, &statpre, &statpost); +        STACK_UNWIND (frame, op_ret, op_errno, &statpre, &statpost); -	return 0; +        return 0;  }  static int32_t  client_fsetattr_cbk (call_frame_t *frame,gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	struct stat           statpre = {0, }; -	struct stat           statpost = {0, }; -	gf_fop_setattr_rsp_t *rsp = NULL; -	int32_t               op_ret = 0; -	int32_t               op_errno = 0; +        struct stat           statpre = {0, }; +        struct stat           statpost = {0, }; +        gf_fop_setattr_rsp_t *rsp = NULL; +        int32_t               op_ret = 0; +        int32_t               op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret == 0) { -		gf_stat_to_stat (&rsp->statpre, &statpre); -		gf_stat_to_stat (&rsp->statpost, &statpost); -	} +        if (op_ret == 0) { +                gf_stat_to_stat (&rsp->statpre, &statpre); +                gf_stat_to_stat (&rsp->statpost, &statpost); +        } -	STACK_UNWIND (frame, op_ret, op_errno, &statpre, &statpost); +        STACK_UNWIND (frame, op_ret, op_errno, &statpre, &statpost); -	return 0; +        return 0;  }  static dir_entry_t *  gf_bin_to_direntry (char *buf, size_t count)  { -	int           idx = 0; +        int           idx = 0;          int           bread = 0; -	size_t        rcount = 0; -	char         *ender = NULL; +        size_t        rcount = 0; +        char         *ender = NULL;          char         *buffer = NULL; -	char          tmp_buf[512] = {0,}; -	dir_entry_t  *trav = NULL; +        char          tmp_buf[512] = {0,}; +        dir_entry_t  *trav = NULL;          dir_entry_t  *prev = NULL; -	dir_entry_t  *thead = NULL; +        dir_entry_t  *thead = NULL;          dir_entry_t  *head = NULL; -	thead = CALLOC (1, sizeof (dir_entry_t)); -	GF_VALIDATE_OR_GOTO("client-protocol", thead, fail); - -	buffer = buf; -	prev = thead; - -	for (idx = 0; idx < count ; idx++) { -		bread = 0; -		trav = CALLOC (1, sizeof (dir_entry_t)); -		GF_VALIDATE_OR_GOTO("client-protocol", trav, fail); - -		ender = strchr (buffer, '/'); -		if (!ender) -			break; -		rcount = ender - buffer; -		trav->name = CALLOC (1, rcount + 2); -		GF_VALIDATE_OR_GOTO("client-protocol", trav->name, fail); - -		strncpy (trav->name, buffer, rcount); -		bread = rcount + 1; -		buffer += bread; - -		ender = strchr (buffer, '\n'); -		if (!ender) -			break; -		rcount = ender - buffer; -		strncpy (tmp_buf, buffer, rcount); -		bread = rcount + 1; -		buffer += bread; -			 -		gf_string_to_stat (tmp_buf, &trav->buf); - -		ender = strchr (buffer, '\n'); -		if (!ender) -			break; -		rcount = ender - buffer; -		*ender = '\0'; -		if (S_ISLNK (trav->buf.st_mode)) -			trav->link = strdup (buffer); -		else -			trav->link = ""; - -		bread = rcount + 1; -		buffer += bread; - -		prev->next = trav; -		prev = trav; -	} -	 -	head = thead; +        thead = CALLOC (1, sizeof (dir_entry_t)); +        GF_VALIDATE_OR_GOTO ("client-protocol", thead, fail); + +        buffer = buf; +        prev = thead; + +        for (idx = 0; idx < count ; idx++) { +                bread = 0; +                trav = CALLOC (1, sizeof (dir_entry_t)); +                GF_VALIDATE_OR_GOTO ("client-protocol", trav, fail); + +                ender = strchr (buffer, '/'); +                if (!ender) +                        break; +                rcount = ender - buffer; +                trav->name = CALLOC (1, rcount + 2); +                GF_VALIDATE_OR_GOTO ("client-protocol", trav->name, fail); + +                strncpy (trav->name, buffer, rcount); +                bread = rcount + 1; +                buffer += bread; + +                ender = strchr (buffer, '\n'); +                if (!ender) +                        break; +                rcount = ender - buffer; +                strncpy (tmp_buf, buffer, rcount); +                bread = rcount + 1; +                buffer += bread; + +                gf_string_to_stat (tmp_buf, &trav->buf); + +                ender = strchr (buffer, '\n'); +                if (!ender) +                        break; +                rcount = ender - buffer; +                *ender = '\0'; +                if (S_ISLNK (trav->buf.st_mode)) +                        trav->link = strdup (buffer); +                else +                        trav->link = ""; + +                bread = rcount + 1; +                buffer += bread; + +                prev->next = trav; +                prev = trav; +        } + +        head = thead;  fail: -	return head; +        return head;  }  int  gf_free_direntry (dir_entry_t *head)  { -	dir_entry_t *prev = NULL; +        dir_entry_t *prev = NULL;          dir_entry_t *trav = NULL; -	prev = head; -	GF_VALIDATE_OR_GOTO("client-protocol", prev, fail); - -	trav = head->next; -	while (trav) { -		prev->next = trav->next; -		FREE (trav->name); -		if (S_ISLNK (trav->buf.st_mode)) -			FREE (trav->link); -		FREE (trav); -		trav = prev->next; -	} -	FREE (head); +        prev = head; +        GF_VALIDATE_OR_GOTO ("client-protocol", prev, fail); + +        trav = head->next; +        while (trav) { +                prev->next = trav->next; +                FREE (trav->name); +                if (S_ISLNK (trav->buf.st_mode)) +                        FREE (trav->link); +                FREE (trav); +                trav = prev->next; +        } +        FREE (head);  fail: -	return 0; +        return 0;  }  /* @@ -4886,36 +4886,36 @@ int  client_getdents_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	gf_fop_getdents_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; -	int32_t                gf_errno = 0; -	int32_t                nr_count = 0; -	dir_entry_t           *entry = NULL; - -	rsp = gf_param (hdr); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); - -	if (op_ret >= 0) { -		nr_count = ntoh32 (rsp->count);		 -		entry = gf_bin_to_direntry(iobuf->ptr, nr_count); -		if (entry == NULL) { -			op_ret = -1; -			op_errno = EINVAL; -		} -	} - -	STACK_UNWIND (frame, op_ret, op_errno, entry, nr_count); +        gf_fop_getdents_rsp_t *rsp = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; +        int32_t                gf_errno = 0; +        int32_t                nr_count = 0; +        dir_entry_t           *entry = NULL; + +        rsp = gf_param (hdr); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno); + +        if (op_ret >= 0) { +                nr_count = ntoh32 (rsp->count); +                entry = gf_bin_to_direntry(iobuf->ptr, nr_count); +                if (entry == NULL) { +                        op_ret = -1; +                        op_errno = EINVAL; +                } +        } + +        STACK_UNWIND (frame, op_ret, op_errno, entry, nr_count);          if (iobuf) -		iobuf_unref (iobuf); +                iobuf_unref (iobuf);          if (entry) -		gf_free_direntry(entry); +                gf_free_direntry(entry); -	return 0; +        return 0;  }  /* @@ -4930,23 +4930,23 @@ int  client_statfs_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  { -	struct statvfs       stbuf = {0, }; -	gf_fop_statfs_rsp_t *rsp = NULL; -	int32_t              op_ret = 0; -	int32_t              op_errno = 0; +        struct statvfs       stbuf = {0, }; +        gf_fop_statfs_rsp_t *rsp = NULL; +        int32_t              op_ret = 0; +        int32_t              op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret == 0) { -		gf_statfs_to_statfs (&rsp->statfs, &stbuf); -	} +        if (op_ret == 0) { +                gf_statfs_to_statfs (&rsp->statfs, &stbuf); +        } -	STACK_UNWIND (frame, op_ret, op_errno, &stbuf); +        STACK_UNWIND (frame, op_ret, op_errno, &stbuf); -	return 0; +        return 0;  }  /* @@ -4961,15 +4961,15 @@ int  client_fsyncdir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	int32_t op_ret = 0; -	int32_t op_errno = 0; +        int32_t op_ret = 0; +        int32_t op_errno = 0; -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  /* @@ -4984,18 +4984,18 @@ int  client_setxattr_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	gf_fop_setxattr_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; +        gf_fop_setxattr_rsp_t *rsp = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  /* @@ -5010,64 +5010,64 @@ int  client_getxattr_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	gf_fop_getxattr_rsp_t *rsp = NULL; -	int32_t                op_ret   = 0; -	int32_t                gf_errno = 0; -	int32_t                op_errno = 0; -	int32_t                dict_len = 0; -	dict_t                *dict = NULL; -	int32_t                ret = -1; -	char                  *dictbuf = NULL; -	client_local_t        *local = NULL; -	 -	local = frame->local; -	frame->local = NULL; - -	rsp = gf_param (hdr); -	GF_VALIDATE_OR_GOTO(frame->this->name, rsp, fail); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); - -	if (op_ret >= 0) { -		op_ret = -1; -		dict_len = ntoh32 (rsp->dict_len); - -		if (dict_len > 0) { -			dictbuf = memdup (rsp->dict, dict_len); -			GF_VALIDATE_OR_GOTO(frame->this->name, dictbuf, fail); - -			dict = dict_new(); -			GF_VALIDATE_OR_GOTO(frame->this->name, dict, fail); - -			ret = dict_unserialize (dictbuf, dict_len, &dict); -			if (ret < 0) { -				gf_log (frame->this->name, GF_LOG_DEBUG, -					"%s (%"PRId64"): failed to " -					"unserialize xattr dictionary",  -					local->loc.path, +        gf_fop_getxattr_rsp_t *rsp = NULL; +        int32_t                op_ret   = 0; +        int32_t                gf_errno = 0; +        int32_t                op_errno = 0; +        int32_t                dict_len = 0; +        dict_t                *dict = NULL; +        int32_t                ret = -1; +        char                  *dictbuf = NULL; +        client_local_t        *local = NULL; + +        local = frame->local; +        frame->local = NULL; + +        rsp = gf_param (hdr); +        GF_VALIDATE_OR_GOTO (frame->this->name, rsp, fail); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); + +        if (op_ret >= 0) { +                op_ret = -1; +                dict_len = ntoh32 (rsp->dict_len); + +                if (dict_len > 0) { +                        dictbuf = memdup (rsp->dict, dict_len); +                        GF_VALIDATE_OR_GOTO (frame->this->name, dictbuf, fail); + +                        dict = dict_new(); +                        GF_VALIDATE_OR_GOTO (frame->this->name, dict, fail); + +                        ret = dict_unserialize (dictbuf, dict_len, &dict); +                        if (ret < 0) { +                                gf_log (frame->this->name, GF_LOG_DEBUG, +                                        "%s (%"PRId64"): failed to " +                                        "unserialize xattr dictionary", +                                        local->loc.path,                                          local->loc.inode->ino); -				goto fail; -			} else { -				dict->extra_free = dictbuf; -				dictbuf = NULL; -			} -		} -		op_ret = 0; -	} -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); +                                goto fail; +                        } else { +                                dict->extra_free = dictbuf; +                                dictbuf = NULL; +                        } +                } +                op_ret = 0; +        } +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno);  fail: -	STACK_UNWIND (frame, op_ret, op_errno, dict); -	 -	client_local_wipe (local); +        STACK_UNWIND (frame, op_ret, op_errno, dict); + +        client_local_wipe (local); -	if (dictbuf) -		free (dictbuf); +        if (dictbuf) +                free (dictbuf); -	if (dict) -		dict_unref (dict); +        if (dict) +                dict_unref (dict); -	return 0; +        return 0;  }  /* @@ -5082,15 +5082,15 @@ int  client_removexattr_cbk (call_frame_t *frame, gf_hdr_common_t *hdr,                          size_t hdrlen, struct iobuf *iobuf)  { -	int32_t op_ret = 0; -	int32_t op_errno = 0; +        int32_t op_ret = 0; +        int32_t op_errno = 0; -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  /* @@ -5103,24 +5103,24 @@ client_removexattr_cbk (call_frame_t *frame, gf_hdr_common_t *hdr,  int  client_lk_common_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		      struct iobuf *iobuf) +                      struct iobuf *iobuf)  { -	struct flock     lock = {0,}; -	gf_fop_lk_rsp_t *rsp = NULL; -	int32_t          op_ret = 0; -	int32_t          op_errno = 0; +        struct flock     lock = {0,}; +        gf_fop_lk_rsp_t *rsp = NULL; +        int32_t          op_ret = 0; +        int32_t          op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	if (op_ret >= 0) { -		gf_flock_to_flock (&rsp->flock, &lock); -	} +        if (op_ret >= 0) { +                gf_flock_to_flock (&rsp->flock, &lock); +        } -	STACK_UNWIND (frame, op_ret, op_errno, &lock); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno, &lock); +        return 0;  }  /* @@ -5133,37 +5133,37 @@ client_lk_common_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,  int  client_inodelk_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		    struct iobuf *iobuf) +                    struct iobuf *iobuf)  { -	gf_fop_inodelk_rsp_t *rsp = NULL; -	int32_t               op_ret = 0; -	int32_t               op_errno = 0; +        gf_fop_inodelk_rsp_t *rsp = NULL; +        int32_t               op_ret = 0; +        int32_t               op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno); +        return 0;  }  int  client_finodelk_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		     struct iobuf *iobuf) +                     struct iobuf *iobuf)  { -	gf_fop_finodelk_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; +        gf_fop_finodelk_rsp_t *rsp = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno); +        return 0;  }  /* @@ -5176,36 +5176,36 @@ client_finodelk_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,  int  client_entrylk_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		    struct iobuf *iobuf) +                    struct iobuf *iobuf)  { -	gf_fop_entrylk_rsp_t *rsp = NULL; -	int32_t               op_ret = 0; -	int32_t               op_errno = 0; +        gf_fop_entrylk_rsp_t *rsp = NULL; +        int32_t               op_ret = 0; +        int32_t               op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno); +        return 0;  }  int  client_fentrylk_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		     struct iobuf *iobuf) +                     struct iobuf *iobuf)  { -	gf_fop_fentrylk_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; +        gf_fop_fentrylk_rsp_t *rsp = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno); +        return 0;  }  /** @@ -5221,15 +5221,15 @@ int  client_setdents_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	int32_t op_ret = 0; -	int32_t op_errno = 0; +        int32_t op_ret = 0; +        int32_t op_errno = 0; -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  /* @@ -5245,31 +5245,31 @@ int  client_stats_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                    struct iobuf *iobuf)  { -	struct xlator_stats  stats = {0,}; -	gf_mop_stats_rsp_t  *rsp = NULL; -	char                *buffer = NULL; -	int32_t              op_ret = 0; -	int32_t              op_errno = 0; - -	rsp = gf_param (hdr); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); - -	if (op_ret >= 0) -	{ -		buffer = rsp->buf; - -		sscanf (buffer, "%"SCNx64",%"SCNx64",%"SCNx64",%"SCNx64 -			",%"SCNx64",%"SCNx64",%"SCNx64",%"SCNx64"\n", -			&stats.nr_files, &stats.disk_usage, &stats.free_disk, -			&stats.total_disk_size, &stats.read_usage, -			&stats.write_usage, &stats.disk_speed, +        struct xlator_stats  stats = {0,}; +        gf_mop_stats_rsp_t  *rsp = NULL; +        char                *buffer = NULL; +        int32_t              op_ret = 0; +        int32_t              op_errno = 0; + +        rsp = gf_param (hdr); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); + +        if (op_ret >= 0) +        { +                buffer = rsp->buf; + +                sscanf (buffer, "%"SCNx64",%"SCNx64",%"SCNx64",%"SCNx64 +                        ",%"SCNx64",%"SCNx64",%"SCNx64",%"SCNx64"\n", +                        &stats.nr_files, &stats.disk_usage, &stats.free_disk, +                        &stats.total_disk_size, &stats.read_usage, +                        &stats.write_usage, &stats.disk_speed,                          &stats.nr_clients); -	} +        } -	STACK_UNWIND (frame, op_ret, op_errno, &stats); -	return 0; +        STACK_UNWIND (frame, op_ret, op_errno, &stats); +        return 0;  }  /* @@ -5285,36 +5285,36 @@ int  client_getspec (call_frame_t *frame, xlator_t *this, const char *key,                  int32_t flag)  { -	gf_hdr_common_t      *hdr = NULL; -	gf_mop_getspec_req_t *req = NULL; -	size_t                hdrlen = -1; -	int                   keylen = 0; -	int                   ret = -1; - -	if (key) -		keylen = STRLEN_0(key); - -	hdrlen = gf_hdr_len (req, keylen); -	hdr    = gf_hdr_new (req, keylen); -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req        = gf_param (hdr); -	req->flags = hton32 (flag); -	req->keylen = hton32 (keylen); -	if (keylen) -		strcpy (req->key, key); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_MOP_REQUEST, GF_MOP_GETSPEC, -				    hdr, hdrlen, NULL, 0, NULL); - -	return ret; +        gf_hdr_common_t      *hdr = NULL; +        gf_mop_getspec_req_t *req = NULL; +        size_t                hdrlen = -1; +        int                   keylen = 0; +        int                   ret = -1; + +        if (key) +                keylen = STRLEN_0 (key); + +        hdrlen = gf_hdr_len (req, keylen); +        hdr    = gf_hdr_new (req, keylen); +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req        = gf_param (hdr); +        req->flags = hton32 (flag); +        req->keylen = hton32 (keylen); +        if (keylen) +                strcpy (req->key, key); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_MOP_REQUEST, GF_MOP_GETSPEC, +                                    hdr, hdrlen, NULL, 0, NULL); + +        return ret;  unwind: -	if (hdr) -		free (hdr); -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  }  /* @@ -5330,119 +5330,119 @@ int  client_getspec_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                      struct iobuf *iobuf)  { -	gf_mop_getspec_rsp_t  *rsp = NULL; -	char                  *spec_data = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; -	int32_t                gf_errno = 0; - -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); -	rsp = gf_param (hdr); - -	if (op_ret >= 0) { -		spec_data = rsp->spec; -	} - -	STACK_UNWIND (frame, op_ret, op_errno, spec_data); -	return 0; +        gf_mop_getspec_rsp_t  *rsp = NULL; +        char                  *spec_data = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; +        int32_t                gf_errno = 0; + +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno); +        rsp = gf_param (hdr); + +        if (op_ret >= 0) { +                spec_data = rsp->spec; +        } + +        STACK_UNWIND (frame, op_ret, op_errno, spec_data); +        return 0;  }  int  client_log (call_frame_t *frame, xlator_t *this, const char *msg)  { -	gf_hdr_common_t *     hdr = NULL; -	gf_mop_log_req_t *    req = NULL; -	size_t                hdrlen = -1; -	int                   msglen = 0; -	int                   ret = -1; - -	if (msg) -		msglen = STRLEN_0(msg); - -	hdrlen = gf_hdr_len (req, msglen); -	hdr    = gf_hdr_new (req, msglen); -         -	GF_VALIDATE_OR_GOTO(this->name, hdr, unwind); - -	req         = gf_param (hdr); -	req->msglen = hton32 (msglen); -         -	if (msglen) -		strcpy (req->msg, msg); - -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_MOP_REQUEST, GF_MOP_LOG, -				    hdr, hdrlen, NULL, 0, NULL); - -	return ret; -         +        gf_hdr_common_t *     hdr = NULL; +        gf_mop_log_req_t *    req = NULL; +        size_t                hdrlen = -1; +        int                   msglen = 0; +        int                   ret = -1; + +        if (msg) +                msglen = STRLEN_0 (msg); + +        hdrlen = gf_hdr_len (req, msglen); +        hdr    = gf_hdr_new (req, msglen); + +        GF_VALIDATE_OR_GOTO (this->name, hdr, unwind); + +        req         = gf_param (hdr); +        req->msglen = hton32 (msglen); + +        if (msglen) +                strcpy (req->msg, msg); + +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_MOP_REQUEST, GF_MOP_LOG, +                                    hdr, hdrlen, NULL, 0, NULL); + +        return ret; +  unwind: -	if (hdr) -		free (hdr); -         -	STACK_UNWIND(frame, -1, EINVAL, NULL); -	return 0; +        if (hdr) +                free (hdr); + +        STACK_UNWIND (frame, -1, EINVAL, NULL); +        return 0;  }  int  client_log_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen)  { -	gf_mop_log_rsp_t *     rsp      = NULL; -         -	int32_t                op_ret   = 0; -	int32_t                op_errno = 0; -	int32_t                gf_errno = 0; +        gf_mop_log_rsp_t *     rsp      = NULL; + +        int32_t                op_ret   = 0; +        int32_t                op_errno = 0; +        int32_t                gf_errno = 0; -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); -         -	rsp = gf_param (hdr); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno); + +        rsp = gf_param (hdr); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  int  client_checksum (call_frame_t *frame, xlator_t *this, loc_t *loc, int32_t flag)  { -	gf_hdr_common_t       *hdr = NULL; -	gf_fop_checksum_req_t *req = NULL; -	size_t                 hdrlen = -1; -	int                    ret = -1; -	ino_t                  ino = 0; +        gf_hdr_common_t       *hdr = NULL; +        gf_fop_checksum_req_t *req = NULL; +        size_t                 hdrlen = -1; +        int                    ret = -1; +        ino_t                  ino = 0;          uint64_t               gen = 0; -	hdrlen = gf_hdr_len (req, strlen (loc->path) + 1); -	hdr    = gf_hdr_new (req, strlen (loc->path) + 1); -	req    = gf_param (hdr); -	 -	ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); -	if (loc->inode->ino && ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"CHECKSUM %"PRId64" (%s): " +        hdrlen = gf_hdr_len (req, strlen (loc->path) + 1); +        hdr    = gf_hdr_new (req, strlen (loc->path) + 1); +        req    = gf_param (hdr); + +        ret = inode_ctx_get2 (loc->inode, this, &ino, &gen); +        if (loc->inode->ino && ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "CHECKSUM %"PRId64" (%s): "                          "failed to get remote inode number", -			loc->inode->ino, loc->path); -	} +                        loc->inode->ino, loc->path); +        } -	req->ino  = hton64 (ino); +        req->ino  = hton64 (ino);          req->gen  = hton64 (gen); -	req->flag = hton32 (flag); -	strcpy (req->path, loc->path); +        req->flag = hton32 (flag); +        strcpy (req->path, loc->path); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_CHECKSUM, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_CHECKSUM, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  } @@ -5450,26 +5450,26 @@ int  client_checksum_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                       struct iobuf *iobuf)  { -	gf_fop_checksum_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; -	int32_t                gf_errno = 0; -	unsigned char         *fchecksum = NULL; -	unsigned char         *dchecksum = NULL; - -	rsp = gf_param (hdr); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); - -	if (op_ret >= 0) { -		fchecksum = rsp->fchecksum; -		dchecksum = rsp->dchecksum + NAME_MAX; -	} - -	STACK_UNWIND (frame, op_ret, op_errno, fchecksum, dchecksum); -	return 0; +        gf_fop_checksum_rsp_t *rsp = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; +        int32_t                gf_errno = 0; +        unsigned char         *fchecksum = NULL; +        unsigned char         *dchecksum = NULL; + +        rsp = gf_param (hdr); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno); + +        if (op_ret >= 0) { +                fchecksum = rsp->fchecksum; +                dchecksum = rsp->dchecksum + NAME_MAX; +        } + +        STACK_UNWIND (frame, op_ret, op_errno, fchecksum, dchecksum); +        return 0;  } @@ -5477,67 +5477,67 @@ int  client_rchecksum (call_frame_t *frame, xlator_t *this, fd_t *fd, off_t offset,                    int32_t len)  { -	gf_hdr_common_t        *hdr = NULL; -	gf_fop_rchecksum_req_t *req = NULL; -	size_t                  hdrlen = -1; -	int                     ret = -1; +        gf_hdr_common_t        *hdr = NULL; +        gf_fop_rchecksum_req_t *req = NULL; +        size_t                  hdrlen = -1; +        int                     ret = -1;          int64_t                remote_fd = -1;          client_fd_ctx_t       *fdctx     = NULL; -	hdrlen = gf_hdr_len (req, 0); +        hdrlen = gf_hdr_len (req, 0);          hdr    = gf_hdr_new (req, 0); -	req    = gf_param (hdr); - -	fdctx = this_fd_get_ctx (fd, this); -	if (fdctx == NULL) { -		gf_log (this->name, GF_LOG_TRACE, -			"(%"PRId64"): failed to get fd ctx. EBADFD", -			fd->inode->ino); -		STACK_UNWIND (frame, -1, EBADFD, 0, NULL); -		return 0; -	} +        req    = gf_param (hdr); + +        fdctx = this_fd_get_ctx (fd, this); +        if (fdctx == NULL) { +                gf_log (this->name, GF_LOG_TRACE, +                        "(%"PRId64"): failed to get fd ctx. EBADFD", +                        fd->inode->ino); +                STACK_UNWIND (frame, -1, EBADFD, 0, NULL); +                return 0; +        }          remote_fd = fdctx->remote_fd;          req->fd     = hton64 (remote_fd);          req->offset = hton64 (offset);          req->len    = hton32 (len); -	ret = protocol_client_xfer (frame, this, -				    CLIENT_CHANNEL (this, CHANNEL_BULK), -				    GF_OP_TYPE_FOP_REQUEST, GF_FOP_RCHECKSUM, -				    hdr, hdrlen, NULL, 0, NULL); +        ret = protocol_client_xfer (frame, this, +                                    CLIENT_CHANNEL (this, CHANNEL_BULK), +                                    GF_OP_TYPE_FOP_REQUEST, GF_FOP_RCHECKSUM, +                                    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        return ret;  }  int  client_rchecksum_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -                     struct iobuf *iobuf) +                      struct iobuf *iobuf)  { -	gf_fop_rchecksum_rsp_t *rsp = NULL; +        gf_fop_rchecksum_rsp_t *rsp = NULL; -	int32_t                op_ret = 0; -	int32_t                op_errno = 0; -	int32_t                gf_errno = 0; -	uint32_t               weak_checksum = 0; -	unsigned char         *strong_checksum = NULL; +        int32_t                op_ret = 0; +        int32_t                op_errno = 0; +        int32_t                gf_errno = 0; +        uint32_t               weak_checksum = 0; +        unsigned char         *strong_checksum = NULL; -	rsp = gf_param (hdr); +        rsp = gf_param (hdr); -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	gf_errno = ntoh32 (hdr->rsp.op_errno); -	op_errno = gf_error_to_errno (gf_errno); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        gf_errno = ntoh32 (hdr->rsp.op_errno); +        op_errno = gf_error_to_errno (gf_errno); -	if (op_ret >= 0) { -		weak_checksum   = rsp->weak_checksum; -		strong_checksum = rsp->strong_checksum; -	} +        if (op_ret >= 0) { +                weak_checksum   = rsp->weak_checksum; +                strong_checksum = rsp->strong_checksum; +        } -	STACK_UNWIND (frame, op_ret, op_errno, weak_checksum, strong_checksum); +        STACK_UNWIND (frame, op_ret, op_errno, weak_checksum, strong_checksum); -	return 0; +        return 0;  } @@ -5553,15 +5553,15 @@ int  client_setspec_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                      struct iobuf *iobuf)  { -	int32_t op_ret = 0; -	int32_t op_errno = 0; +        int32_t op_ret = 0; +        int32_t op_errno = 0; -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); -	STACK_UNWIND (frame, op_ret, op_errno); +        STACK_UNWIND (frame, op_ret, op_errno); -	return 0; +        return 0;  }  /* @@ -5577,69 +5577,69 @@ client_setvolume_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                        struct iobuf *iobuf)  {          client_conf_t          *conf = NULL; -	gf_mop_setvolume_rsp_t *rsp = NULL; -	client_connection_t    *conn = NULL; -	glusterfs_ctx_t        *ctx = NULL;  -	xlator_t               *this = NULL; -	xlator_list_t          *parent = NULL; -	transport_t            *trans = NULL; -	dict_t                 *reply = NULL; -	char                   *remote_subvol = NULL; -	char                   *remote_error = NULL; -	char                   *process_uuid = NULL; -	int32_t                 ret = -1; -	int32_t                 op_ret   = -1; -	int32_t                 op_errno = EINVAL; -	int32_t                 dict_len = 0; +        gf_mop_setvolume_rsp_t *rsp = NULL; +        client_connection_t    *conn = NULL; +        glusterfs_ctx_t        *ctx = NULL; +        xlator_t               *this = NULL; +        xlator_list_t          *parent = NULL; +        transport_t            *trans = NULL; +        dict_t                 *reply = NULL; +        char                   *remote_subvol = NULL; +        char                   *remote_error = NULL; +        char                   *process_uuid = NULL; +        int32_t                 ret = -1; +        int32_t                 op_ret   = -1; +        int32_t                 op_errno = EINVAL; +        int32_t                 dict_len = 0;          transport_t            *peer_trans = NULL;          uint64_t                peer_trans_int = 0; -	trans = frame->local; frame->local = NULL; -	this  = frame->this; -	conn  = trans->xl_private; +        trans = frame->local; frame->local = NULL; +        this  = frame->this; +        conn  = trans->xl_private;          conf  = this->private; -	rsp = gf_param (hdr); - -	op_ret   = ntoh32 (hdr->rsp.op_ret); -	op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); - -	if ((op_ret < 0) && (op_errno == ENOTCONN)) { -		gf_log (this->name, GF_LOG_DEBUG, -			"setvolume failed (%s)", -			strerror (op_errno)); -		goto out; -	} - -	reply = dict_new (); -	GF_VALIDATE_OR_GOTO(this->name, reply, out); - -	dict_len = ntoh32 (rsp->dict_len); -	ret = dict_unserialize (rsp->buf, dict_len, &reply); -	if (ret < 0) { -		gf_log (frame->this->name, GF_LOG_DEBUG, -			"failed to unserialize buffer(%p) to dictionary", -			rsp->buf); -		goto out; -	} -	 -	ret = dict_get_str (reply, "ERROR", &remote_error); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to get ERROR string from reply dictionary"); -	} - -	ret = dict_get_str (reply, "process-uuid", &process_uuid); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to get 'process-uuid' from reply dictionary"); -	} - -	if (op_ret < 0) { -		gf_log (trans->xl->name, GF_LOG_DEBUG, -			"SETVOLUME on remote-host failed: %s", -			remote_error ? remote_error : strerror (op_errno)); -		errno = op_errno; +        rsp = gf_param (hdr); + +        op_ret   = ntoh32 (hdr->rsp.op_ret); +        op_errno = gf_error_to_errno (ntoh32 (hdr->rsp.op_errno)); + +        if ((op_ret < 0) && (op_errno == ENOTCONN)) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "setvolume failed (%s)", +                        strerror (op_errno)); +                goto out; +        } + +        reply = dict_new (); +        GF_VALIDATE_OR_GOTO (this->name, reply, out); + +        dict_len = ntoh32 (rsp->dict_len); +        ret = dict_unserialize (rsp->buf, dict_len, &reply); +        if (ret < 0) { +                gf_log (frame->this->name, GF_LOG_DEBUG, +                        "failed to unserialize buffer(%p) to dictionary", +                        rsp->buf); +                goto out; +        } + +        ret = dict_get_str (reply, "ERROR", &remote_error); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to get ERROR string from reply dictionary"); +        } + +        ret = dict_get_str (reply, "process-uuid", &process_uuid); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to get 'process-uuid' from reply dictionary"); +        } + +        if (op_ret < 0) { +                gf_log (trans->xl->name, GF_LOG_DEBUG, +                        "SETVOLUME on remote-host failed: %s", +                        remote_error ? remote_error : strerror (op_errno)); +                errno = op_errno;                  if (op_errno == ESTALE) {                          parent = trans->xl->parents;                          while (parent) { @@ -5650,70 +5650,70 @@ client_setvolume_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                          }                  } -	} else { +        } else {                  ret = dict_get_str (this->options, "remote-subvolume",                                      &remote_subvol); -                if (!remote_subvol)  +                if (!remote_subvol)                          goto out; -		ctx = this->ctx; -                 -		if (process_uuid && !strcmp (ctx->process_uuid,process_uuid)) { +                ctx = this->ctx; + +                if (process_uuid && !strcmp (ctx->process_uuid,process_uuid)) {                          ret = dict_get_uint64 (reply, "transport-ptr",                                                 &peer_trans_int);                          peer_trans = (void *) (long) (peer_trans_int); -			 -			gf_log (this->name, GF_LOG_WARNING,  -				"attaching to the local volume '%s'", -				remote_subvol); + +                        gf_log (this->name, GF_LOG_WARNING, +                                "attaching to the local volume '%s'", +                                remote_subvol);                          transport_setpeer (trans, peer_trans); -		} -		 +                } +                  gf_log (trans->xl->name, GF_LOG_NORMAL, -			"Connected to %s, attached " +                        "Connected to %s, attached "                          "to remote volume '%s'.",                          trans->peerinfo.identifier, remote_subvol); -		pthread_mutex_lock (&(conn->lock)); -		{ -			conn->connected = 1; -		} -		pthread_mutex_unlock (&(conn->lock)); +                pthread_mutex_lock (&(conn->lock)); +                { +                        conn->connected = 1; +                } +                pthread_mutex_unlock (&(conn->lock)); -		parent = trans->xl->parents; -		while (parent) { -			xlator_notify (parent->xlator, GF_EVENT_CHILD_UP, +                parent = trans->xl->parents; +                while (parent) { +                        xlator_notify (parent->xlator, GF_EVENT_CHILD_UP,                                         trans->xl); -			parent = parent->next; -		} -	} +                        parent = parent->next; +                } +        }          conf->connecting = 0;  out:          if (-1 == op_ret) { -		/* Let the connection/re-connection happen in  -		 * background, for now, don't hang here, -		 * tell the parents that i am all ok.. -		 */ -		parent = trans->xl->parents; -		while (parent) { -			xlator_notify (parent->xlator, +                /* Let the connection/re-connection happen in +                 * background, for now, don't hang here, +                 * tell the parents that i am all ok.. +                 */ +                parent = trans->xl->parents; +                while (parent) { +                        xlator_notify (parent->xlator,                                         GF_EVENT_CHILD_CONNECTING, trans->xl); -			parent = parent->next; -		} +                        parent = parent->next; +                }                  conf->connecting= 1;          } -	STACK_DESTROY (frame->root); +        STACK_DESTROY (frame->root); -	if (reply) -		dict_unref (reply); +        if (reply) +                dict_unref (reply); -	return op_ret; +        return op_ret;  }  /* @@ -5727,52 +5727,52 @@ int  client_enosys_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  { -	STACK_DESTROY (frame->root); -	return 0; +        STACK_DESTROY (frame->root); +        return 0;  }  void  client_protocol_reconnect (void *trans_ptr)  { -	transport_t         *trans = NULL; -	client_connection_t *conn = NULL; -	struct timeval       tv = {0, 0}; +        transport_t         *trans = NULL; +        client_connection_t *conn = NULL; +        struct timeval       tv = {0, 0};          int32_t              ret = 0; -	trans = trans_ptr; -	conn  = trans->xl_private; -	pthread_mutex_lock (&conn->lock); -	{ -		if (conn->reconnect) -			gf_timer_call_cancel (trans->xl->ctx,  -					      conn->reconnect); -		conn->reconnect = 0; - -		if (conn->connected == 0) { -			tv.tv_sec = 10; - -			gf_log (trans->xl->name, GF_LOG_TRACE, -				"attempting reconnect"); -			ret = transport_connect (trans); - -			conn->reconnect =  -				gf_timer_call_after (trans->xl->ctx, tv, -						     client_protocol_reconnect, -						     trans); -		} else { -			gf_log (trans->xl->name, GF_LOG_TRACE,  -				"breaking reconnect chain"); -		} -	} -	pthread_mutex_unlock (&conn->lock); +        trans = trans_ptr; +        conn  = trans->xl_private; +        pthread_mutex_lock (&conn->lock); +        { +                if (conn->reconnect) +                        gf_timer_call_cancel (trans->xl->ctx, +                                              conn->reconnect); +                conn->reconnect = 0; + +                if (conn->connected == 0) { +                        tv.tv_sec = 10; + +                        gf_log (trans->xl->name, GF_LOG_TRACE, +                                "attempting reconnect"); +                        ret = transport_connect (trans); + +                        conn->reconnect = +                                gf_timer_call_after (trans->xl->ctx, tv, +                                                     client_protocol_reconnect, +                                                     trans); +                } else { +                        gf_log (trans->xl->name, GF_LOG_TRACE, +                                "breaking reconnect chain"); +                } +        } +        pthread_mutex_unlock (&conn->lock);          if (ret == -1 && errno != EINPROGRESS) {                  default_notify (trans->xl, GF_EVENT_CHILD_DOWN, NULL);          }  } -int  +int  protocol_client_mark_fd_bad (xlator_t *this)  {          client_conf_t            *conf = NULL; @@ -5790,10 +5790,10 @@ protocol_client_mark_fd_bad (xlator_t *this)                          FREE (fdctx);                  } -                INIT_LIST_HEAD(&conf->saved_fds); +                INIT_LIST_HEAD (&conf->saved_fds);          } -	pthread_mutex_unlock (&conf->mutex); -         +        pthread_mutex_unlock (&conf->mutex); +          return 0;  } @@ -5806,35 +5806,35 @@ protocol_client_mark_fd_bad (xlator_t *this)  int  protocol_client_cleanup (transport_t *trans)  { -	client_connection_t    *conn = NULL; -	struct saved_frames    *saved_frames = NULL; - -	conn = trans->xl_private; -			 -	gf_log (trans->xl->name, GF_LOG_TRACE, -		"cleaning up state in transport object %p", trans); - -	pthread_mutex_lock (&conn->lock); -	{ -		saved_frames = conn->saved_frames; -		conn->saved_frames = saved_frames_new (); - -		/* bailout logic cleanup */ -		if (conn->timer) { -			gf_timer_call_cancel (trans->xl->ctx, conn->timer); -			conn->timer = NULL; -		} - -		if (conn->reconnect == NULL) { -			/* :O This part is empty.. any thing missing? */ -		} -	} -	pthread_mutex_unlock (&conn->lock); - -	saved_frames_destroy (trans->xl, saved_frames, -			      gf_fops, gf_mops, gf_cbks); - -	return 0; +        client_connection_t    *conn = NULL; +        struct saved_frames    *saved_frames = NULL; + +        conn = trans->xl_private; + +        gf_log (trans->xl->name, GF_LOG_TRACE, +                "cleaning up state in transport object %p", trans); + +        pthread_mutex_lock (&conn->lock); +        { +                saved_frames = conn->saved_frames; +                conn->saved_frames = saved_frames_new (); + +                /* bailout logic cleanup */ +                if (conn->timer) { +                        gf_timer_call_cancel (trans->xl->ctx, conn->timer); +                        conn->timer = NULL; +                } + +                if (conn->reconnect == NULL) { +                        /* :O This part is empty.. any thing missing? */ +                } +        } +        pthread_mutex_unlock (&conn->lock); + +        saved_frames_destroy (trans->xl, saved_frames, +                              gf_fops, gf_mops, gf_cbks); + +        return 0;  } @@ -5843,17 +5843,17 @@ int  client_releasedir_cbk (call_frame_t *frame, gf_hdr_common_t *hdr,                         size_t hdrlen, struct iobuf *iobuf)  { -	STACK_DESTROY (frame->root); -	return 0; +        STACK_DESTROY (frame->root); +        return 0;  }  int  client_release_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen, -		    struct iobuf *iobuf) +                    struct iobuf *iobuf)  { -	STACK_DESTROY (frame->root); -	return 0; +        STACK_DESTROY (frame->root); +        return 0;  } @@ -5862,67 +5862,67 @@ client_forget_cbk (call_frame_t *frame, gf_hdr_common_t *hdr, size_t hdrlen,                     struct iobuf *iobuf)  {          gf_log ("", GF_LOG_CRITICAL, "fop not implemented"); -	return 0; +        return 0;  }  static gf_op_t gf_fops[] = { -	[GF_FOP_STAT]           =  client_stat_cbk, -	[GF_FOP_READLINK]       =  client_readlink_cbk, -	[GF_FOP_MKNOD]          =  client_mknod_cbk, -	[GF_FOP_MKDIR]          =  client_mkdir_cbk, -	[GF_FOP_UNLINK]         =  client_unlink_cbk, -	[GF_FOP_RMDIR]          =  client_rmdir_cbk, -	[GF_FOP_SYMLINK]        =  client_symlink_cbk, -	[GF_FOP_RENAME]         =  client_rename_cbk, -	[GF_FOP_LINK]           =  client_link_cbk, -	[GF_FOP_TRUNCATE]       =  client_truncate_cbk, -	[GF_FOP_OPEN]           =  client_open_cbk, -	[GF_FOP_READ]           =  client_readv_cbk, -	[GF_FOP_WRITE]          =  client_write_cbk, -	[GF_FOP_STATFS]         =  client_statfs_cbk, -	[GF_FOP_FLUSH]          =  client_flush_cbk, -	[GF_FOP_FSYNC]          =  client_fsync_cbk, -	[GF_FOP_SETXATTR]       =  client_setxattr_cbk, -	[GF_FOP_GETXATTR]       =  client_getxattr_cbk, -	[GF_FOP_REMOVEXATTR]    =  client_removexattr_cbk, -	[GF_FOP_OPENDIR]        =  client_opendir_cbk, -	[GF_FOP_GETDENTS]       =  client_getdents_cbk, -	[GF_FOP_FSYNCDIR]       =  client_fsyncdir_cbk, -	[GF_FOP_ACCESS]         =  client_access_cbk, -	[GF_FOP_CREATE]         =  client_create_cbk, -	[GF_FOP_FTRUNCATE]      =  client_ftruncate_cbk, -	[GF_FOP_FSTAT]          =  client_fstat_cbk, -	[GF_FOP_LK]             =  client_lk_common_cbk, -	[GF_FOP_LOOKUP]         =  client_lookup_cbk, -	[GF_FOP_SETDENTS]       =  client_setdents_cbk, -	[GF_FOP_READDIR]        =  client_readdir_cbk, -	[GF_FOP_READDIRP]       =  client_readdirp_cbk, -	[GF_FOP_INODELK]        =  client_inodelk_cbk, -	[GF_FOP_FINODELK]       =  client_finodelk_cbk, -	[GF_FOP_ENTRYLK]        =  client_entrylk_cbk, -	[GF_FOP_FENTRYLK]       =  client_fentrylk_cbk, -	[GF_FOP_CHECKSUM]       =  client_checksum_cbk, -	[GF_FOP_RCHECKSUM]      =  client_rchecksum_cbk, -	[GF_FOP_XATTROP]        =  client_xattrop_cbk, -	[GF_FOP_FXATTROP]       =  client_fxattrop_cbk, +        [GF_FOP_STAT]           =  client_stat_cbk, +        [GF_FOP_READLINK]       =  client_readlink_cbk, +        [GF_FOP_MKNOD]          =  client_mknod_cbk, +        [GF_FOP_MKDIR]          =  client_mkdir_cbk, +        [GF_FOP_UNLINK]         =  client_unlink_cbk, +        [GF_FOP_RMDIR]          =  client_rmdir_cbk, +        [GF_FOP_SYMLINK]        =  client_symlink_cbk, +        [GF_FOP_RENAME]         =  client_rename_cbk, +        [GF_FOP_LINK]           =  client_link_cbk, +        [GF_FOP_TRUNCATE]       =  client_truncate_cbk, +        [GF_FOP_OPEN]           =  client_open_cbk, +        [GF_FOP_READ]           =  client_readv_cbk, +        [GF_FOP_WRITE]          =  client_write_cbk, +        [GF_FOP_STATFS]         =  client_statfs_cbk, +        [GF_FOP_FLUSH]          =  client_flush_cbk, +        [GF_FOP_FSYNC]          =  client_fsync_cbk, +        [GF_FOP_SETXATTR]       =  client_setxattr_cbk, +        [GF_FOP_GETXATTR]       =  client_getxattr_cbk, +        [GF_FOP_REMOVEXATTR]    =  client_removexattr_cbk, +        [GF_FOP_OPENDIR]        =  client_opendir_cbk, +        [GF_FOP_GETDENTS]       =  client_getdents_cbk, +        [GF_FOP_FSYNCDIR]       =  client_fsyncdir_cbk, +        [GF_FOP_ACCESS]         =  client_access_cbk, +        [GF_FOP_CREATE]         =  client_create_cbk, +        [GF_FOP_FTRUNCATE]      =  client_ftruncate_cbk, +        [GF_FOP_FSTAT]          =  client_fstat_cbk, +        [GF_FOP_LK]             =  client_lk_common_cbk, +        [GF_FOP_LOOKUP]         =  client_lookup_cbk, +        [GF_FOP_SETDENTS]       =  client_setdents_cbk, +        [GF_FOP_READDIR]        =  client_readdir_cbk, +        [GF_FOP_READDIRP]       =  client_readdirp_cbk, +        [GF_FOP_INODELK]        =  client_inodelk_cbk, +        [GF_FOP_FINODELK]       =  client_finodelk_cbk, +        [GF_FOP_ENTRYLK]        =  client_entrylk_cbk, +        [GF_FOP_FENTRYLK]       =  client_fentrylk_cbk, +        [GF_FOP_CHECKSUM]       =  client_checksum_cbk, +        [GF_FOP_RCHECKSUM]      =  client_rchecksum_cbk, +        [GF_FOP_XATTROP]        =  client_xattrop_cbk, +        [GF_FOP_FXATTROP]       =  client_fxattrop_cbk,          [GF_FOP_SETATTR]        =  client_setattr_cbk,          [GF_FOP_FSETATTR]        =  client_fsetattr_cbk,  };  static gf_op_t gf_mops[] = { -	[GF_MOP_SETVOLUME]        =  client_setvolume_cbk, -	[GF_MOP_GETVOLUME]        =  client_enosys_cbk, -	[GF_MOP_STATS]            =  client_stats_cbk, -	[GF_MOP_SETSPEC]          =  client_setspec_cbk, -	[GF_MOP_GETSPEC]          =  client_getspec_cbk, -	[GF_MOP_PING]             =  client_ping_cbk, +        [GF_MOP_SETVOLUME]        =  client_setvolume_cbk, +        [GF_MOP_GETVOLUME]        =  client_enosys_cbk, +        [GF_MOP_STATS]            =  client_stats_cbk, +        [GF_MOP_SETSPEC]          =  client_setspec_cbk, +        [GF_MOP_GETSPEC]          =  client_getspec_cbk, +        [GF_MOP_PING]             =  client_ping_cbk,  };  static gf_op_t gf_cbks[] = { -	[GF_CBK_FORGET]           = client_forget_cbk, -	[GF_CBK_RELEASE]          = client_release_cbk, -	[GF_CBK_RELEASEDIR]       = client_releasedir_cbk +        [GF_CBK_FORGET]           = client_forget_cbk, +        [GF_CBK_RELEASE]          = client_release_cbk, +        [GF_CBK_RELEASEDIR]       = client_releasedir_cbk  };  /* @@ -5935,65 +5935,65 @@ int  protocol_client_interpret (xlator_t *this, transport_t *trans,                             char *hdr_p, size_t hdrlen, struct iobuf *iobuf)  { -	int                  ret = -1; -	call_frame_t        *frame = NULL; -	gf_hdr_common_t     *hdr = NULL; -	uint64_t             callid = 0; -	int                  type = -1; -	int                  op = -1; -	client_connection_t *conn = NULL; - -	conn  = trans->xl_private; - -	hdr  = (gf_hdr_common_t *)hdr_p; - -	type   = ntoh32 (hdr->type); -	op     = ntoh32 (hdr->op); -	callid = ntoh64 (hdr->callid); - -	frame  = lookup_frame (trans, op, type, callid); -	if (frame == NULL) { -		gf_log (this->name, GF_LOG_WARNING, -			"no frame for callid=%"PRId64" type=%d op=%d", -			callid, type, op); -		return 0; -	} - -	switch (type) { -	case GF_OP_TYPE_FOP_REPLY: -		if ((op > GF_FOP_MAXVALUE) ||  -		    (op < 0)) { -			gf_log (trans->xl->name, GF_LOG_WARNING, -				"invalid fop '%d'", op); -		} else { -			ret = gf_fops[op] (frame, hdr, hdrlen, iobuf); -		} -		break; -	case GF_OP_TYPE_MOP_REPLY: -		if ((op > GF_MOP_MAXVALUE) ||  -		    (op < 0)) { -			gf_log (trans->xl->name, GF_LOG_WARNING, -				"invalid fop '%d'", op); -		} else { -			ret = gf_mops[op] (frame, hdr, hdrlen, iobuf); -		} -		break; -	case GF_OP_TYPE_CBK_REPLY: -		if ((op > GF_CBK_MAXVALUE) ||  -		    (op < 0)) { -			gf_log (trans->xl->name, GF_LOG_WARNING, -				"invalid cbk '%d'", op); -		} else { -			ret = gf_cbks[op] (frame, hdr, hdrlen, iobuf); -		} -		break; -	default: -		gf_log (trans->xl->name, GF_LOG_DEBUG, -			"invalid packet type: %d", type); -		break; -	} - -	return ret; +        int                  ret = -1; +        call_frame_t        *frame = NULL; +        gf_hdr_common_t     *hdr = NULL; +        uint64_t             callid = 0; +        int                  type = -1; +        int                  op = -1; +        client_connection_t *conn = NULL; + +        conn  = trans->xl_private; + +        hdr  = (gf_hdr_common_t *)hdr_p; + +        type   = ntoh32 (hdr->type); +        op     = ntoh32 (hdr->op); +        callid = ntoh64 (hdr->callid); + +        frame  = lookup_frame (trans, op, type, callid); +        if (frame == NULL) { +                gf_log (this->name, GF_LOG_WARNING, +                        "no frame for callid=%"PRId64" type=%d op=%d", +                        callid, type, op); +                return 0; +        } + +        switch (type) { +        case GF_OP_TYPE_FOP_REPLY: +                if ((op > GF_FOP_MAXVALUE) || +                    (op < 0)) { +                        gf_log (trans->xl->name, GF_LOG_WARNING, +                                "invalid fop '%d'", op); +                } else { +                        ret = gf_fops[op] (frame, hdr, hdrlen, iobuf); +                } +                break; +        case GF_OP_TYPE_MOP_REPLY: +                if ((op > GF_MOP_MAXVALUE) || +                    (op < 0)) { +                        gf_log (trans->xl->name, GF_LOG_WARNING, +                                "invalid fop '%d'", op); +                } else { +                        ret = gf_mops[op] (frame, hdr, hdrlen, iobuf); +                } +                break; +        case GF_OP_TYPE_CBK_REPLY: +                if ((op > GF_CBK_MAXVALUE) || +                    (op < 0)) { +                        gf_log (trans->xl->name, GF_LOG_WARNING, +                                "invalid cbk '%d'", op); +                } else { +                        ret = gf_cbks[op] (frame, hdr, hdrlen, iobuf); +                } +                break; +        default: +                gf_log (trans->xl->name, GF_LOG_DEBUG, +                        "invalid packet type: %d", type); +                break; +        } + +        return ret;  }  /* @@ -6005,122 +6005,122 @@ protocol_client_interpret (xlator_t *this, transport_t *trans,  int  init (xlator_t *this)  { -	transport_t               *trans = NULL; -	client_conf_t             *conf = NULL; -	client_connection_t       *conn = NULL; -	int32_t                    frame_timeout = 0; -	int32_t                    ping_timeout = 0; -	data_t                    *remote_subvolume = NULL; -	int32_t                    ret = -1; -	int                        i = 0; - -	if (this->children) { -		gf_log (this->name, GF_LOG_ERROR, -			"FATAL: client protocol translator cannot have any " -			"subvolumes"); -		goto out; -	} -	 -	if (!this->parents) { -		gf_log (this->name, GF_LOG_WARNING, -			"Volume is dangling. "); -	} - -	remote_subvolume = dict_get (this->options, "remote-subvolume"); -	if (remote_subvolume == NULL) { -		gf_log (this->name, GF_LOG_ERROR, -			"Option 'remote-subvolume' is not specified."); -		goto out; -	} - -	ret = dict_get_int32 (this->options, "frame-timeout",  -			      &frame_timeout); -	if (ret >= 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"setting frame-timeout to %d", frame_timeout); -	} else { -		gf_log (this->name, GF_LOG_DEBUG, -			"defaulting frame-timeout to 30mins"); -		frame_timeout = 1800; -	} -	 -	ret = dict_get_int32 (this->options, "ping-timeout",  -			      &ping_timeout); -	if (ret >= 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"setting ping-timeout to %d", ping_timeout); -	} else { -		gf_log (this->name, GF_LOG_DEBUG, -			"defaulting ping-timeout to 10"); -		ping_timeout = 10; -	} -	 -	conf = CALLOC (1, sizeof (client_conf_t)); - -	pthread_mutex_init (&conf->mutex, NULL); -	INIT_LIST_HEAD (&conf->saved_fds); - -	this->private = conf; - -	for (i = 0; i < CHANNEL_MAX; i++) { +        transport_t               *trans = NULL; +        client_conf_t             *conf = NULL; +        client_connection_t       *conn = NULL; +        int32_t                    frame_timeout = 0; +        int32_t                    ping_timeout = 0; +        data_t                    *remote_subvolume = NULL; +        int32_t                    ret = -1; +        int                        i = 0; + +        if (this->children) { +                gf_log (this->name, GF_LOG_ERROR, +                        "FATAL: client protocol translator cannot have any " +                        "subvolumes"); +                goto out; +        } + +        if (!this->parents) { +                gf_log (this->name, GF_LOG_WARNING, +                        "Volume is dangling. "); +        } + +        remote_subvolume = dict_get (this->options, "remote-subvolume"); +        if (remote_subvolume == NULL) { +                gf_log (this->name, GF_LOG_ERROR, +                        "Option 'remote-subvolume' is not specified."); +                goto out; +        } + +        ret = dict_get_int32 (this->options, "frame-timeout", +                              &frame_timeout); +        if (ret >= 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "setting frame-timeout to %d", frame_timeout); +        } else { +                gf_log (this->name, GF_LOG_DEBUG, +                        "defaulting frame-timeout to 30mins"); +                frame_timeout = 1800; +        } + +        ret = dict_get_int32 (this->options, "ping-timeout", +                              &ping_timeout); +        if (ret >= 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "setting ping-timeout to %d", ping_timeout); +        } else { +                gf_log (this->name, GF_LOG_DEBUG, +                        "defaulting ping-timeout to 10"); +                ping_timeout = 10; +        } + +        conf = CALLOC (1, sizeof (client_conf_t)); + +        pthread_mutex_init (&conf->mutex, NULL); +        INIT_LIST_HEAD (&conf->saved_fds); + +        this->private = conf; + +        for (i = 0; i < CHANNEL_MAX; i++) {                  if (CHANNEL_LOWLAT == i) {                          dict_set (this->options, "transport.socket.lowlat",                                    data_from_dynstr (strdup ("true")));                  } -		trans = transport_load (this->options, this); -		if (trans == NULL) { -			gf_log (this->name, GF_LOG_DEBUG,  -				"Failed to load transport"); -			ret = -1; -			goto out; -		} +                trans = transport_load (this->options, this); +                if (trans == NULL) { +                        gf_log (this->name, GF_LOG_DEBUG, +                                "Failed to load transport"); +                        ret = -1; +                        goto out; +                } -		conn = CALLOC (1, sizeof (*conn)); +                conn = CALLOC (1, sizeof (*conn)); -		conn->saved_frames = saved_frames_new (); +                conn->saved_frames = saved_frames_new (); -		conn->callid = 1; +                conn->callid = 1; -		conn->frame_timeout = frame_timeout; -		conn->ping_timeout = ping_timeout; +                conn->frame_timeout = frame_timeout; +                conn->ping_timeout = ping_timeout; -		pthread_mutex_init (&conn->lock, NULL); +                pthread_mutex_init (&conn->lock, NULL); -		trans->xl_private = conn; -		conf->transport[i] = transport_ref (trans); -	} +                trans->xl_private = conn; +                conf->transport[i] = transport_ref (trans); +        }  #ifndef GF_DARWIN_HOST_OS -	{ -		struct rlimit lim; - -		lim.rlim_cur = 1048576; -		lim.rlim_max = 1048576; -		 -		ret = setrlimit (RLIMIT_NOFILE, &lim); -		if (ret == -1) { -			gf_log (this->name, GF_LOG_WARNING, -				"WARNING: Failed to set 'ulimit -n 1M': %s", -				strerror(errno)); -			lim.rlim_cur = 65536; -			lim.rlim_max = 65536; -			 -			ret = setrlimit (RLIMIT_NOFILE, &lim); -			if (ret == -1) { -				gf_log (this->name, GF_LOG_DEBUG, -					"Failed to set max open fd to 64k: %s", -					strerror(errno)); -			} else { -				gf_log (this->name, GF_LOG_DEBUG, -					"max open fd set to 64k"); -			} - -		} -	} +        { +                struct rlimit lim; + +                lim.rlim_cur = 1048576; +                lim.rlim_max = 1048576; + +                ret = setrlimit (RLIMIT_NOFILE, &lim); +                if (ret == -1) { +                        gf_log (this->name, GF_LOG_WARNING, +                                "WARNING: Failed to set 'ulimit -n 1M': %s", +                                strerror(errno)); +                        lim.rlim_cur = 65536; +                        lim.rlim_max = 65536; + +                        ret = setrlimit (RLIMIT_NOFILE, &lim); +                        if (ret == -1) { +                                gf_log (this->name, GF_LOG_DEBUG, +                                        "Failed to set max open fd to 64k: %s", +                                        strerror(errno)); +                        } else { +                                gf_log (this->name, GF_LOG_DEBUG, +                                        "max open fd set to 64k"); +                        } + +                } +        }  #endif -	ret = 0; +        ret = 0;  out: -	return ret; +        return ret;  }  /* @@ -6131,147 +6131,147 @@ out:  void  fini (xlator_t *this)  { -	/* TODO: Check if its enough.. how to call transport's fini () */ -	client_conf_t *conf = NULL; +        /* TODO: Check if its enough.. how to call transport's fini () */ +        client_conf_t *conf = NULL; -	conf = this->private; -	this->private = NULL; +        conf = this->private; +        this->private = NULL; -	if (conf) { -		FREE (conf); -	} -	return; +        if (conf) { +                FREE (conf); +        } +        return;  }  int  protocol_client_handshake (xlator_t *this, transport_t *trans)  { -	gf_hdr_common_t        *hdr = NULL; -	gf_mop_setvolume_req_t *req = NULL; -	dict_t                 *options = NULL; -	int32_t                 ret = -1; -	int                     hdrlen = 0; -	int                     dict_len = 0; -	call_frame_t           *fr = NULL; -	char                   *process_uuid_xl; - -	options = this->options; -	ret = dict_set_str (options, "protocol-version", GF_PROTOCOL_VERSION); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to set protocol version(%s) in handshake msg", -			GF_PROTOCOL_VERSION); -	} - -	ret = asprintf (&process_uuid_xl, "%s-%s", this->ctx->process_uuid, +        gf_hdr_common_t        *hdr = NULL; +        gf_mop_setvolume_req_t *req = NULL; +        dict_t                 *options = NULL; +        int32_t                 ret = -1; +        int                     hdrlen = 0; +        int                     dict_len = 0; +        call_frame_t           *fr = NULL; +        char                   *process_uuid_xl; + +        options = this->options; +        ret = dict_set_str (options, "protocol-version", GF_PROTOCOL_VERSION); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to set protocol version(%s) in handshake msg", +                        GF_PROTOCOL_VERSION); +        } + +        ret = asprintf (&process_uuid_xl, "%s-%s", this->ctx->process_uuid,                          this->name);          if (-1 == ret) {                  gf_log (this->name, GF_LOG_ERROR,                          "asprintf failed while setting process_uuid");                  goto fail;          } -	ret = dict_set_dynstr (options, "process-uuid", -			       process_uuid_xl); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to set process-uuid(%s) in handshake msg", -			process_uuid_xl); -	} +        ret = dict_set_dynstr (options, "process-uuid", +                               process_uuid_xl); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to set process-uuid(%s) in handshake msg", +                        process_uuid_xl); +        }          if (this->ctx->cmd_args.volfile_server) {                  if (this->ctx->cmd_args.volfile_id) -                        ret = dict_set_str (options, "volfile-key",  +                        ret = dict_set_str (options, "volfile-key",                                              this->ctx->cmd_args.volfile_id); -                ret = dict_set_uint32 (options, "volfile-checksum",  +                ret = dict_set_uint32 (options, "volfile-checksum",                                         this->ctx->volfile_checksum);          } -	dict_len = dict_serialized_length (options); -	if (dict_len < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to get serialized length of dict(%p)", -			options); -		ret = dict_len; -		goto fail; -	} - -	hdrlen = gf_hdr_len (req, dict_len); -	hdr    = gf_hdr_new (req, dict_len); -	GF_VALIDATE_OR_GOTO(this->name, hdr, fail); - -	req    = gf_param (hdr); - -	ret = dict_serialize (options, req->buf); -	if (ret < 0) { -		gf_log (this->name, GF_LOG_DEBUG, -			"failed to serialize dictionary(%p)", -			options); -		goto fail; -	} - -	req->dict_len = hton32 (dict_len); -	fr  = create_frame (this, this->ctx->pool); -	GF_VALIDATE_OR_GOTO(this->name, fr, fail); - -	fr->local = trans; -	ret = protocol_client_xfer (fr, this, trans, -				    GF_OP_TYPE_MOP_REQUEST, GF_MOP_SETVOLUME, -				    hdr, hdrlen, NULL, 0, NULL); -	return ret; +        dict_len = dict_serialized_length (options); +        if (dict_len < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to get serialized length of dict(%p)", +                        options); +                ret = dict_len; +                goto fail; +        } + +        hdrlen = gf_hdr_len (req, dict_len); +        hdr    = gf_hdr_new (req, dict_len); +        GF_VALIDATE_OR_GOTO (this->name, hdr, fail); + +        req    = gf_param (hdr); + +        ret = dict_serialize (options, req->buf); +        if (ret < 0) { +                gf_log (this->name, GF_LOG_DEBUG, +                        "failed to serialize dictionary(%p)", +                        options); +                goto fail; +        } + +        req->dict_len = hton32 (dict_len); +        fr  = create_frame (this, this->ctx->pool); +        GF_VALIDATE_OR_GOTO (this->name, fr, fail); + +        fr->local = trans; +        ret = protocol_client_xfer (fr, this, trans, +                                    GF_OP_TYPE_MOP_REQUEST, GF_MOP_SETVOLUME, +                                    hdr, hdrlen, NULL, 0, NULL); +        return ret;  fail: -	if (hdr) -		free (hdr); -	return ret; +        if (hdr) +                free (hdr); +        return ret;  }  int  protocol_client_pollout (xlator_t *this, transport_t *trans)  { -	client_conf_t *conf = NULL; +        client_conf_t *conf = NULL; -	conf = trans->xl->private; +        conf = trans->xl->private; -	pthread_mutex_lock (&conf->mutex); -	{ -		gettimeofday (&conf->last_sent, NULL); -	} -	pthread_mutex_unlock (&conf->mutex); +        pthread_mutex_lock (&conf->mutex); +        { +                gettimeofday (&conf->last_sent, NULL); +        } +        pthread_mutex_unlock (&conf->mutex); -	return 0; +        return 0;  }  int  protocol_client_pollin (xlator_t *this, transport_t *trans)  { -	client_conf_t *conf = NULL; -	int            ret = -1; +        client_conf_t *conf = NULL; +        int            ret = -1;          struct iobuf  *iobuf = NULL; -	char          *hdr = NULL; -	size_t         hdrlen = 0; +        char          *hdr = NULL; +        size_t         hdrlen = 0; -	conf = trans->xl->private; +        conf = trans->xl->private; -	pthread_mutex_lock (&conf->mutex); -	{ -		gettimeofday (&conf->last_received, NULL); -	} -	pthread_mutex_unlock (&conf->mutex); +        pthread_mutex_lock (&conf->mutex); +        { +                gettimeofday (&conf->last_received, NULL); +        } +        pthread_mutex_unlock (&conf->mutex); -	ret = transport_receive (trans, &hdr, &hdrlen, &iobuf); +        ret = transport_receive (trans, &hdr, &hdrlen, &iobuf); -	if (ret == 0) -	{ -		ret = protocol_client_interpret (this, trans, hdr, hdrlen, -						 iobuf); -	} +        if (ret == 0) +        { +                ret = protocol_client_interpret (this, trans, hdr, hdrlen, +                                                 iobuf); +        } -	/* TODO: use mem-pool */ -	FREE (hdr); +        /* TODO: use mem-pool */ +        FREE (hdr); -	return ret; +        return ret;  }  int @@ -6288,21 +6288,21 @@ client_priv_dump (xlator_t *this)                  return -1;          conf = this->private; -         if (!conf) { -		gf_log (this->name, GF_LOG_WARNING, +        if (!conf) { +                gf_log (this->name, GF_LOG_WARNING,                          "conf null in xlator");                  return -1; -         } +        } -         ret = pthread_mutex_trylock(&conf->mutex); -         if (ret) { +        ret = pthread_mutex_trylock(&conf->mutex); +        if (ret) {                  gf_log("", GF_LOG_WARNING, "Unable to lock client %s" -                " errno: %d", this->name, errno); +                       " errno: %d", this->name, errno);                  return -1;          }          gf_proc_dump_build_key(key_prefix, "xlator.protocol.client", -                                  "%s.priv", this->name); +                               "%s.priv", this->name);          gf_proc_dump_add_section(key_prefix); @@ -6328,7 +6328,7 @@ client_priv_dump (xlator_t *this)  int32_t  client_inodectx_dump (xlator_t *this, inode_t *inode)  { -	ino_t   par = 0; +        ino_t   par = 0;          int     ret = -1;          char    key[GF_DUMP_MAX_BUF_LEN]; @@ -6338,14 +6338,14 @@ client_inodectx_dump (xlator_t *this, inode_t *inode)          if (!this)                  return -1; -	ret = inode_ctx_get (inode, this, &par); +        ret = inode_ctx_get (inode, this, &par);          if (ret != 0)                  return ret;          gf_proc_dump_build_key(key, "xlator.protocol.client",                                 "%s.inode.%ld.par", -                                this->name,inode->ino); +                               this->name,inode->ino);          gf_proc_dump_write(key, "%ld", par);          return 0; @@ -6363,38 +6363,38 @@ int  notify (xlator_t *this, int32_t event, void *data, ...)  {          int                  i          = 0; -	int                  ret        = -1; +        int                  ret        = -1;          int                  child_down = 1;          int                  was_not_down = 0; -	transport_t         *trans      = NULL; -	client_connection_t *conn       = NULL; +        transport_t         *trans      = NULL; +        client_connection_t *conn       = NULL;          client_conf_t       *conf       = NULL;          xlator_list_t       *parent = NULL;          conf = this->private; -	trans = data; - -	switch (event) { -	case GF_EVENT_POLLOUT: -	{ -		ret = protocol_client_pollout (this, trans); - -		break; -	} -	case GF_EVENT_POLLIN: -	{ -		ret = protocol_client_pollin (this, trans); - -		break; -	} -	/* no break for ret check to happen below */ -	case GF_EVENT_POLLERR: -	{ -		ret = -1; -		protocol_client_cleanup (trans); +        trans = data; + +        switch (event) { +        case GF_EVENT_POLLOUT: +        { +                ret = protocol_client_pollout (this, trans); + +                break; +        } +        case GF_EVENT_POLLIN: +        { +                ret = protocol_client_pollin (this, trans); + +                break; +        } +        /* no break for ret check to happen below */ +        case GF_EVENT_POLLERR: +        { +                ret = -1; +                protocol_client_cleanup (trans);                  if (conf->connecting == 0) { -                        /* Let the connection/re-connection happen in  +                        /* Let the connection/re-connection happen in                           * background, for now, don't hang here,                           * tell the parents that i am all ok..                           */ @@ -6442,125 +6442,125 @@ notify (xlator_t *this, int32_t event, void *data, ...)                                  parent = parent->next;                          }                  } -	} -	break; - -	case GF_EVENT_PARENT_UP: -	{ -		client_conf_t *conf = NULL; -		int            i = 0; -		transport_t   *trans = NULL; - -		conf = this->private; -		for (i = 0; i < CHANNEL_MAX; i++) { -			trans = conf->transport[i]; -			if (!trans) { -				gf_log (this->name, GF_LOG_DEBUG, -					"transport init failed"); -				return -1; -			} - -			conn = trans->xl_private; - -			gf_log (this->name, GF_LOG_DEBUG, -				"got GF_EVENT_PARENT_UP, attempting connect " -				"on transport"); - -			client_protocol_reconnect (trans); -		} -	} -	break; - -	case GF_EVENT_CHILD_UP: -	{ -		char *handshake = NULL; - -		ret = dict_get_str (this->options, "disable-handshake",  -				    &handshake); -		gf_log (this->name, GF_LOG_DEBUG,  -			"got GF_EVENT_CHILD_UP"); -		if ((ret < 0) || -		    (strcasecmp (handshake, "on"))) { -			ret = protocol_client_handshake (this, trans); -		} else { -			conn = trans->xl_private; -			conn->connected = 1; -			ret = default_notify (this, event, trans); -		} - -		if (ret) -			transport_disconnect (trans); - -	} -	break; - -	default: -		gf_log (this->name, GF_LOG_DEBUG, -			"got %d, calling default_notify ()", event); - -		default_notify (this, event, data); -		break; -	} - -	return ret; +        } +        break; + +        case GF_EVENT_PARENT_UP: +        { +                client_conf_t *conf = NULL; +                int            i = 0; +                transport_t   *trans = NULL; + +                conf = this->private; +                for (i = 0; i < CHANNEL_MAX; i++) { +                        trans = conf->transport[i]; +                        if (!trans) { +                                gf_log (this->name, GF_LOG_DEBUG, +                                        "transport init failed"); +                                return -1; +                        } + +                        conn = trans->xl_private; + +                        gf_log (this->name, GF_LOG_DEBUG, +                                "got GF_EVENT_PARENT_UP, attempting connect " +                                "on transport"); + +                        client_protocol_reconnect (trans); +                } +        } +        break; + +        case GF_EVENT_CHILD_UP: +        { +                char *handshake = NULL; + +                ret = dict_get_str (this->options, "disable-handshake", +                                    &handshake); +                gf_log (this->name, GF_LOG_DEBUG, +                        "got GF_EVENT_CHILD_UP"); +                if ((ret < 0) || +                    (strcasecmp (handshake, "on"))) { +                        ret = protocol_client_handshake (this, trans); +                } else { +                        conn = trans->xl_private; +                        conn->connected = 1; +                        ret = default_notify (this, event, trans); +                } + +                if (ret) +                        transport_disconnect (trans); + +        } +        break; + +        default: +                gf_log (this->name, GF_LOG_DEBUG, +                        "got %d, calling default_notify ()", event); + +                default_notify (this, event, data); +                break; +        } + +        return ret;  }  struct xlator_fops fops = { -	.stat        = client_stat, -	.readlink    = client_readlink, -	.mknod       = client_mknod, -	.mkdir       = client_mkdir, -	.unlink      = client_unlink, -	.rmdir       = client_rmdir, -	.symlink     = client_symlink, -	.rename      = client_rename, -	.link        = client_link, -	.truncate    = client_truncate, -	.open        = client_open, -	.readv       = client_readv, -	.writev      = client_writev, -	.statfs      = client_statfs, -	.flush       = client_flush, -	.fsync       = client_fsync, -	.setxattr    = client_setxattr, -	.getxattr    = client_getxattr, +        .stat        = client_stat, +        .readlink    = client_readlink, +        .mknod       = client_mknod, +        .mkdir       = client_mkdir, +        .unlink      = client_unlink, +        .rmdir       = client_rmdir, +        .symlink     = client_symlink, +        .rename      = client_rename, +        .link        = client_link, +        .truncate    = client_truncate, +        .open        = client_open, +        .readv       = client_readv, +        .writev      = client_writev, +        .statfs      = client_statfs, +        .flush       = client_flush, +        .fsync       = client_fsync, +        .setxattr    = client_setxattr, +        .getxattr    = client_getxattr,          .fsetxattr   = client_fsetxattr,          .fgetxattr   = client_fgetxattr, -	.removexattr = client_removexattr, -	.opendir     = client_opendir, -	.readdir     = client_readdir, -	.readdirp    = client_readdirp, -	.fsyncdir    = client_fsyncdir, -	.access      = client_access, -	.ftruncate   = client_ftruncate, -	.fstat       = client_fstat, -	.create      = client_create, -	.lk          = client_lk, -	.inodelk     = client_inodelk, -	.finodelk    = client_finodelk, -	.entrylk     = client_entrylk, -	.fentrylk    = client_fentrylk, -	.lookup      = client_lookup, -	.setdents    = client_setdents, -	.getdents    = client_getdents, -	.checksum    = client_checksum, -	.rchecksum   = client_rchecksum, -	.xattrop     = client_xattrop, -	.fxattrop    = client_fxattrop, +        .removexattr = client_removexattr, +        .opendir     = client_opendir, +        .readdir     = client_readdir, +        .readdirp    = client_readdirp, +        .fsyncdir    = client_fsyncdir, +        .access      = client_access, +        .ftruncate   = client_ftruncate, +        .fstat       = client_fstat, +        .create      = client_create, +        .lk          = client_lk, +        .inodelk     = client_inodelk, +        .finodelk    = client_finodelk, +        .entrylk     = client_entrylk, +        .fentrylk    = client_fentrylk, +        .lookup      = client_lookup, +        .setdents    = client_setdents, +        .getdents    = client_getdents, +        .checksum    = client_checksum, +        .rchecksum   = client_rchecksum, +        .xattrop     = client_xattrop, +        .fxattrop    = client_fxattrop,          .setattr     = client_setattr,          .fsetattr    = client_fsetattr,  };  struct xlator_mops mops = { -	.stats     = client_stats, -	.getspec   = client_getspec, +        .stats     = client_stats, +        .getspec   = client_getspec,          .log       = client_log,  };  struct xlator_cbks cbks = { -	.release    = client_release, -	.releasedir = client_releasedir +        .release    = client_release, +        .releasedir = client_releasedir  }; @@ -6570,32 +6570,32 @@ struct xlator_dumpops dumpops = {  };  struct volume_options options[] = { - 	{ .key   = {"username"},  -	  .type  = GF_OPTION_TYPE_ANY  -	}, - 	{ .key   = {"password"},  -	  .type  = GF_OPTION_TYPE_ANY  -	}, - 	{ .key   = {"transport-type"},  -	  .value = {"tcp", "socket", "ib-verbs", "unix", "ib-sdp",  -		    "tcp/client", "ib-verbs/client"}, -	  .type  = GF_OPTION_TYPE_STR  -	}, - 	{ .key   = {"remote-host"},  -	  .type  = GF_OPTION_TYPE_INTERNET_ADDRESS  -	}, - 	{ .key   = {"remote-subvolume"},  -	  .type  = GF_OPTION_TYPE_ANY  -	}, - 	{ .key   = {"frame-timeout"},  -	  .type  = GF_OPTION_TYPE_TIME,  -	  .min   = 5,  -	  .max   = 1013,  -	},  -	{ .key   = {"ping-timeout"}, -	  .type  = GF_OPTION_TYPE_TIME, -	  .min   = 5, -	  .max   = 1013, -	}, -	{ .key   = {NULL} }, +        { .key   = {"username"}, +          .type  = GF_OPTION_TYPE_ANY +        }, +        { .key   = {"password"}, +          .type  = GF_OPTION_TYPE_ANY +        }, +        { .key   = {"transport-type"}, +          .value = {"tcp", "socket", "ib-verbs", "unix", "ib-sdp", +                    "tcp/client", "ib-verbs/client"}, +          .type  = GF_OPTION_TYPE_STR +        }, +        { .key   = {"remote-host"}, +          .type  = GF_OPTION_TYPE_INTERNET_ADDRESS +        }, +        { .key   = {"remote-subvolume"}, +          .type  = GF_OPTION_TYPE_ANY +        }, +        { .key   = {"frame-timeout"}, +          .type  = GF_OPTION_TYPE_TIME, +          .min   = 5, +          .max   = 1013, +        }, +        { .key   = {"ping-timeout"}, +          .type  = GF_OPTION_TYPE_TIME, +          .min   = 5, +          .max   = 1013, +        }, +        { .key   = {NULL} },  }; diff --git a/xlators/protocol/client/src/client-protocol.h b/xlators/protocol/client/src/client-protocol.h index 2b35b60aabf..779711b1004 100644 --- a/xlators/protocol/client/src/client-protocol.h +++ b/xlators/protocol/client/src/client-protocol.h @@ -38,15 +38,15 @@  #define CLIENT_CONF(this) ((client_conf_t *)(this->private)) -#define RECEIVE_TIMEOUT(_cprivate,_current)         \ -		((_cprivate->last_received.tv_sec + \ -                  _cprivate->frame_timeout) <   \ -                  _current.tv_sec) +#define RECEIVE_TIMEOUT(_cprivate,_current)     \ +        ((_cprivate->last_received.tv_sec +     \ +          _cprivate->frame_timeout) <           \ +         _current.tv_sec) -#define SEND_TIMEOUT(_cprivate,_current)          \ -		((_cprivate->last_sent.tv_sec +   \ -                  _cprivate->frame_timeout) < \ -                  _current.tv_sec) +#define SEND_TIMEOUT(_cprivate,_current)        \ +        ((_cprivate->last_sent.tv_sec +         \ +          _cprivate->frame_timeout) <           \ +         _current.tv_sec)  enum {  	CHANNEL_BULK = 0, @@ -65,15 +65,15 @@ typedef struct client_connection client_connection_t;  #include "protocol.h"  typedef struct _client_fd_ctx { -        int remote_fd; -        struct list_head sfd_pos;      /*  Stores the reference to this -                                           fd's position in the saved_fds list. -                                           */ -        fd_t *fd;                       /* Reverse reference to the fd itself. +        int               remote_fd; +        struct list_head  sfd_pos;      /*  Stores the reference to this +                                            fd's position in the saved_fds list. +                                        */ +        fd_t              *fd;          /* Reverse reference to the fd itself.                                             This is needed to delete this fdctx                                             from the fd's context in                                             protocol_client_mark_fd_bad. -                                           */ +                                        */  } client_fd_ctx_t;  struct _client_conf { @@ -146,7 +146,7 @@ gf_string_to_stat(char *string, struct stat *stbuf)  		&mtime_nsec,  		&ctime,  		&ctime_nsec); -	 +  	stbuf->st_dev   = dev;  	stbuf->st_ino   = ino;  	stbuf->st_mode  = mode; @@ -157,11 +157,11 @@ gf_string_to_stat(char *string, struct stat *stbuf)  	stbuf->st_size  = size;  	stbuf->st_blksize = blksize;  	stbuf->st_blocks  = blocks; -	 +  	stbuf->st_atime = atime;  	stbuf->st_mtime = mtime;  	stbuf->st_ctime = ctime; -	 +  	ST_ATIM_NSEC_SET(stbuf, atime_nsec);  	ST_MTIM_NSEC_SET(stbuf, mtime_nsec);  	ST_CTIM_NSEC_SET(stbuf, ctime_nsec);  | 
