[PVFS2-CVS]
commit by walt in pvfs2/src/client/sysint: client-state-machine.c
client-state-machine.h module.mk.in
CVS commit program
cvs at parl.clemson.edu
Thu Jun 16 20:50:08 EDT 2005
Update of /projects/cvsroot/pvfs2/src/client/sysint
In directory parlweb:/tmp/cvs-serv7247/src/client/sysint
Modified Files:
Tag: WALT2
client-state-machine.c client-state-machine.h module.mk.in
Log Message:
updates for adding extended attributes
Index: client-state-machine.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/client-state-machine.c,v
diff -p -u -r1.69 -r1.69.10.1
--- client-state-machine.c 28 Mar 2005 19:01:18 -0000 1.69
+++ client-state-machine.c 16 Jun 2005 23:50:08 -0000 1.69.10.1
@@ -325,6 +325,22 @@ PVFS_error PINT_client_state_machine_pos
sm_p->current_state =
(pvfs2_client_mgmt_get_dirdata_handle_sm.state_machine + 1);
break;
+ case PVFS_SYS_GETEATTR:
+ sm_p->current_state =
+ (pvfs2_client_get_eattr_sm.state_machine + 1);
+ break;
+ case PVFS_SYS_GETEATTR_LIST:
+ sm_p->current_state =
+ (pvfs2_client_get_eattr_list_sm.state_machine + 1);
+ break;
+ case PVFS_SYS_SETEATTR:
+ sm_p->current_state =
+ (pvfs2_client_set_eattr_sm.state_machine + 1);
+ break;
+ case PVFS_SYS_SETEATTR_LIST:
+ sm_p->current_state =
+ (pvfs2_client_set_eattr_list_sm.state_machine + 1);
+ break;
case PVFS_SERVER_GET_CONFIG:
sm_p->current_state =
(pvfs2_server_get_config_sm.state_machine + 1);
@@ -850,6 +866,10 @@ char *PINT_client_get_name_str(int op_ty
{ PVFS_MGMT_CREATE_DIRENT, "PVFS_MGMT_CREATE_DIRENT" },
{ PVFS_MGMT_GET_DIRDATA_HANDLE,
"PVFS_MGMT_GET_DIRDATA_HANDLE" },
+ { PVFS_SYS_GETEATTR, "PVFS_SYS_GETEATTR" },
+ { PVFS_SYS_GETEATTR_LIST, "PVFS_SYS_GETEATTR_LIST" },
+ { PVFS_SYS_SETEATTR, "PVFS_SYS_SETEATTR" },
+ { PVFS_SYS_SETEATTR_LIST, "PVFS_SYS_SETEATTR_LIST" },
{ PVFS_SERVER_GET_CONFIG, "PVFS_SERVER_GET_CONFIG" },
{ PVFS_CLIENT_JOB_TIMER, "PVFS_CLIENT_JOB_TIMER" },
{ PVFS_DEV_UNEXPECTED, "PVFS_DEV_UNEXPECTED" },
Index: client-state-machine.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/client-state-machine.h,v
diff -p -u -r1.140 -r1.140.10.1
--- client-state-machine.h 28 Mar 2005 19:13:37 -0000 1.140
+++ client-state-machine.h 16 Jun 2005 23:50:08 -0000 1.140.10.1
@@ -357,6 +357,33 @@ struct PINT_server_get_config_sm
int persist_config_buffers;
};
+struct PINT_client_geteattr_sm
+{
+ PVFS_ds_keyval *key_p;
+ PVFS_sysresp_geteattr *resp_p;
+};
+
+struct PINT_client_geteattr_list_sm
+{
+ int32_t nkey;
+ PVFS_ds_keyval *key_array;
+ PVFS_size *size_array;
+ PVFS_sysresp_geteattr_list *resp_p;
+};
+
+struct PINT_client_seteattr_sm
+{
+ PVFS_ds_keyval *key_p;
+ PVFS_ds_keyval *val_p;
+};
+
+struct PINT_client_seteattr_list_sm
+{
+ int32_t nkey;
+ PVFS_ds_keyval *key_array;
+ PVFS_ds_keyval *val_array;
+};
+
typedef struct PINT_client_sm
{
/*
@@ -398,7 +425,9 @@ typedef struct PINT_client_sm
*/
PVFS_object_attr acache_attr;
- /* generic msgpair used with msgpair substate */
+ /* msgpair scratch space used within msgpairarray substatemachine */
+ /* if you have only a single msg pair you may point sm_p->msgarray */
+ /* at this. Otherwise leave it alone */
PINT_sm_msgpair_state msgpair;
/* msgpair array ptr used when operations can be performed
@@ -450,6 +479,10 @@ typedef struct PINT_client_sm
struct PINT_client_mgmt_create_dirent_sm mgmt_create_dirent;
struct PINT_client_mgmt_get_dirdata_handle_sm mgmt_get_dirdata_handle;
struct PINT_server_get_config_sm get_config;
+ struct PINT_client_geteattr_sm geteattr;
+ struct PINT_client_geteattr_list_sm geteattr_list;
+ struct PINT_client_seteattr_sm seteattr;
+ struct PINT_client_seteattr_list_sm seteattr_list;
} u;
} PINT_client_sm;
@@ -530,6 +563,10 @@ enum
PVFS_SYS_SETATTR = 10,
PVFS_SYS_LOOKUP = 11,
PVFS_SYS_RENAME = 12,
+ PVFS_SYS_GETEATTR = 13,
+ PVFS_SYS_GETEATTR_LIST = 14,
+ PVFS_SYS_SETEATTR = 15,
+ PVFS_SYS_SETEATTR_LIST = 16,
PVFS_MGMT_SETPARAM_LIST = 70,
PVFS_MGMT_NOOP = 71,
PVFS_MGMT_STATFS_LIST = 72,
@@ -643,6 +680,10 @@ extern struct PINT_state_machine_s pvfs2
extern struct PINT_state_machine_s pvfs2_client_mgmt_remove_dirent_sm;
extern struct PINT_state_machine_s pvfs2_client_mgmt_create_dirent_sm;
extern struct PINT_state_machine_s pvfs2_client_mgmt_get_dirdata_handle_sm;
+extern struct PINT_state_machine_s pvfs2_client_get_eattr_sm;
+extern struct PINT_state_machine_s pvfs2_client_get_eattr_list_sm;
+extern struct PINT_state_machine_s pvfs2_client_set_eattr_sm;
+extern struct PINT_state_machine_s pvfs2_client_set_eattr_list_sm;
/* nested state machines (helpers) */
Index: module.mk.in
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/module.mk.in,v
diff -p -u -r1.75 -r1.75.12.1
--- module.mk.in 24 Aug 2004 18:49:37 -0000 1.75
+++ module.mk.in 16 Jun 2005 23:50:08 -0000 1.75.12.1
@@ -17,11 +17,15 @@ CSRC := \
CLIENT_SMCGEN := \
$(DIR)/getattr-acache.c \
- $(DIR)/remove.c \
+ $(DIR)/remove.c \
$(DIR)/lookup-ncache.c \
$(DIR)/sys-getattr.c \
$(DIR)/sys-setattr.c \
- $(DIR)/sys-lookup.c \
+ $(DIR)/sys-get-eattr.c \
+ $(DIR)/sys-get-eattr-list.c \
+ $(DIR)/sys-set-eattr.c \
+ $(DIR)/sys-set-eattr-list.c \
+ $(DIR)/sys-lookup.c \
$(DIR)/sys-truncate.c \
$(DIR)/sys-io.c \
$(DIR)/sys-create.c \
More information about the PVFS2-CVS
mailing list