[Pvfs2-cvs] commit by slang in pvfs2/src/server: chdirent.sm
crdirent.sm create.sm del-eattr.sm event-mon.sm
final-response.sm flush.sm get-attr.sm get-config.sm
get-eattr.sm io.sm iterate-handles.sm job-timer.sm
list-attr.sm list-eattr.sm lookup.sm
mgmt-get-dirdata-handle.sm mgmt-remove-dirent.sm
mgmt-remove-object.sm mkdir.sm noop.sm perf-mon.sm
perf-update.sm prelude.sm proto-error.sm pvfs2-server.c
pvfs2-server.h readdir.sm remove.sm rmdirent.sm set-attr.sm
set-eattr.sm setparam.sm small-io.sm statfs.sm truncate.sm
unexpected.sm
CVS commit program
cvs at parl.clemson.edu
Wed Apr 11 18:51:03 EDT 2007
Update of /projects/cvsroot/pvfs2/src/server
In directory parlweb1:/tmp/cvs-serv5206/src/server
Modified Files:
Tag: WALT3
chdirent.sm crdirent.sm create.sm del-eattr.sm event-mon.sm
final-response.sm flush.sm get-attr.sm get-config.sm
get-eattr.sm io.sm iterate-handles.sm job-timer.sm
list-attr.sm list-eattr.sm lookup.sm
mgmt-get-dirdata-handle.sm mgmt-remove-dirent.sm
mgmt-remove-object.sm mkdir.sm noop.sm perf-mon.sm
perf-update.sm prelude.sm proto-error.sm pvfs2-server.c
pvfs2-server.h readdir.sm remove.sm rmdirent.sm set-attr.sm
set-eattr.sm setparam.sm small-io.sm statfs.sm truncate.sm
unexpected.sm
Log Message:
walt3 reverse merge from head includes merges of pw's sm changes (no state declarations), cleanup of state machine code, and other general merging/fixes.
Index: chdirent.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/chdirent.sm,v
diff -p -u -r1.11.4.7 -r1.11.4.8
--- chdirent.sm 24 Oct 2006 20:06:43 -0000 1.11.4.7
+++ chdirent.sm 11 Apr 2007 22:51:00 -0000 1.11.4.8
@@ -40,18 +40,7 @@ static PINT_sm_action chdirent_setup_res
%%
-machine pvfs2_chdirent_sm(
- prelude,
- verify_parent_metadata_and_read_directory_entry_handle,
- read_directory_entry,
- read_directory_entry_failure,
- change_directory_entry,
- change_directory_entry_failure,
- check_for_req_dir_update,
- update_directory_attr,
- setup_resp,
- final_response,
- cleanup)
+machine pvfs2_chdirent_sm
{
state prelude
{
Index: crdirent.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/crdirent.sm,v
diff -p -u -r1.60.2.6 -r1.60.2.7
--- crdirent.sm 19 Oct 2006 22:17:14 -0000 1.60.2.6
+++ crdirent.sm 11 Apr 2007 22:51:00 -0000 1.60.2.7
@@ -39,17 +39,7 @@ static PINT_sm_action validation_object_
%%
-machine pvfs2_crdirent_sm(
- prelude,
- setup_op,
- validate,
- validation_object_type_failure,
- read_directory_entry_handle,
- write_directory_entry,
- check_for_req_dir_update,
- update_directory_attr,
- cleanup,
- final_response)
+machine pvfs2_crdirent_sm
{
state prelude
{
Index: create.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/create.sm,v
diff -p -u -r1.40.4.6 -r1.40.4.7
--- create.sm 19 Oct 2006 22:17:15 -0000 1.40.4.6
+++ create.sm 11 Apr 2007 22:51:00 -0000 1.40.4.7
@@ -22,12 +22,7 @@ static PINT_sm_action create_setup_resp(
%%
-machine pvfs2_create_sm(
- prelude,
- create,
- setup_resp,
- final_response,
- cleanup)
+machine pvfs2_create_sm
{
state prelude
{
Index: del-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/del-eattr.sm,v
diff -p -u -r1.7.4.7 -r1.7.4.8
--- del-eattr.sm 19 Oct 2006 22:17:15 -0000 1.7.4.7
+++ del-eattr.sm 11 Apr 2007 22:51:00 -0000 1.7.4.8
@@ -23,12 +23,7 @@ static PINT_sm_action deleattr_verify_ea
%%
-machine pvfs2_del_eattr_sm(
- prelude,
- cleanup,
- verify_eattribs,
- delobj_eattrib,
- final_response)
+machine pvfs2_del_eattr_sm
{
state prelude
{
Index: event-mon.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/event-mon.sm,v
diff -p -u -r1.5.4.4 -r1.5.4.5
--- event-mon.sm 16 Jul 2006 21:42:58 -0000 1.5.4.4
+++ event-mon.sm 11 Apr 2007 22:51:00 -0000 1.5.4.5
@@ -21,7 +21,7 @@ static PINT_sm_action event_mon_do_work(
%%
-machine pvfs2_event_mon_sm(prelude, do_work, final_response, cleanup)
+machine pvfs2_event_mon_sm
{
state prelude
{
Index: final-response.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/final-response.sm,v
diff -p -u -r1.30.4.6 -r1.30.4.7
--- final-response.sm 18 Sep 2006 15:05:24 -0000 1.30.4.6
+++ final-response.sm 11 Apr 2007 22:51:00 -0000 1.30.4.7
@@ -41,10 +41,7 @@ static void PINT_gossip_err_server_resp(
%%
-nested machine pvfs2_final_response_sm(
- release,
- send_resp,
- cleanup)
+nested machine pvfs2_final_response_sm
{
state release
{
Index: flush.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/flush.sm,v
diff -p -u -r1.18.4.5 -r1.18.4.6
--- flush.sm 18 Sep 2006 15:05:24 -0000 1.18.4.5
+++ flush.sm 11 Apr 2007 22:51:00 -0000 1.18.4.6
@@ -39,15 +39,7 @@ void flush_init_state_machine(void);
%%
-machine pvfs2_flush_sm(
- prelude,
- flush_check_type,
- kflush,
- kflush_check_error,
- bflush,
- bflush_check_error,
- final_response,
- cleanup)
+machine pvfs2_flush_sm
{
state prelude
{
Index: get-attr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/get-attr.sm,v
diff -p -u -r1.78.2.6 -r1.78.2.7
--- get-attr.sm 19 Oct 2006 22:17:15 -0000 1.78.2.6
+++ get-attr.sm 11 Apr 2007 22:51:00 -0000 1.78.2.7
@@ -77,19 +77,7 @@ static PINT_sm_action getattr_setup_op(
%%
-nested machine pvfs2_get_attr_work_sm(
- verify_attribs,
- read_symlink_target,
- read_metafile_hint,
- read_metafile_datafile_handles_if_required,
- read_metafile_distribution_if_required,
- get_dirdata_handle,
- get_dirent_count,
- interpret_dirent_count,
- interpret_metafile_hint,
- get_dir_hint,
- interpret_dir_hint,
- setup_resp)
+nested machine pvfs2_get_attr_work_sm
{
state verify_attribs
{
@@ -172,12 +160,7 @@ nested machine pvfs2_get_attr_work_sm(
}
}
-machine pvfs2_get_attr_sm(
- prelude,
- setup_op,
- do_work,
- final_response,
- cleanup)
+machine pvfs2_get_attr_sm
{
state prelude
{
Index: get-config.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/get-config.sm,v
diff -p -u -r1.34.4.5 -r1.34.4.6
--- get-config.sm 28 Sep 2006 18:35:43 -0000 1.34.4.5
+++ get-config.sm 11 Apr 2007 22:51:00 -0000 1.34.4.6
@@ -21,7 +21,7 @@ static PINT_sm_action getconfig_init(
%%
-machine pvfs2_get_config_sm(prelude, init, final_response, cleanup)
+machine pvfs2_get_config_sm
{
state prelude
{
Index: get-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/get-eattr.sm,v
diff -p -u -r1.10.4.7 -r1.10.4.8
--- get-eattr.sm 19 Oct 2006 22:17:15 -0000 1.10.4.7
+++ get-eattr.sm 11 Apr 2007 22:51:00 -0000 1.10.4.8
@@ -35,13 +35,7 @@ static PINT_sm_action geteattr_cleanup(
%%
-machine pvfs2_get_eattr_sm(
- prelude,
- setup_resp,
- read_eattrib,
- check_resp,
- final_response,
- cleanup)
+machine pvfs2_get_eattr_sm
{
state prelude
{
Index: io.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/io.sm,v
diff -p -u -r1.62.4.6 -r1.62.4.7
--- io.sm 19 Oct 2006 22:17:16 -0000 1.62.4.6
+++ io.sm 11 Apr 2007 22:51:00 -0000 1.62.4.7
@@ -32,14 +32,7 @@ static PINT_sm_action io_cleanup(
%%
-machine pvfs2_io_sm(
- prelude,
- send_positive_ack,
- send_negative_ack,
- start_flow,
- cleanup,
- release,
- send_completion_ack)
+machine pvfs2_io_sm
{
state prelude
{
Index: iterate-handles.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/iterate-handles.sm,v
diff -p -u -r1.5.4.5 -r1.5.4.6
--- iterate-handles.sm 18 Sep 2006 15:05:25 -0000 1.5.4.5
+++ iterate-handles.sm 11 Apr 2007 22:51:00 -0000 1.5.4.6
@@ -22,7 +22,7 @@ static PINT_sm_action iterate_handles_fi
%%
-machine pvfs2_iterate_handles_sm(prelude, do_work, fill_resp, final_response, cleanup)
+machine pvfs2_iterate_handles_sm
{
state prelude
{
Index: job-timer.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/job-timer.sm,v
diff -p -u -r1.3.4.6 -r1.3.4.7
--- job-timer.sm 28 Sep 2006 18:35:43 -0000 1.3.4.6
+++ job-timer.sm 11 Apr 2007 22:51:00 -0000 1.3.4.7
@@ -22,7 +22,7 @@ static PINT_sm_action job_timer_error(
%%
-machine pvfs2_job_timer_sm(do_work, error)
+machine pvfs2_job_timer_sm
{
state do_work
{
Index: list-attr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/list-attr.sm,v
diff -p -u -r1.3.2.1 -r1.3.2.2
--- list-attr.sm 18 Sep 2006 15:05:25 -0000 1.3.2.1
+++ list-attr.sm 11 Apr 2007 22:51:00 -0000 1.3.2.2
@@ -59,14 +59,7 @@ extern PINT_server_trove_keys_s Trove_Co
%%
-nested machine pvfs2_list_attr_work_sm(
- verify_attribs,
- read_symlink_target,
- read_metafile_datafile_handles_if_required,
- read_metafile_distribution_if_required,
- get_dirent_count,
- interpret_dirent_count,
- setup_resp)
+nested machine pvfs2_list_attr_work_sm
{
state verify_attribs
{
@@ -116,12 +109,7 @@ nested machine pvfs2_list_attr_work_sm(
}
}
-machine pvfs2_list_attr_sm(
- prelude,
- setup_op,
- do_work,
- final_response,
- cleanup)
+machine pvfs2_list_attr_sm
{
state prelude
{
Index: list-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/list-eattr.sm,v
diff -p -u -r1.5.8.7 -r1.5.8.8
--- list-eattr.sm 19 Oct 2006 22:17:16 -0000 1.5.8.7
+++ list-eattr.sm 11 Apr 2007 22:51:00 -0000 1.5.8.8
@@ -35,13 +35,7 @@ static PINT_sm_action listeattr_cleanup(
%%
-machine pvfs2_list_eattr_sm(
- prelude,
- setup_resp,
- list_eattrib,
- check_resp,
- final_response,
- cleanup)
+machine pvfs2_list_eattr_sm
{
state prelude
{
Index: lookup.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/lookup.sm,v
diff -p -u -r1.45.4.8 -r1.45.4.9
--- lookup.sm 8 Jan 2007 16:47:32 -0000 1.45.4.8
+++ lookup.sm 11 Apr 2007 22:51:00 -0000 1.45.4.9
@@ -48,18 +48,7 @@ static PINT_sm_action lookup_setup_resp(
%%
-machine pvfs2_lookup_sm(
- prelude,
- init,
- read_object_metadata,
- read_directory_entry_handle,
- read_directory_entry,
- verify_object_metadata,
- read_directory_acls,
- check_acls,
- setup_resp,
- final_response,
- cleanup)
+machine pvfs2_lookup_sm
{
state prelude
{
@@ -162,10 +151,10 @@ static PINT_sm_action lookup_init(
char *ptr = NULL;
gossip_debug(GOSSIP_SERVER_DEBUG, " STARTING LOOKUP REQUEST "
- "(path:%s)(fs_id:%d)(handle:%lld)(attrmask:%u)\n",
+ "(path:%s)(fs_id:%d)(handle:%llu)(attrmask:%u)\n",
s_op->req->u.lookup_path.path,
s_op->req->u.lookup_path.fs_id,
- s_op->req->u.lookup_path.starting_handle,
+ llu(s_op->req->u.lookup_path.starting_handle),
s_op->req->u.lookup_path.attrmask);
/* fill in the lookup portion of the PINT_server_op */
@@ -474,16 +463,23 @@ static PINT_sm_action lookup_check_acls(
find the segment that we should look up in the directory */
if (js_p->error_code == 0)
{
- int ret = PINT_string_next_segment(
+ js_p->error_code = PINT_string_next_segment(
s_op->req->u.lookup_path.path, &s_op->u.lookup.segp,
&s_op->u.lookup.segstate);
- assert(ret == 0);
-
- gossip_debug(GOSSIP_SERVER_DEBUG, " after ACL check "
- "object is a directory; will be "
- "looking for handle for segment \"%s\" in a bit\n",
- s_op->u.lookup.segp);
+ if(js_p->error_code != 0)
+ {
+ gossip_err("PINT_string_next_segment failed to get the"
+ "next segment to lookup from the path: %s\n",
+ s_op->req->u.lookup_path.path);
+ }
+ else
+ {
+ gossip_debug(GOSSIP_SERVER_DEBUG, " after ACL check "
+ "object is a directory; will be "
+ "looking for handle for segment \"%s\" in a bit\n",
+ s_op->u.lookup.segp);
+ }
}
cleanup:
if (s_op->val.buffer)
Index: mgmt-get-dirdata-handle.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/mgmt-get-dirdata-handle.sm,v
diff -p -u -r1.4.4.7 -r1.4.4.8
--- mgmt-get-dirdata-handle.sm 19 Oct 2006 22:17:16 -0000 1.4.4.7
+++ mgmt-get-dirdata-handle.sm 11 Apr 2007 22:51:00 -0000 1.4.4.8
@@ -23,12 +23,7 @@ static PINT_sm_action mgmt_get_dirdata_h
%%
-machine pvfs2_mgmt_get_dirdata_handle_sm(
- prelude,
- get_dirdata_handle_from_parent,
- get_dirdata_handle_setup_resp,
- final_response,
- cleanup)
+machine pvfs2_mgmt_get_dirdata_handle_sm
{
state prelude
{
Index: mgmt-remove-dirent.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/mgmt-remove-dirent.sm,v
diff -p -u -r1.7.2.7 -r1.7.2.8
--- mgmt-remove-dirent.sm 19 Oct 2006 22:17:16 -0000 1.7.2.7
+++ mgmt-remove-dirent.sm 11 Apr 2007 22:51:00 -0000 1.7.2.8
@@ -23,12 +23,7 @@ static PINT_sm_action mgmt_remove_dirent
%%
-machine pvfs2_mgmt_remove_dirent_sm(
- prelude,
- get_dirdata_handle_from_parent,
- remove_dirent,
- final_response,
- cleanup)
+machine pvfs2_mgmt_remove_dirent_sm
{
state prelude
{
Index: mgmt-remove-object.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/mgmt-remove-object.sm,v
diff -p -u -r1.8.4.7 -r1.8.4.8
--- mgmt-remove-object.sm 19 Oct 2006 22:17:16 -0000 1.8.4.7
+++ mgmt-remove-object.sm 11 Apr 2007 22:51:00 -0000 1.8.4.8
@@ -21,11 +21,7 @@ static PINT_sm_action mgmt_remove_cleanu
%%
-machine pvfs2_mgmt_remove_object_sm(
- prelude,
- remove_dspace,
- final_response,
- cleanup)
+machine pvfs2_mgmt_remove_object_sm
{
state prelude
{
Index: mkdir.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/mkdir.sm,v
diff -p -u -r1.43.2.6 -r1.43.2.7
--- mkdir.sm 19 Oct 2006 22:17:16 -0000 1.43.2.6
+++ mkdir.sm 11 Apr 2007 22:51:00 -0000 1.43.2.7
@@ -32,11 +32,7 @@ static PINT_sm_action mkdir_prep_sm(
%%
-nested machine pvfs2_mkdir_work_sm(create,
- set_attrib,
- create_dirdata_dspace,
- write_dirdata_handle,
- err_msg)
+nested machine pvfs2_mkdir_work_sm
{
state create
{
@@ -73,12 +69,7 @@ nested machine pvfs2_mkdir_work_sm(creat
}
}
-machine pvfs2_mkdir_sm(
- prelude,
- prep_sm,
- work,
- final_response,
- cleanup)
+machine pvfs2_mkdir_sm
{
state prelude
{
Index: noop.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/noop.sm,v
diff -p -u -r1.4.4.3 -r1.4.4.4
--- noop.sm 16 Jul 2006 21:42:58 -0000 1.4.4.3
+++ noop.sm 11 Apr 2007 22:51:00 -0000 1.4.4.4
@@ -17,7 +17,7 @@ static PINT_sm_action noop_cleanup(
%%
-machine pvfs2_noop_sm(prelude, final_response, cleanup)
+machine pvfs2_noop_sm
{
state prelude
{
Index: perf-mon.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/perf-mon.sm,v
diff -p -u -r1.11.4.4 -r1.11.4.5
--- perf-mon.sm 16 Jul 2006 21:42:58 -0000 1.11.4.4
+++ perf-mon.sm 11 Apr 2007 22:51:00 -0000 1.11.4.5
@@ -32,7 +32,7 @@ static int reallocate_static_arrays_if_n
%%
-machine pvfs2_perf_mon_sm(prelude, do_work, final_response, cleanup)
+machine pvfs2_perf_mon_sm
{
state prelude
{
Index: perf-update.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/perf-update.sm,v
diff -p -u -r1.8.4.6 -r1.8.4.7
--- perf-update.sm 18 Jul 2006 21:23:53 -0000 1.8.4.6
+++ perf-update.sm 11 Apr 2007 22:51:00 -0000 1.8.4.7
@@ -22,7 +22,7 @@ static PINT_sm_action perf_update_error(
%%
-machine pvfs2_perf_update_sm(do_work, error)
+machine pvfs2_perf_update_sm
{
state do_work
{
Index: prelude.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/prelude.sm,v
diff -p -u -r1.60.4.6 -r1.60.4.7
--- prelude.sm 19 Oct 2006 22:17:16 -0000 1.60.4.6
+++ prelude.sm 11 Apr 2007 22:51:00 -0000 1.60.4.7
@@ -39,12 +39,7 @@ enum {
%%
-nested machine pvfs2_prelude_sm(
- req_sched,
- getattr_if_needed,
- perm_check,
- check_acls_if_needed,
- check_acls)
+nested machine pvfs2_prelude_sm
{
state req_sched
{
@@ -202,10 +197,18 @@ static void get_fs_intent(struct PVFS_se
*fsid = req->u.io.fs_id;
*read_only = (req->u.io.io_type == PVFS_IO_READ) ? 1 : 0;
break;
+ case PVFS_SERV_SMALL_IO:
+ *fsid = req->u.small_io.fs_id;
+ *read_only = (req->u.small_io.io_type == PVFS_IO_READ) ? 1 : 0;
+ break;
case PVFS_SERV_GETATTR:
*fsid = req->u.getattr.fs_id;
*read_only = 1;
break;
+ case PVFS_SERV_LISTATTR:
+ *fsid = req->u.listattr.fs_id;
+ *read_only = 1;
+ break;
case PVFS_SERV_SETATTR:
*fsid = req->u.setattr.fs_id;
*read_only = 0;
@@ -294,7 +297,8 @@ static void get_fs_intent(struct PVFS_se
case PVFS_SERV_MGMT_NOOP:
case PVFS_SERV_WRITE_COMPLETION:
case PVFS_SERV_GETCONFIG:
- default:
+ case PVFS_SERV_NUM_OPS:
+ case PVFS_SERV_INVALID:
*fsid = PVFS_FS_ID_NULL;
*read_only = -1;
break;
@@ -465,6 +469,8 @@ static PINT_sm_action prelude_perm_check
PVFS_gid translated_gid = s_op->req->credentials.gid;
PVFS_fs_id fsid;
int rdonly = -1;
+ int squashed_flag = 0;
+ int skip_acl_flag = 0;
/* moved gossip server debug output to end of state, so we can report
* resulting status value.
@@ -500,6 +506,7 @@ static PINT_sm_action prelude_perm_check
js_p->error_code = 0;
}
#endif
+
get_fs_intent(s_op->req, &fsid, &rdonly);
if (fsid != PVFS_FS_ID_NULL)
{
@@ -518,6 +525,7 @@ static PINT_sm_action prelude_perm_check
if (translate_ids(fsid, s_op->req->credentials.uid, s_op->req->credentials.gid,
&translated_uid, &translated_gid, s_op->addr) == 1)
{
+ squashed_flag = 1;
s_op->req->credentials.uid = translated_uid;
s_op->req->credentials.gid = translated_gid;
/* in the case of a setattr, translate the ids as well right here */
@@ -620,7 +628,25 @@ static PINT_sm_action prelude_perm_check
}
break;
case PINT_SERVER_CHECK_NONE:
- js_p->error_code = 0;
+ if(squashed_flag && !rdonly && ((s_op->req->op == PVFS_SERV_IO) ||
+ (s_op->req->op == PVFS_SERV_SMALL_IO) ||
+ (s_op->req->op == PVFS_SERV_TRUNCATE)))
+ {
+ /* special case:
+ * If we have been squashed, deny write permission to the
+ * file system. At the datafile level we don't have enough
+ * attribute information to figure out if the nobody/guest
+ * user has permission to write or not, so we disallow all
+ * writes to be safe. Not perfect semantics, but better
+ * than being too permissive.
+ */
+ skip_acl_flag = 1;
+ js_p->error_code = -PVFS_EACCES;
+ }
+ else
+ {
+ js_p->error_code = 0;
+ }
break;
case PINT_SERVER_CHECK_INVALID:
js_p->error_code = -PVFS_EINVAL;
@@ -638,7 +664,7 @@ static PINT_sm_action prelude_perm_check
PINT_map_server_op_to_string(s_op->req->op),
js_p->error_code);
/* If regular checks fail, we need to run acl checks */
- if (js_p->error_code == -PVFS_EACCES)
+ if (js_p->error_code == -PVFS_EACCES && !skip_acl_flag)
js_p->error_code = PRELUDE_RUN_ACL_CHECKS;
return SM_ACTION_COMPLETE;
}
Index: proto-error.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/proto-error.sm,v
diff -p -u -r1.4.4.5 -r1.4.4.6
--- proto-error.sm 18 Jul 2006 21:23:53 -0000 1.4.4.5
+++ proto-error.sm 11 Apr 2007 22:51:01 -0000 1.4.4.6
@@ -20,7 +20,7 @@ static PINT_sm_action proto_error_init(
%%
-machine pvfs2_proto_error_sm(init, cleanup)
+machine pvfs2_proto_error_sm
{
state init
{
Index: pvfs2-server.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/pvfs2-server.c,v
diff -p -u -r1.217.2.13 -r1.217.2.14
--- pvfs2-server.c 9 Nov 2006 15:52:50 -0000 1.217.2.13
+++ pvfs2-server.c 11 Apr 2007 22:51:01 -0000 1.217.2.14
@@ -457,8 +457,8 @@ int main(int argc, char **argv)
goto server_shutdown;
}
- gossip_debug(GOSSIP_SERVER_DEBUG,
- "PVFS2 Server version %s starting.\n", PVFS2_VERSION);
+ gossip_debug_fp(stderr, 'S', GOSSIP_LOGSTAMP_DATETIME,
+ "PVFS2 Server version %s starting...\n", PVFS2_VERSION);
fs_conf = ((argc >= optind) ? argv[optind] : NULL);
server_conf = ((argc >= (optind + 1)) ? argv[optind + 1] : NULL);
@@ -585,6 +585,9 @@ int main(int argc, char **argv)
goto server_shutdown;
}
+ gossip_debug_fp(stderr, 'S', GOSSIP_LOGSTAMP_DATETIME,
+ "PVFS2 Server ready.\n");
+
/* Initialization complete; process server requests indefinitely. */
for ( ;; )
{
@@ -2032,6 +2035,7 @@ static TROVE_method_id trove_coll_to_met
return fs_conf->trove_method;
}
+#ifndef GOSSIP_DISABLE_DEBUG
void PINT_server_access_debug(PINT_server_op * s_op,
int64_t debug_mask,
const char * format,
@@ -2069,6 +2073,7 @@ void PINT_server_access_debug(PINT_serve
va_end(ap);
}
}
+#endif
/*
* PINT_map_server_op_to_string()
Index: pvfs2-server.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/pvfs2-server.h,v
diff -p -u -r1.134.2.8 -r1.134.2.9
--- pvfs2-server.h 19 Oct 2006 22:17:16 -0000 1.134.2.8
+++ pvfs2-server.h 11 Apr 2007 22:51:01 -0000 1.134.2.9
@@ -245,12 +245,11 @@ struct PINT_server_remove_op
* the event that we are removing a
* directory */
PVFS_size dirent_count;
- PVFS_ds_keyval * key_array;
+ PVFS_ds_keyval key;
PVFS_ds_position pos;
int key_count;
int index;
int remove_keyvals_state;
- PVFS_ds_keyval_handle_info keyval_handle_info;
};
struct PINT_server_mgmt_remove_dirent_op
Index: readdir.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/readdir.sm,v
diff -p -u -r1.44.4.6 -r1.44.4.7
--- readdir.sm 19 Oct 2006 22:17:16 -0000 1.44.4.6
+++ readdir.sm 11 Apr 2007 22:51:01 -0000 1.44.4.7
@@ -35,14 +35,7 @@ static PINT_sm_action readdir_setup_resp
%%
-machine pvfs2_readdir_sm(
- prelude,
- iterate_on_entries,
- read_dirdata_handle,
- verify_directory_metadata,
- setup_resp,
- final_response,
- cleanup)
+machine pvfs2_readdir_sm
{
state prelude
{
@@ -212,9 +205,9 @@ static PINT_sm_action readdir_iterate_on
gossip_debug(
GOSSIP_READDIR_DEBUG, " - iterating keyvals: [%llu,%d], "
- "\n\ttoken=%d, count=%d\n",
+ "\n\ttoken=%llu, count=%d\n",
llu(s_op->u.readdir.dirent_handle), s_op->req->u.readdir.fs_id,
- s_op->req->u.readdir.token,
+ llu(s_op->req->u.readdir.token),
s_op->req->u.readdir.dirent_count);
ret = job_trove_keyval_iterate(
Index: remove.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/remove.sm,v
diff -p -u -r1.48.2.6 -r1.48.2.7
--- remove.sm 19 Oct 2006 22:17:16 -0000 1.48.2.6
+++ remove.sm 11 Apr 2007 22:51:01 -0000 1.48.2.7
@@ -81,14 +81,7 @@ extern PINT_server_trove_keys_s Trove_Co
%%
-nested machine pvfs2_remove_work_sm(
- check_object_type,
- verify_object_metadata,
- remove_dspace,
- read_dirdata_handle,
- getattr_of_dirdata_handle,
- check_dirdata_entries,
- remove_dirdata_dspace)
+nested machine pvfs2_remove_work_sm
{
state check_object_type
@@ -142,12 +135,7 @@ nested machine pvfs2_remove_work_sm(
}
-machine pvfs2_remove_sm(
- prelude,
- setup_work,
- work,
- final_response,
- cleanup)
+machine pvfs2_remove_sm
{
state prelude
{
@@ -294,11 +282,15 @@ static PINT_sm_action remove_get_dirent_
}
js_p->error_code = 0;
- ret = job_trove_keyval_get_handle_info(
+
+ ret = job_trove_keyval_iterate_keys(
s_op->u.remove.fs_id,
s_op->u.remove.dirdata_handle,
- TROVE_KEYVAL_HANDLE_COUNT,
- &s_op->u.remove.keyval_handle_info,
+ PVFS_ITERATE_START,
+ &s_op->u.remove.key,
+ 1,
+ 0,
+ NULL,
smcb,
0,
js_p,
@@ -314,15 +306,14 @@ static PINT_sm_action remove_check_dirda
struct PINT_server_op *s_op = PINT_sm_frame(smcb, PINT_FRAME_CURRENT);
if (js_p->error_code == 0)
{
- if (s_op->u.remove.keyval_handle_info.count > 0)
+ if(js_p->count > 0)
{
gossip_debug(GOSSIP_SERVER_DEBUG,
" detected non-empty "
- "directory (fsid: %u, handle: %llu, size: %d) "
+ "directory (fsid: %u, handle: %llu) "
"-- returning error\n",
s_op->u.remove.fs_id,
- llu(s_op->u.remove.handle),
- s_op->u.remove.keyval_handle_info.count);
+ llu(s_op->u.remove.handle));
js_p->error_code = -PVFS_ENOTEMPTY;
}
}
@@ -330,12 +321,10 @@ static PINT_sm_action remove_check_dirda
{
/* no entries because count is 0 */
js_p->error_code = 0;
- s_op->u.remove.keyval_handle_info.count = 0;
}
/* setup position for next state (remove[_dirdata]_keyvals) */
- s_op->u.remove.pos = PVFS_ITERATE_START;
- return SM_ACTION_COMPLETE;
+ return SM_ACTION_COMPLETE;
}
/*
@@ -357,7 +346,7 @@ static PINT_sm_action remove_remove_dird
ret = job_trove_dspace_remove(
s_op->u.remove.fs_id,
s_op->u.remove.dirdata_handle,
- TROVE_SYNC,
+ 0, /* don't sync here, we do a dspace remove on the dir handle next */
smcb,
0,
js_p,
Index: rmdirent.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/rmdirent.sm,v
diff -p -u -r1.47.2.7 -r1.47.2.8
--- rmdirent.sm 19 Oct 2006 22:17:16 -0000 1.47.2.7
+++ rmdirent.sm 11 Apr 2007 22:51:01 -0000 1.47.2.8
@@ -36,16 +36,7 @@ static PINT_sm_action rmdirent_setup_res
%%
-machine pvfs2_rmdirent_sm(
- prelude,
- verify_parent_metadata_and_read_directory_entry_handle,
- remove_directory_entry,
- remove_directory_entry_failure,
- check_for_req_dir_update,
- update_directory_attr,
- setup_resp,
- final_response,
- cleanup)
+machine pvfs2_rmdirent_sm
{
state prelude
{
Index: set-attr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/set-attr.sm,v
diff -p -u -r1.63.4.6 -r1.63.4.7
--- set-attr.sm 19 Oct 2006 22:17:16 -0000 1.63.4.6
+++ set-attr.sm 11 Apr 2007 22:51:01 -0000 1.63.4.7
@@ -35,15 +35,7 @@ static PINT_sm_action setattr_verify_att
%%
-machine pvfs2_set_attr_sm(
- prelude,
- cleanup,
- verify_attribs,
- write_metafile_datafile_handles_if_required,
- write_metafile_distribution_if_required,
- write_symlink_target_if_required,
- setobj_attrib,
- final_response)
+machine pvfs2_set_attr_sm
{
state prelude
{
Index: set-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/set-eattr.sm,v
diff -p -u -r1.10.6.6 -r1.10.6.7
--- set-eattr.sm 18 Sep 2006 15:05:26 -0000 1.10.6.6
+++ set-eattr.sm 11 Apr 2007 22:51:02 -0000 1.10.6.7
@@ -25,12 +25,7 @@ static PINT_sm_action seteattr_cleanup(
%%
-machine pvfs2_set_eattr_sm(
- prelude,
- verify_eattrib,
- setobj_eattrib,
- cleanup,
- final_response)
+machine pvfs2_set_eattr_sm
{
state prelude
{
Index: setparam.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/setparam.sm,v
diff -p -u -r1.28.4.6 -r1.28.4.7
--- setparam.sm 19 Oct 2006 22:17:16 -0000 1.28.4.6
+++ setparam.sm 11 Apr 2007 22:51:02 -0000 1.28.4.7
@@ -25,11 +25,7 @@ static int check_fs_id(PVFS_fs_id fs_id)
%%
-machine pvfs2_setparam_sm(
- prelude,
- work,
- final_response,
- cleanup)
+machine pvfs2_setparam_sm
{
state prelude
{
Index: small-io.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/small-io.sm,v
diff -p -u -r1.15.8.6 -r1.15.8.7
--- small-io.sm 18 Sep 2006 15:05:26 -0000 1.15.8.6
+++ small-io.sm 11 Apr 2007 22:51:02 -0000 1.15.8.7
@@ -27,12 +27,7 @@ static PINT_sm_action small_io_cleanup(
%%
-machine pvfs2_small_io_sm(
- prelude,
- start_job,
- check_size,
- send_response,
- cleanup)
+machine pvfs2_small_io_sm
{
state prelude
{
Index: statfs.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/statfs.sm,v
diff -p -u -r1.13.4.4 -r1.13.4.5
--- statfs.sm 16 Jul 2006 21:42:59 -0000 1.13.4.4
+++ statfs.sm 11 Apr 2007 22:51:02 -0000 1.13.4.5
@@ -26,11 +26,7 @@ static PINT_sm_action statfs_do_statfs(
%%
-machine pvfs2_statfs_sm(
- prelude,
- do_statfs,
- final_response,
- cleanup)
+machine pvfs2_statfs_sm
{
state prelude
{
Index: truncate.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/truncate.sm,v
diff -p -u -r1.5.4.4 -r1.5.4.5
--- truncate.sm 18 Jul 2006 21:23:53 -0000 1.5.4.4
+++ truncate.sm 11 Apr 2007 22:51:02 -0000 1.5.4.5
@@ -23,12 +23,7 @@ static PINT_sm_action truncate_cleanup(
%%
-machine pvfs2_truncate_sm(
- prelude,
- resize,
- check_error,
- final_response,
- cleanup)
+machine pvfs2_truncate_sm
{
state prelude
{
Index: unexpected.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/Attic/unexpected.sm,v
diff -p -u -r1.1.2.1 -r1.1.2.2
--- unexpected.sm 28 Sep 2006 18:37:39 -0000 1.1.2.1
+++ unexpected.sm 11 Apr 2007 22:51:02 -0000 1.1.2.2
@@ -20,7 +20,7 @@ static PINT_sm_action unexpected_map(
%%
-machine pvfs2_unexpected_sm(post_unexpected, map_request)
+machine pvfs2_unexpected_sm
{
state post_unexpected
{
More information about the Pvfs2-cvs
mailing list