[Pvfs2-cvs] commit by slang in pvfs2/src/proto: PINT-le-bytefield.c
CVS commit program
cvs at parl.clemson.edu
Thu Apr 5 11:49:48 EDT 2007
Update of /projects/cvsroot/pvfs2/src/proto
In directory parlweb1:/tmp/cvs-serv2726/src/proto
Modified Files:
Tag: pvfs-2-6-branch
PINT-le-bytefield.c
Log Message:
merge recent fixes from HEAD
Index: PINT-le-bytefield.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/proto/PINT-le-bytefield.c,v
diff -p -u -r1.47 -r1.47.10.1
--- PINT-le-bytefield.c 17 Sep 2006 21:31:28 -0000 1.47
+++ PINT-le-bytefield.c 5 Apr 2007 15:49:48 -0000 1.47.10.1
@@ -434,7 +434,7 @@ static int lebf_encode_resp(
/* we stand a good chance of segfaulting if we try to encode the response
* after something bad happened reading data from disk. */
- if (resp->status != -PVFS_EIO)
+ if (resp->status == 0)
{
/* extra encoding rules for particular responses */
@@ -618,7 +618,7 @@ static int lebf_decode_resp(
decode_PVFS_server_resp(p, resp);
gossip_debug(GOSSIP_ENDECODE_DEBUG,"lebf_decode_resp\n");
- if (resp->status == -PVFS_EIO)
+ if (resp->status != 0)
goto out;
#define CASE(tag,var) \
@@ -795,102 +795,106 @@ static void lebf_decode_rel(struct PINT_
}
} else if (input_type == PINT_DECODE_RESP) {
struct PVFS_server_resp *resp = &msg->stub_dec.resp;
- switch (resp->op) {
- case PVFS_SERV_LOOKUP_PATH:
+ if(resp->status == 0)
+ {
+ switch (resp->op)
{
- struct PVFS_servresp_lookup_path *lookup =
- &resp->u.lookup_path;
- decode_free(lookup->handle_array);
- decode_free(lookup->attr_array);
- break;
- }
-
- case PVFS_SERV_READDIR:
- decode_free(resp->u.readdir.dirent_array);
- break;
-
- case PVFS_SERV_MGMT_PERF_MON:
- decode_free(resp->u.mgmt_perf_mon.perf_array);
- break;
-
- case PVFS_SERV_MGMT_ITERATE_HANDLES:
- decode_free(resp->u.mgmt_iterate_handles.handle_array);
- break;
-
- case PVFS_SERV_MGMT_DSPACE_INFO_LIST:
- decode_free(resp->u.mgmt_dspace_info_list.dspace_info_array);
- break;
-
- case PVFS_SERV_GETATTR:
- if (resp->u.getattr.attr.mask & PVFS_ATTR_META_DIST)
- decode_free(resp->u.getattr.attr.u.meta.dist);
- if (resp->u.getattr.attr.mask & PVFS_ATTR_META_DFILES)
- decode_free(resp->u.getattr.attr.u.meta.dfile_array);
- break;
-
- case PVFS_SERV_MGMT_EVENT_MON:
- decode_free(resp->u.mgmt_event_mon.event_array);
- break;
+ case PVFS_SERV_LOOKUP_PATH:
+ {
+ struct PVFS_servresp_lookup_path *lookup =
+ &resp->u.lookup_path;
+ decode_free(lookup->handle_array);
+ decode_free(lookup->attr_array);
+ break;
+ }
- case PVFS_SERV_GETEATTR:
- /* need a loop here? WBL */
- if (resp->u.geteattr.val)
- decode_free(resp->u.geteattr.val);
- break;
- case PVFS_SERV_LISTEATTR:
- if (resp->u.listeattr.key)
- decode_free(resp->u.listeattr.key);
- break;
- case PVFS_SERV_LISTATTR:
- {
- int i;
- if (resp->u.listattr.error)
- decode_free(resp->u.listattr.error);
- if (resp->u.listattr.attr) {
- for (i = 0; i < resp->u.listattr.nhandles; i++) {
- if (resp->u.listattr.attr[i].mask & PVFS_ATTR_META_DIST)
- decode_free(resp->u.listattr.attr[i].u.meta.dist);
- if (resp->u.listattr.attr[i].mask & PVFS_ATTR_META_DFILES)
- decode_free(resp->u.listattr.attr[i].u.meta.dfile_array);
+ case PVFS_SERV_READDIR:
+ decode_free(resp->u.readdir.dirent_array);
+ break;
+
+ case PVFS_SERV_MGMT_PERF_MON:
+ decode_free(resp->u.mgmt_perf_mon.perf_array);
+ break;
+
+ case PVFS_SERV_MGMT_ITERATE_HANDLES:
+ decode_free(resp->u.mgmt_iterate_handles.handle_array);
+ break;
+
+ case PVFS_SERV_MGMT_DSPACE_INFO_LIST:
+ decode_free(resp->u.mgmt_dspace_info_list.dspace_info_array);
+ break;
+
+ case PVFS_SERV_GETATTR:
+ if (resp->u.getattr.attr.mask & PVFS_ATTR_META_DIST)
+ decode_free(resp->u.getattr.attr.u.meta.dist);
+ if (resp->u.getattr.attr.mask & PVFS_ATTR_META_DFILES)
+ decode_free(resp->u.getattr.attr.u.meta.dfile_array);
+ break;
+
+ case PVFS_SERV_MGMT_EVENT_MON:
+ decode_free(resp->u.mgmt_event_mon.event_array);
+ break;
+
+ case PVFS_SERV_GETEATTR:
+ /* need a loop here? WBL */
+ if (resp->u.geteattr.val)
+ decode_free(resp->u.geteattr.val);
+ break;
+ case PVFS_SERV_LISTEATTR:
+ if (resp->u.listeattr.key)
+ decode_free(resp->u.listeattr.key);
+ break;
+ case PVFS_SERV_LISTATTR:
+ {
+ int i;
+ if (resp->u.listattr.error)
+ decode_free(resp->u.listattr.error);
+ if (resp->u.listattr.attr) {
+ for (i = 0; i < resp->u.listattr.nhandles; i++) {
+ if (resp->u.listattr.attr[i].mask & PVFS_ATTR_META_DIST)
+ decode_free(resp->u.listattr.attr[i].u.meta.dist);
+ if (resp->u.listattr.attr[i].mask & PVFS_ATTR_META_DFILES)
+ decode_free(resp->u.listattr.attr[i].u.meta.dfile_array);
+ }
+ decode_free(resp->u.listattr.attr);
+ }
+ break;
}
- decode_free(resp->u.listattr.attr);
- }
- break;
+ case PVFS_SERV_GETCONFIG:
+ case PVFS_SERV_CREATE:
+ case PVFS_SERV_REMOVE:
+ case PVFS_SERV_MGMT_REMOVE_OBJECT:
+ case PVFS_SERV_MGMT_REMOVE_DIRENT:
+ case PVFS_SERV_MGMT_GET_DIRDATA_HANDLE:
+ case PVFS_SERV_IO:
+ case PVFS_SERV_SMALL_IO:
+ case PVFS_SERV_SETATTR:
+ case PVFS_SERV_SETEATTR:
+ case PVFS_SERV_DELEATTR:
+ case PVFS_SERV_CRDIRENT:
+ case PVFS_SERV_RMDIRENT:
+ case PVFS_SERV_CHDIRENT:
+ case PVFS_SERV_TRUNCATE:
+ case PVFS_SERV_MKDIR:
+ case PVFS_SERV_FLUSH:
+ case PVFS_SERV_MGMT_SETPARAM:
+ case PVFS_SERV_MGMT_NOOP:
+ case PVFS_SERV_STATFS:
+ case PVFS_SERV_WRITE_COMPLETION:
+ case PVFS_SERV_PROTO_ERROR:
+ /* nothing to free */
+ break;
+
+ case PVFS_SERV_INVALID:
+ case PVFS_SERV_PERF_UPDATE:
+ case PVFS_SERV_JOB_TIMER:
+ case PVFS_SERV_NUM_OPS: /* sentinel */
+ gossip_lerr("%s: invalid response operation %d.\n",
+ __func__, resp->op);
+ break;
}
- case PVFS_SERV_GETCONFIG:
- case PVFS_SERV_CREATE:
- case PVFS_SERV_REMOVE:
- case PVFS_SERV_MGMT_REMOVE_OBJECT:
- case PVFS_SERV_MGMT_REMOVE_DIRENT:
- case PVFS_SERV_MGMT_GET_DIRDATA_HANDLE:
- case PVFS_SERV_IO:
- case PVFS_SERV_SMALL_IO:
- case PVFS_SERV_SETATTR:
- case PVFS_SERV_SETEATTR:
- case PVFS_SERV_DELEATTR:
- case PVFS_SERV_CRDIRENT:
- case PVFS_SERV_RMDIRENT:
- case PVFS_SERV_CHDIRENT:
- case PVFS_SERV_TRUNCATE:
- case PVFS_SERV_MKDIR:
- case PVFS_SERV_FLUSH:
- case PVFS_SERV_MGMT_SETPARAM:
- case PVFS_SERV_MGMT_NOOP:
- case PVFS_SERV_STATFS:
- case PVFS_SERV_WRITE_COMPLETION:
- case PVFS_SERV_PROTO_ERROR:
- /* nothing to free */
- break;
-
- case PVFS_SERV_INVALID:
- case PVFS_SERV_PERF_UPDATE:
- case PVFS_SERV_JOB_TIMER:
- case PVFS_SERV_NUM_OPS: /* sentinel */
- gossip_lerr("%s: invalid response operation %d.\n",
- __func__, resp->op);
- break;
- }
+ }
}
}
More information about the Pvfs2-cvs
mailing list