[Pvfs2-cvs] commit by kunkel in pvfs2/src/client/sysint:
client-state-machine.h getparent.c mgmt-create-dirent.sm
mgmt-event-mon-list.sm mgmt-get-dfile-array.sm
mgmt-get-dirdata-handle.sm mgmt-iterate-handles-list.sm
mgmt-misc.c mgmt-noop.sm mgmt-perf-mon-list.sm
mgmt-remove-dirent.sm mgmt-remove-object.sm
mgmt-setparam-list.sm mgmt-statfs-list.sm pint-sysint-utils.c
pint-sysint-utils.h remove.sm server-get-config.sm
sys-create.sm sys-del-eattr.sm sys-flush.sm sys-get-eattr.sm
sys-getattr.sm sys-io.sm sys-list-eattr.sm sys-lookup.sm
sys-mkdir.sm sys-readdir.sm sys-remove.sm sys-rename.sm
sys-set-eattr.sm sys-setattr.sm sys-small-io.sm sys-statfs.sm
sys-symlink.sm sys-truncate.sm
CVS commit program
cvs at parl.clemson.edu
Sat Aug 19 09:09:35 EDT 2006
Update of /projects/cvsroot/pvfs2/src/client/sysint
In directory parlweb1:/tmp/cvs-serv3901/src/client/sysint
Modified Files:
Tag: kunkel-branch
client-state-machine.h getparent.c mgmt-create-dirent.sm
mgmt-event-mon-list.sm mgmt-get-dfile-array.sm
mgmt-get-dirdata-handle.sm mgmt-iterate-handles-list.sm
mgmt-misc.c mgmt-noop.sm mgmt-perf-mon-list.sm
mgmt-remove-dirent.sm mgmt-remove-object.sm
mgmt-setparam-list.sm mgmt-statfs-list.sm pint-sysint-utils.c
pint-sysint-utils.h remove.sm server-get-config.sm
sys-create.sm sys-del-eattr.sm sys-flush.sm sys-get-eattr.sm
sys-getattr.sm sys-io.sm sys-list-eattr.sm sys-lookup.sm
sys-mkdir.sm sys-readdir.sm sys-remove.sm sys-rename.sm
sys-set-eattr.sm sys-setattr.sm sys-small-io.sm sys-statfs.sm
sys-symlink.sm sys-truncate.sm
Log Message:
Added PVFS-hint, changed tests for pwrite/odirect/transactions/aio dbpf
support to allow users to explicitly enable or disable the functionality.
In the aio implementation is a bug since somebody else modified it.
Index: client-state-machine.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/client-state-machine.h,v
diff -p -u -r1.162 -r1.162.4.1
--- client-state-machine.h 16 Jun 2006 21:01:11 -0000 1.162
+++ client-state-machine.h 19 Aug 2006 13:09:33 -0000 1.162.4.1
@@ -17,6 +17,7 @@
*/
#include "pvfs2-sysint.h"
#include "pvfs2-types.h"
+#include "pvfs2-hint.h"
#include "pvfs2-storage.h"
#include "pvfs2-util.h"
#include "PINT-reqproto-encode.h"
@@ -492,6 +493,12 @@ typedef struct PINT_client_sm
void *user_ptr;
PVFS_credentials *cred_p;
+
+ /*
+ * hints for specific client action, for example request_ID...
+ */
+ PVFS_hint *hints;
+
union
{
struct PINT_client_remove_sm remove;
Index: getparent.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/getparent.c,v
diff -p -u -r1.12.38.2 -r1.12.38.3
--- getparent.c 24 Jul 2006 17:20:18 -0000 1.12.38.2
+++ getparent.c 19 Aug 2006 13:09:33 -0000 1.12.38.3
@@ -15,7 +15,8 @@ int PVFS_sys_getparent(
PVFS_fs_id fs_id,
char *entry_name,
PVFS_credentials *credentials,
- PVFS_sysresp_getparent *resp)
+ PVFS_sysresp_getparent *resp,
+ PVFS_hint *hints)
{
int ret = -PVFS_EINVAL;
char parent_buf[PVFS_NAME_MAX] = {0};
@@ -38,7 +39,7 @@ int PVFS_sys_getparent(
memset(&resp_look,0,sizeof(PVFS_sysresp_lookup));
ret = PVFS_sys_lookup(fs_id, parent_buf, credentials,
- &resp_look, PVFS2_LOOKUP_LINK_NO_FOLLOW);
+ &resp_look, PVFS2_LOOKUP_LINK_NO_FOLLOW, hints);
if (ret)
{
gossip_err("Lookup failed on %s\n",parent_buf);
Index: mgmt-create-dirent.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-create-dirent.sm,v
diff -p -u -r1.11.6.1 -r1.11.6.2
--- mgmt-create-dirent.sm 18 Aug 2006 05:12:01 -0000 1.11.6.1
+++ mgmt-create-dirent.sm 19 Aug 2006 13:09:33 -0000 1.11.6.2
@@ -81,6 +81,7 @@ PVFS_error PVFS_imgmt_create_dirent(
PVFS_handle entry_handle,
PVFS_credentials *credentials,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -109,6 +110,7 @@ PVFS_error PVFS_imgmt_create_dirent(
sm_p->parent_ref = parent_ref;
sm_p->u.mgmt_create_dirent.entry = entry;
sm_p->u.mgmt_create_dirent.entry_handle = entry_handle;
+ sm_p->hints = hints;
gossip_debug(
GOSSIP_CLIENT_DEBUG, "Trying to create dirent %s under %llu,%d\n",
@@ -125,7 +127,8 @@ PVFS_error PVFS_mgmt_create_dirent(
PVFS_object_ref parent_ref,
char *entry,
PVFS_handle entry_handle,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -134,7 +137,7 @@ PVFS_error PVFS_mgmt_create_dirent(
"PVFS_mgmt_create_dirent entered\n");
ret = PVFS_imgmt_create_dirent(
- parent_ref, entry, entry_handle, credentials, &op_id, NULL);
+ parent_ref, entry, entry_handle, credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_imgmt_create_dirent call", ret);
@@ -188,7 +191,8 @@ static int mgmt_create_dirent_setup_msgp
sm_p->u.mgmt_create_dirent.entry,
sm_p->u.mgmt_create_dirent.entry_handle,
sm_p->parent_ref.handle,
- sm_p->parent_ref.fs_id);
+ sm_p->parent_ref.fs_id,
+ sm_p->hints);
msg_p->fs_id = sm_p->parent_ref.fs_id;
msg_p->handle = sm_p->u.mgmt_create_dirent.entry_handle;
Index: mgmt-event-mon-list.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-event-mon-list.sm,v
diff -p -u -r1.26 -r1.26.6.1
--- mgmt-event-mon-list.sm 22 May 2006 21:50:13 -0000 1.26
+++ mgmt-event-mon-list.sm 19 Aug 2006 13:09:34 -0000 1.26.6.1
@@ -72,6 +72,7 @@ PVFS_error PVFS_imgmt_event_mon_list(
int event_count,
PVFS_error_details *details,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PINT_client_sm *sm_p = NULL;
@@ -100,6 +101,7 @@ PVFS_error PVFS_imgmt_event_mon_list(
sm_p->u.event_mon_list.event_count = event_count;
sm_p->u.event_mon_list.addr_array = addr_array;
sm_p->u.event_mon_list.details = details;
+ sm_p->hints = hints;
sm_p->msgarray_count = server_count;
sm_p->msgarray = (PINT_sm_msgpair_state *)malloc(
@@ -121,7 +123,8 @@ PVFS_error PVFS_mgmt_event_mon_list(
PVFS_BMI_addr_t *addr_array,
int server_count,
int event_count,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -131,7 +134,7 @@ PVFS_error PVFS_mgmt_event_mon_list(
ret = PVFS_imgmt_event_mon_list(
fs_id, credentials, event_matrix, addr_array, server_count,
- event_count, details, &op_id, NULL);
+ event_count, details, &op_id, hints, NULL);
if (ret)
{
@@ -173,7 +176,8 @@ static int mgmt_event_mon_list_setup_msg
PINT_SERVREQ_MGMT_EVENT_MON_FILL(
msg_p->req,
*sm_p->cred_p,
- sm_p->u.event_mon_list.event_count);
+ sm_p->u.event_mon_list.event_count,
+ sm_p->hints);
msg_p->fs_id = sm_p->u.event_mon_list.fs_id;
msg_p->handle = PVFS_HANDLE_NULL;
Index: mgmt-get-dfile-array.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-get-dfile-array.sm,v
diff -p -u -r1.27 -r1.27.6.1
--- mgmt-get-dfile-array.sm 22 May 2006 21:50:13 -0000 1.27
+++ mgmt-get-dfile-array.sm 19 Aug 2006 13:09:34 -0000 1.27.6.1
@@ -61,6 +61,7 @@ PVFS_error PVFS_imgmt_get_dfile_array(
PVFS_handle *dfile_array,
int dfile_count,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -86,6 +87,7 @@ PVFS_error PVFS_imgmt_get_dfile_array(
sm_p->object_ref = ref;
sm_p->u.get_dfile_array.dfile_array = dfile_array;
sm_p->u.get_dfile_array.dfile_count = dfile_count;
+ sm_p->hints = hints;
PINT_SM_GETATTR_STATE_FILL(
sm_p->getattr,
@@ -104,7 +106,8 @@ PVFS_error PVFS_mgmt_get_dfile_array(
PVFS_object_ref ref,
PVFS_credentials *credentials,
PVFS_handle *dfile_array,
- int dfile_count)
+ int dfile_count,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -113,7 +116,7 @@ PVFS_error PVFS_mgmt_get_dfile_array(
"PVFS_mgmt_get_dfile_array entered\n");
ret = PVFS_imgmt_get_dfile_array(
- ref, credentials, dfile_array, dfile_count, &op_id, NULL);
+ ref, credentials, dfile_array, dfile_count, &op_id, hints, NULL);
if (ret)
{
Index: mgmt-get-dirdata-handle.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-get-dirdata-handle.sm,v
diff -p -u -r1.9 -r1.9.6.1
--- mgmt-get-dirdata-handle.sm 22 May 2006 21:50:13 -0000 1.9
+++ mgmt-get-dirdata-handle.sm 19 Aug 2006 13:09:34 -0000 1.9.6.1
@@ -83,6 +83,7 @@ PVFS_error PVFS_imgmt_get_dirdata_handle
PVFS_handle *out_dirdata_handle,
PVFS_credentials *credentials,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -109,6 +110,7 @@ PVFS_error PVFS_imgmt_get_dirdata_handle
PINT_init_sysint_credentials(sm_p->cred_p, credentials);
sm_p->parent_ref = parent_ref;
sm_p->u.mgmt_get_dirdata_handle.dirdata_handle = out_dirdata_handle;
+ sm_p->hints = hints;
gossip_debug(
GOSSIP_CLIENT_DEBUG, "Trying to get dirdata object of parent "
@@ -123,7 +125,8 @@ PVFS_error PVFS_imgmt_get_dirdata_handle
PVFS_error PVFS_mgmt_get_dirdata_handle(
PVFS_object_ref parent_ref,
PVFS_handle *out_dirdata_handle,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -132,7 +135,7 @@ PVFS_error PVFS_mgmt_get_dirdata_handle(
"PVFS_mgmt_get_dirdata_handle entered\n");
ret = PVFS_imgmt_get_dirdata_handle(
- parent_ref, out_dirdata_handle, credentials, &op_id, NULL);
+ parent_ref, out_dirdata_handle, credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_imgmt_get_dirdata_handle call", ret);
@@ -176,7 +179,8 @@ static int mgmt_get_dirdata_handle_setup
msg_p->req,
*sm_p->cred_p,
sm_p->parent_ref.fs_id,
- sm_p->parent_ref.handle);
+ sm_p->parent_ref.handle,
+ sm_p->hints);
gossip_debug(GOSSIP_CLIENT_DEBUG, "- doing MGMT_GET_DIRDATA_HANDLE "
"under %llu,%d\n", llu(sm_p->parent_ref.handle),
Index: mgmt-iterate-handles-list.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-iterate-handles-list.sm,v
diff -p -u -r1.26 -r1.26.2.1
--- mgmt-iterate-handles-list.sm 14 Jul 2006 21:13:50 -0000 1.26
+++ mgmt-iterate-handles-list.sm 19 Aug 2006 13:09:34 -0000 1.26.2.1
@@ -75,6 +75,7 @@ PVFS_error PVFS_imgmt_iterate_handles_li
int server_count,
PVFS_error_details *details,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PINT_client_sm *sm_p = NULL;
@@ -104,6 +105,7 @@ PVFS_error PVFS_imgmt_iterate_handles_li
sm_p->u.iterate_handles_list.handle_count_array = handle_count_array;
sm_p->u.iterate_handles_list.position_array = position_array;
sm_p->u.iterate_handles_list.details = details;
+ sm_p->hints = hints;
sm_p->msgarray_count = server_count;
sm_p->msgarray = (PINT_sm_msgpair_state *)malloc(
@@ -129,7 +131,8 @@ PVFS_error PVFS_mgmt_iterate_handles_lis
PVFS_ds_position *position_array,
PVFS_BMI_addr_t *addr_array,
int server_count,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -139,7 +142,7 @@ PVFS_error PVFS_mgmt_iterate_handles_lis
ret = PVFS_imgmt_iterate_handles_list(
fs_id, credentials, handle_matrix, handle_count_array,
- position_array, addr_array, server_count, details, &op_id, NULL);
+ position_array, addr_array, server_count, details, &op_id, hints, NULL);
if (ret)
{
@@ -193,7 +196,8 @@ static int mgmt_iterate_handles_list_set
*sm_p->cred_p,
sm_p->u.iterate_handles_list.fs_id,
sm_p->u.iterate_handles_list.handle_count_array[i],
- sm_p->u.iterate_handles_list.position_array[i]);
+ sm_p->u.iterate_handles_list.position_array[i],
+ sm_p->hints);
j++;
msg_p->fs_id = sm_p->u.iterate_handles_list.fs_id;
msg_p->handle = PVFS_HANDLE_NULL;
Index: mgmt-misc.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-misc.c,v
diff -p -u -r1.26.38.2 -r1.26.38.3
--- mgmt-misc.c 24 Jul 2006 17:20:18 -0000 1.26.38.2
+++ mgmt-misc.c 19 Aug 2006 13:09:34 -0000 1.26.38.3
@@ -54,7 +54,8 @@ PVFS_error PVFS_mgmt_statfs_all(
PVFS_credentials *credentials,
struct PVFS_mgmt_server_stat *stat_array,
int *inout_count_p,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL;
PVFS_BMI_addr_t *addr_array = NULL;
@@ -105,7 +106,7 @@ PVFS_error PVFS_mgmt_statfs_all(
ret = PVFS_mgmt_statfs_list(
fs_id, credentials, stat_array, addr_array,
- real_count, details);
+ real_count, details, hints);
free(addr_array);
@@ -123,7 +124,8 @@ PVFS_error PVFS_mgmt_setparam_all(
enum PVFS_server_param param,
uint64_t value,
uint64_t *old_value_array,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint * hints)
{
int count = 0;
PVFS_error ret = -PVFS_EINVAL;
@@ -167,7 +169,7 @@ PVFS_error PVFS_mgmt_setparam_all(
ret = PVFS_mgmt_setparam_list(
fs_id, credentials, param, value, addr_array,
- old_value_array, count, details);
+ old_value_array, count, details, hints);
free(addr_array);
@@ -183,7 +185,8 @@ PVFS_error PVFS_mgmt_setparam_single(
uint64_t value,
char *server_addr_str,
uint64_t *old_value,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL;
PVFS_BMI_addr_t addr;
@@ -192,7 +195,7 @@ PVFS_error PVFS_mgmt_setparam_single(
{
ret = PVFS_mgmt_setparam_list(
fs_id, credentials, param, value,
- &addr, old_value, 1, details);
+ &addr, old_value, 1, details, hints);
}
return ret;
}
Index: mgmt-noop.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-noop.sm,v
diff -p -u -r1.29 -r1.29.6.1
--- mgmt-noop.sm 22 May 2006 21:50:13 -0000 1.29
+++ mgmt-noop.sm 19 Aug 2006 13:09:34 -0000 1.29.6.1
@@ -68,6 +68,7 @@ PVFS_error PVFS_imgmt_noop(
PVFS_credentials *credentials,
PVFS_BMI_addr_t addr,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PINT_client_sm *sm_p = NULL;
@@ -86,6 +87,7 @@ PVFS_error PVFS_imgmt_noop(
sm_p->msgpair.fs_id = fs_id;
sm_p->msgpair.retry_flag = PVFS_MSGPAIR_NO_RETRY;
sm_p->msgpair.svr_addr = addr;
+ sm_p->hints = hints;
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_mgmt_noop calling "
"PINT_client_state_machine_post()\n");
@@ -99,14 +101,15 @@ PVFS_error PVFS_imgmt_noop(
PVFS_error PVFS_mgmt_noop(
PVFS_fs_id fs_id,
PVFS_credentials *credentials,
- PVFS_BMI_addr_t addr)
+ PVFS_BMI_addr_t addr,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_mgmt_noop entered\n");
- ret = PVFS_imgmt_noop(fs_id, credentials, addr, &op_id, NULL);
+ ret = PVFS_imgmt_noop(fs_id, credentials, addr, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_imgmt_noop call", ret);
@@ -132,7 +135,7 @@ static int mgmt_noop_setup_msgpair(PINT_
gossip_debug(GOSSIP_CLIENT_DEBUG,
"noop state: mgmt_noop_setup_msgpair\n");
- PINT_SERVREQ_MGMT_NOOP_FILL(sm_p->msgpair.req, *sm_p->cred_p);
+ PINT_SERVREQ_MGMT_NOOP_FILL(sm_p->msgpair.req, *sm_p->cred_p, sm_p->hints);
sm_p->msgarray = &(sm_p->msgpair);
sm_p->msgarray_count = 1;
Index: mgmt-perf-mon-list.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-perf-mon-list.sm,v
diff -p -u -r1.29 -r1.29.6.1
--- mgmt-perf-mon-list.sm 22 May 2006 21:50:13 -0000 1.29
+++ mgmt-perf-mon-list.sm 19 Aug 2006 13:09:34 -0000 1.29.6.1
@@ -77,6 +77,7 @@ PVFS_error PVFS_imgmt_perf_mon_list(
int history_count,
PVFS_error_details *details,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PINT_client_sm *sm_p = NULL;
@@ -107,6 +108,7 @@ PVFS_error PVFS_imgmt_perf_mon_list(
sm_p->u.perf_mon_list.next_id_array = next_id_array;
sm_p->u.perf_mon_list.end_time_ms_array = end_time_ms_array;
sm_p->u.perf_mon_list.details = details;
+ sm_p->hints = hints;
sm_p->msgarray_count = server_count;
sm_p->msgarray = (PINT_sm_msgpair_state *)malloc(
@@ -133,7 +135,8 @@ PVFS_error PVFS_mgmt_perf_mon_list(
uint32_t* next_id_array,
int server_count,
int history_count,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -144,7 +147,7 @@ PVFS_error PVFS_mgmt_perf_mon_list(
ret = PVFS_imgmt_perf_mon_list(
fs_id, credentials, perf_matrix, end_time_ms_array,
addr_array, next_id_array, server_count, history_count,
- details, &op_id, NULL);
+ details, &op_id, hints, NULL);
if (ret)
{
@@ -186,7 +189,8 @@ static int mgmt_perf_mon_list_setup_msgp
msg_p->req,
*sm_p->cred_p,
sm_p->u.perf_mon_list.next_id_array[i],
- sm_p->u.perf_mon_list.history_count);
+ sm_p->u.perf_mon_list.history_count,
+ sm_p->hints);
msg_p->fs_id = sm_p->u.perf_mon_list.fs_id;
msg_p->handle = PVFS_HANDLE_NULL;
Index: mgmt-remove-dirent.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-remove-dirent.sm,v
diff -p -u -r1.9 -r1.9.6.1
--- mgmt-remove-dirent.sm 22 May 2006 21:50:13 -0000 1.9
+++ mgmt-remove-dirent.sm 19 Aug 2006 13:09:34 -0000 1.9.6.1
@@ -81,6 +81,7 @@ PVFS_error PVFS_imgmt_remove_dirent(
char *entry,
PVFS_credentials *credentials,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -107,6 +108,7 @@ PVFS_error PVFS_imgmt_remove_dirent(
PINT_init_sysint_credentials(sm_p->cred_p, credentials);
sm_p->parent_ref = parent_ref;
sm_p->u.mgmt_remove_dirent.entry = entry;
+ sm_p->hints = hints;
gossip_debug(
GOSSIP_CLIENT_DEBUG, "Trying to remove dirent %s under %llu,%d\n",
@@ -122,7 +124,8 @@ PVFS_error PVFS_imgmt_remove_dirent(
PVFS_error PVFS_mgmt_remove_dirent(
PVFS_object_ref parent_ref,
char *entry,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -131,7 +134,7 @@ PVFS_error PVFS_mgmt_remove_dirent(
"PVFS_mgmt_remove_dirent entered\n");
ret = PVFS_imgmt_remove_dirent(
- parent_ref, entry, credentials, &op_id, NULL);
+ parent_ref, entry, credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_imgmt_remove_dirent call", ret);
@@ -177,7 +180,8 @@ static int mgmt_remove_dirent_setup_msgp
*sm_p->cred_p,
sm_p->parent_ref.fs_id,
sm_p->parent_ref.handle,
- sm_p->u.mgmt_remove_dirent.entry);
+ sm_p->u.mgmt_remove_dirent.entry,
+ sm_p->hints);
gossip_debug(GOSSIP_REMOVE_DEBUG, "- doing MGMT_REMOVE_DIRENT %s "
"under %llu,%d\n", sm_p->u.mgmt_remove_dirent.entry,
Index: mgmt-remove-object.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-remove-object.sm,v
diff -p -u -r1.9 -r1.9.6.1
--- mgmt-remove-object.sm 22 May 2006 21:50:13 -0000 1.9
+++ mgmt-remove-object.sm 19 Aug 2006 13:09:34 -0000 1.9.6.1
@@ -80,6 +80,7 @@ PVFS_error PVFS_imgmt_remove_object(
PVFS_object_ref object_ref,
PVFS_credentials *credentials,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -104,6 +105,7 @@ PVFS_error PVFS_imgmt_remove_object(
PINT_init_msgarray_params(&sm_p->msgarray_params, object_ref.fs_id);
PINT_init_sysint_credentials(sm_p->cred_p, credentials);
sm_p->object_ref = object_ref;
+ sm_p->hints = hints;
gossip_debug(
GOSSIP_CLIENT_DEBUG, "Trying to remove handle %llu,%d\n",
@@ -120,7 +122,8 @@ PVFS_error PVFS_imgmt_remove_object(
*/
PVFS_error PVFS_mgmt_remove_object(
PVFS_object_ref object_ref,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -128,7 +131,7 @@ PVFS_error PVFS_mgmt_remove_object(
gossip_debug(GOSSIP_CLIENT_DEBUG,
"PVFS_mgmt_remove_object entered\n");
- ret = PVFS_imgmt_remove_object(object_ref, credentials, &op_id, NULL);
+ ret = PVFS_imgmt_remove_object(object_ref, credentials, &op_id, NULL, hints);
if (ret)
{
PVFS_perror_gossip("PVFS_imgmt_remove_object call", ret);
@@ -173,7 +176,8 @@ static int mgmt_remove_object_setup_msgp
msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- sm_p->object_ref.handle);
+ sm_p->object_ref.handle,
+ sm_p->hints);
gossip_debug(GOSSIP_REMOVE_DEBUG, "- doing MGMT_REMOVE_OBJECT on "
"%llu,%d\n", llu(sm_p->object_ref.handle),
Index: mgmt-setparam-list.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-setparam-list.sm,v
diff -p -u -r1.31 -r1.31.6.1
--- mgmt-setparam-list.sm 22 May 2006 21:50:13 -0000 1.31
+++ mgmt-setparam-list.sm 19 Aug 2006 13:09:34 -0000 1.31.6.1
@@ -80,6 +80,7 @@ PVFS_error PVFS_imgmt_setparam_list(
int count,
PVFS_error_details *details,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -144,7 +145,8 @@ PVFS_error PVFS_mgmt_setparam_list(
PVFS_BMI_addr_t *addr_array,
uint64_t *old_value_array,
int count,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -153,7 +155,7 @@ PVFS_error PVFS_mgmt_setparam_list(
ret = PVFS_imgmt_setparam_list(
fs_id, credentials, param, value, addr_array, old_value_array,
- count, details, &op_id, NULL);
+ count, details, &op_id, hints, NULL);
if (ret)
{
@@ -196,7 +198,8 @@ static int mgmt_setparam_list_setup_msgp
*sm_p->cred_p,
sm_p->u.setparam_list.fs_id,
sm_p->u.setparam_list.param,
- sm_p->u.setparam_list.value);
+ sm_p->u.setparam_list.value,
+ sm_p->hints);
msg_p->fs_id = sm_p->u.setparam_list.fs_id;
msg_p->handle = PVFS_HANDLE_NULL;
Index: mgmt-statfs-list.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/mgmt-statfs-list.sm,v
diff -p -u -r1.39 -r1.39.6.1
--- mgmt-statfs-list.sm 22 May 2006 21:50:13 -0000 1.39
+++ mgmt-statfs-list.sm 19 Aug 2006 13:09:34 -0000 1.39.6.1
@@ -96,6 +96,7 @@ PVFS_error PVFS_imgmt_statfs_list(
int count,
PVFS_error_details *details,
PVFS_mgmt_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
PINT_client_sm *sm_p = NULL;
@@ -122,6 +123,7 @@ PVFS_error PVFS_imgmt_statfs_list(
sm_p->u.statfs_list.count = count;
sm_p->u.statfs_list.addr_array = addr_array;
sm_p->u.statfs_list.details = details;
+ sm_p->hints = hints;
memset(sm_p->u.statfs_list.stat_array, 0,
(count * sizeof(struct PVFS_mgmt_server_stat)));
@@ -148,7 +150,8 @@ PVFS_error PVFS_mgmt_statfs_list(
struct PVFS_mgmt_server_stat *stat_array,
PVFS_BMI_addr_t *addr_array,
int count,
- PVFS_error_details *details)
+ PVFS_error_details *details,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_mgmt_op_id op_id;
@@ -157,7 +160,7 @@ PVFS_error PVFS_mgmt_statfs_list(
ret = PVFS_imgmt_statfs_list(
fs_id, credentials, stat_array, addr_array, count,
- details, &op_id, NULL);
+ details, &op_id, hints, NULL);
if (ret)
{
@@ -199,7 +202,8 @@ static int mgmt_statfs_list_setup_msgpai
PINT_SERVREQ_STATFS_FILL(
msg_p->req,
*sm_p->cred_p,
- sm_p->u.statfs_list.fs_id);
+ sm_p->u.statfs_list.fs_id,
+ sm_p->hints);
msg_p->fs_id = sm_p->u.statfs_list.fs_id;
msg_p->handle = PVFS_HANDLE_NULL;
Index: pint-sysint-utils.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/pint-sysint-utils.c,v
diff -p -u -r1.32.38.2 -r1.32.38.3
--- pint-sysint-utils.c 24 Jul 2006 17:20:19 -0000 1.32.38.2
+++ pint-sysint-utils.c 19 Aug 2006 13:09:34 -0000 1.32.38.3
@@ -82,7 +82,7 @@ int PINT_lookup_parent(
}
ret = PVFS_sys_lookup(fs_id, buf, credentials,
- &resp_look, PVFS2_LOOKUP_LINK_FOLLOW);
+ &resp_look, PVFS2_LOOKUP_LINK_FOLLOW, NULL);
if (ret < 0)
{
gossip_err("Lookup failed on %s\n", buf);
Index: pint-sysint-utils.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/pint-sysint-utils.h,v
diff -p -u -r1.22 -r1.22.38.1
--- pint-sysint-utils.h 28 Jul 2004 14:32:32 -0000 1.22
+++ pint-sysint-utils.h 19 Aug 2006 13:09:34 -0000 1.22.38.1
@@ -77,7 +77,8 @@ int PINT_do_lookup (
PVFS_object_ref *entry);
int PINT_server_get_config(
struct server_configuration_s *config,
- struct PVFS_sys_mntent* mntent);
+ struct PVFS_sys_mntent* mntent,
+ PVFS_hint * hints);
void PINT_release_pvfstab(void);
struct server_configuration_s *PINT_get_server_config_struct(
Index: remove.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/remove.sm,v
diff -p -u -r1.20.6.1 -r1.20.6.2
--- remove.sm 18 Aug 2006 05:12:01 -0000 1.20.6.1
+++ remove.sm 19 Aug 2006 13:09:34 -0000 1.20.6.2
@@ -235,7 +235,8 @@ static int remove_datafile_remove_setup_
msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- attr->u.meta.dfile_array[i]);
+ attr->u.meta.dfile_array[i],
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = attr->u.meta.dfile_array[i];
@@ -272,7 +273,8 @@ static int remove_object_remove_setup_ms
msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- sm_p->object_ref.handle);
+ sm_p->object_ref.handle,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->object_ref.handle;
Index: server-get-config.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/server-get-config.sm,v
diff -p -u -r1.21 -r1.21.6.1
--- server-get-config.sm 22 May 2006 21:50:13 -0000 1.21
+++ server-get-config.sm 19 Aug 2006 13:09:34 -0000 1.21.6.1
@@ -102,7 +102,9 @@ machine pvfs2_server_get_config_sm(
*/
int PINT_server_get_config(
struct server_configuration_s *config,
- struct PVFS_sys_mntent* mntent_p)
+ struct PVFS_sys_mntent* mntent_p,
+ PVFS_hint *hints
+ )
{
int ret = -PVFS_EINVAL;
PINT_client_sm *sm_p = NULL;
@@ -145,6 +147,8 @@ int PINT_server_get_config(
PINT_init_sysint_credentials(sm_p->cred_p, &creds);
sm_p->u.get_config.mntent = mntent_p;
sm_p->u.get_config.config = config;
+
+ sm_p->hints = hints;
ret = PINT_client_state_machine_post(
sm_p, PVFS_SERVER_GET_CONFIG, &op_id, NULL);
@@ -271,7 +275,7 @@ static int server_get_config_setup_msgpa
return ret;
}
- PINT_SERVREQ_GETCONFIG_FILL(msg_p->req, *sm_p->cred_p);
+ PINT_SERVREQ_GETCONFIG_FILL(msg_p->req, *sm_p->cred_p, sm_p->hints);
msg_p->fs_id = PVFS_FS_ID_NULL;
msg_p->handle = PVFS_HANDLE_NULL;
Index: sys-create.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-create.sm,v
diff -p -u -r1.92.4.1 -r1.92.4.2
--- sys-create.sm 18 Aug 2006 05:12:01 -0000 1.92.4.1
+++ sys-create.sm 19 Aug 2006 13:09:34 -0000 1.92.4.2
@@ -13,6 +13,7 @@
#include <string.h>
#include <assert.h>
+#include "pvfs2-hint.h"
#include "client-state-machine.h"
#include "pvfs2-debug.h"
#include "pvfs2-dist-simple-stripe.h"
@@ -231,6 +232,7 @@ PVFS_error PVFS_isys_create(
PVFS_sys_dist *dist,
PVFS_sysresp_create *resp,
PVFS_sys_op_id *op_id,
+ PVFS_hint * hints,
void *user_ptr)
{
int num_dfiles_req = 0;
@@ -284,6 +286,7 @@ PVFS_error PVFS_isys_create(
PVFS_util_copy_sys_attr(&sm_p->u.create.sys_attr, &attr);
sm_p->u.create.stored_error_code = 0;
sm_p->u.create.retry_count = 0;
+ sm_p->hints = hints;
sm_p->object_ref = parent_ref;
@@ -366,7 +369,9 @@ PVFS_error PVFS_sys_create(
PVFS_sys_attr attr,
PVFS_credentials *credentials,
PVFS_sys_dist *dist,
- PVFS_sysresp_create *resp)
+ PVFS_sysresp_create *resp,
+ PVFS_hint * hints
+ )
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -374,7 +379,7 @@ PVFS_error PVFS_sys_create(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_create entered\n");
ret = PVFS_isys_create(object_name, parent_ref, attr, credentials,
- dist, resp, &op_id, NULL);
+ dist, resp, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_create call", ret);
@@ -592,7 +597,8 @@ static int create_dspace_create_setup_ms
*sm_p->cred_p,
sm_p->object_ref.fs_id,
PVFS_TYPE_METAFILE,
- meta_handle_extent_array);
+ meta_handle_extent_array,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = meta_handle_extent_array.extent_array[0].first;
@@ -698,7 +704,8 @@ static int create_datafiles_setup_msgpai
*sm_p->cred_p,
sm_p->object_ref.fs_id,
PVFS_TYPE_DATAFILE,
- sm_p->u.create.io_handle_extent_array[i]);
+ sm_p->u.create.io_handle_extent_array[i],
+ sm_p->hints);
gossip_debug(GOSSIP_CLIENT_DEBUG, "posting datafile[%d] create "
"with extents %llu-%llu\n", i,
@@ -754,7 +761,9 @@ static int create_setattr_setup_msgpair(
sm_p->u.create.metafile_handle,
PVFS_TYPE_METAFILE,
sm_p->u.create.sys_attr,
- PVFS_ATTR_META_ALL);
+ PVFS_ATTR_META_ALL,
+ sm_p->hints
+ );
msg_p->req.u.setattr.attr.u.meta.dfile_array =
sm_p->u.create.datafile_handles;
@@ -812,7 +821,8 @@ static int create_crdirent_setup_msgpair
sm_p->u.create.object_name,
sm_p->u.create.metafile_handle,
sm_p->object_ref.handle,
- sm_p->object_ref.fs_id);
+ sm_p->object_ref.fs_id,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->object_ref.handle;
@@ -922,7 +932,8 @@ static int create_delete_handles_setup_m
msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- sm_p->u.create.metafile_handle);
+ sm_p->u.create.metafile_handle,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->u.create.metafile_handle;
@@ -939,7 +950,8 @@ static int create_delete_handles_setup_m
msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- sm_p->u.create.datafile_handles[i]);
+ sm_p->u.create.datafile_handles[i],
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->u.create.datafile_handles[i];
Index: sys-del-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-del-eattr.sm,v
diff -p -u -r1.5 -r1.5.8.1
--- sys-del-eattr.sm 22 May 2006 21:50:13 -0000 1.5
+++ sys-del-eattr.sm 19 Aug 2006 13:09:34 -0000 1.5.8.1
@@ -62,6 +62,7 @@ PVFS_error PVFS_isys_deleattr(
PVFS_credentials *credentials,
PVFS_ds_keyval *key_p,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
int ret = -PVFS_EINVAL;
@@ -88,7 +89,8 @@ PVFS_error PVFS_isys_deleattr(
sm_p->u.deleattr.key_p = key_p;
sm_p->error_code = 0;
sm_p->object_ref = ref;
-
+ sm_p->hints = hints;
+
return PINT_client_state_machine_post(
sm_p, PVFS_SYS_DELEATTR, op_id, user_ptr);
}
@@ -96,7 +98,8 @@ PVFS_error PVFS_isys_deleattr(
PVFS_error PVFS_sys_deleattr(
PVFS_object_ref ref,
PVFS_credentials *credentials,
- PVFS_ds_keyval *key_p)
+ PVFS_ds_keyval *key_p,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -104,7 +107,7 @@ PVFS_error PVFS_sys_deleattr(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_deleattr entered\n");
ret = PVFS_isys_deleattr(ref, credentials,
- key_p, &op_id, NULL);
+ key_p, &op_id, hints, NULL);
if (ret)
{
@@ -138,7 +141,8 @@ static int del_eattr_setup_msgpair(PINT_
(*sm_p->cred_p),
sm_p->object_ref.fs_id,
sm_p->object_ref.handle,
- (*sm_p->u.deleattr.key_p)
+ (*sm_p->u.deleattr.key_p),
+ sm_p->hints
);
sm_p->msgarray = &(sm_p->msgpair);
Index: sys-flush.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-flush.sm,v
diff -p -u -r1.36 -r1.36.6.1
--- sys-flush.sm 22 May 2006 21:50:13 -0000 1.36
+++ sys-flush.sm 19 Aug 2006 13:09:34 -0000 1.36.6.1
@@ -84,6 +84,7 @@ PVFS_error PVFS_isys_flush(
PVFS_object_ref ref,
PVFS_credentials *credentials,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -108,6 +109,7 @@ PVFS_error PVFS_isys_flush(
PINT_init_msgarray_params(&sm_p->msgarray_params, ref.fs_id);
PINT_init_sysint_credentials(sm_p->cred_p, credentials);
sm_p->object_ref = ref;
+ sm_p->hints = hints;
/* NOTE: This state machine previously multiplied the default job timeout
* by five to allow for potentially long sync delays. We instead now set
@@ -130,14 +132,15 @@ PVFS_error PVFS_isys_flush(
*/
PVFS_error PVFS_sys_flush(
PVFS_object_ref ref,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_flush entered\n");
- ret = PVFS_isys_flush(ref, credentials, &op_id, NULL);
+ ret = PVFS_isys_flush(ref, credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_flush call", ret);
@@ -199,7 +202,8 @@ static int flush_datafile_setup_msgpaira
PINT_SERVREQ_FLUSH_FILL(msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- attr->u.meta.dfile_array[i]);
+ attr->u.meta.dfile_array[i],
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = attr->u.meta.dfile_array[i];
@@ -217,7 +221,8 @@ static int flush_datafile_setup_msgpaira
PINT_SERVREQ_FLUSH_FILL(msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- sm_p->object_ref.handle);
+ sm_p->object_ref.handle,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->object_ref.handle;
Index: sys-get-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-get-eattr.sm,v
diff -p -u -r1.6 -r1.6.6.1
--- sys-get-eattr.sm 16 Jun 2006 21:01:11 -0000 1.6
+++ sys-get-eattr.sm 19 Aug 2006 13:09:34 -0000 1.6.6.1
@@ -64,6 +64,7 @@ PVFS_error PVFS_isys_geteattr_list(
PVFS_ds_keyval *key_array,
PVFS_sysresp_geteattr *resp_p,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
int ret = -PVFS_EINVAL;
@@ -93,6 +94,7 @@ PVFS_error PVFS_isys_geteattr_list(
sm_p->u.geteattr.resp_p = resp_p;
sm_p->error_code = 0;
sm_p->object_ref = ref;
+ sm_p->hints = hints;
return PINT_client_state_machine_post(
sm_p, PVFS_SYS_GETEATTR, op_id, user_ptr);
@@ -103,7 +105,8 @@ PVFS_error PVFS_sys_geteattr_list(
PVFS_credentials *credentials,
int32_t nkey,
PVFS_ds_keyval *key_array,
- PVFS_sysresp_geteattr *resp_p)
+ PVFS_sysresp_geteattr *resp_p,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -111,7 +114,7 @@ PVFS_error PVFS_sys_geteattr_list(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_geteattr entered\n");
ret = PVFS_isys_geteattr_list(ref, credentials,
- nkey, key_array, resp_p, &op_id, NULL);
+ nkey, key_array, resp_p, &op_id, hints, NULL);
if (ret)
{
@@ -136,13 +139,14 @@ PVFS_error PVFS_sys_geteattr(
PVFS_object_ref ref,
PVFS_credentials *credentials,
PVFS_ds_keyval *key_p,
- PVFS_ds_keyval *val_p)
+ PVFS_ds_keyval *val_p,
+ PVFS_hint *hints)
{
PVFS_sysresp_geteattr resp_p;
PVFS_error tmp_err;
resp_p.val_array = val_p;
resp_p.err_array = &tmp_err;
- return PVFS_sys_geteattr_list(ref, credentials, 1, key_p, &resp_p);
+ return PVFS_sys_geteattr_list(ref, credentials, 1, key_p, &resp_p, hints);
}
static int get_eattr_setup_msgpair(PINT_client_sm *sm_p,
@@ -172,8 +176,8 @@ static int get_eattr_setup_msgpair(PINT_
sm_p->object_ref.handle,
sm_p->u.geteattr.nkey,
sm_p->u.geteattr.key_array,
- sm_p->u.geteattr.size_array
- );
+ sm_p->u.geteattr.size_array,
+ sm_p->hints);
sm_p->msgarray = &(sm_p->msgpair);
sm_p->msgarray_count = 1;
Index: sys-getattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-getattr.sm,v
diff -p -u -r1.99 -r1.99.4.1
--- sys-getattr.sm 16 Jun 2006 21:01:11 -0000 1.99
+++ sys-getattr.sm 19 Aug 2006 13:09:34 -0000 1.99.4.1
@@ -200,6 +200,7 @@ PVFS_error PVFS_isys_getattr(
PVFS_credentials *credentials,
PVFS_sysresp_getattr *resp_p,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -232,6 +233,7 @@ PVFS_error PVFS_isys_getattr(
sm_p->error_code = 0;
sm_p->object_ref = ref;
sm_p->u.getattr.getattr_resp_p = resp_p;
+ sm_p->hints = hints;
PINT_SM_GETATTR_STATE_FILL(
sm_p->getattr,
@@ -251,7 +253,8 @@ PVFS_error PVFS_sys_getattr(
PVFS_object_ref ref,
uint32_t attrmask,
PVFS_credentials *credentials,
- PVFS_sysresp_getattr *resp_p)
+ PVFS_sysresp_getattr *resp_p,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -259,7 +262,7 @@ PVFS_error PVFS_sys_getattr(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_getattr entered\n");
ret = PVFS_isys_getattr(ref, attrmask, credentials,
- resp_p, &op_id, NULL);
+ resp_p, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_getattr call", ret);
@@ -481,7 +484,8 @@ static int getattr_object_getattr_setup_
*sm_p->cred_p,
object_ref.fs_id,
object_ref.handle,
- sm_p->getattr.req_attrmask);
+ sm_p->getattr.req_attrmask,
+ sm_p->hints);
sm_p->msgpair.fs_id = object_ref.fs_id;
sm_p->msgpair.handle = object_ref.handle;
@@ -696,7 +700,8 @@ static int getattr_datafile_getattr_setu
*sm_p->cred_p,
sm_p->getattr.object_ref.fs_id,
attr->u.meta.dfile_array[i],
- PVFS_ATTR_DATA_SIZE);
+ PVFS_ATTR_DATA_SIZE,
+ sm_p->hints);
msg_p->fs_id = sm_p->getattr.object_ref.fs_id;
msg_p->handle = attr->u.meta.dfile_array[i];
Index: sys-io.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-io.sm,v
diff -p -u -r1.146.4.1 -r1.146.4.2
--- sys-io.sm 18 Aug 2006 05:12:01 -0000 1.146.4.1
+++ sys-io.sm 19 Aug 2006 13:09:34 -0000 1.146.4.2
@@ -258,6 +258,7 @@ PVFS_error PVFS_isys_io(
PVFS_sysresp_io *resp_p,
enum PVFS_io_type io_type,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -326,6 +327,7 @@ PVFS_error PVFS_isys_io(
sm_p->u.io.total_size = 0;
sm_p->u.io.small_io = 0;
sm_p->object_ref = ref;
+ sm_p->hints = hints;
return PINT_client_state_machine_post(
sm_p, PVFS_SYS_IO, op_id, user_ptr);
@@ -343,7 +345,8 @@ PVFS_error PVFS_sys_io(
PVFS_Request mem_req,
PVFS_credentials *credentials,
PVFS_sysresp_io *resp_p,
- enum PVFS_io_type io_type)
+ enum PVFS_io_type io_type,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -351,7 +354,7 @@ PVFS_error PVFS_sys_io(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_io entered\n");
ret = PVFS_isys_io(ref, file_req, file_req_offset, buffer, mem_req,
- credentials, resp_p, io_type, &op_id, NULL);
+ credentials, resp_p, io_type, &op_id, hints, NULL);
if (ret == 1)
return 0;
else if (ret < 0)
@@ -561,7 +564,8 @@ static int io_datafile_setup_msgpairs(PI
attr->u.meta.dist,
sm_p->u.io.file_req,
sm_p->u.io.file_req_offset,
- PINT_REQUEST_TOTAL_BYTES(sm_p->u.io.mem_req));
+ PINT_REQUEST_TOTAL_BYTES(sm_p->u.io.mem_req),
+ sm_p->hints);
}
js_p->error_code = 0;
Index: sys-list-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-list-eattr.sm,v
diff -p -u -r1.3 -r1.3.10.1
--- sys-list-eattr.sm 27 May 2006 23:44:41 -0000 1.3
+++ sys-list-eattr.sm 19 Aug 2006 13:09:34 -0000 1.3.10.1
@@ -64,6 +64,7 @@ PVFS_error PVFS_isys_listeattr(
PVFS_credentials *credentials,
PVFS_sysresp_listeattr *resp_p,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
int ret = -PVFS_EINVAL;
@@ -93,6 +94,7 @@ PVFS_error PVFS_isys_listeattr(
sm_p->u.listeattr.pos_token = token;
sm_p->error_code = 0;
sm_p->object_ref = ref;
+ sm_p->hints = hints;
return PINT_client_state_machine_post(
sm_p, PVFS_SYS_LISTEATTR, op_id, user_ptr);
@@ -103,7 +105,8 @@ PVFS_error PVFS_sys_listeattr(
PVFS_ds_position token,
int32_t nkey,
PVFS_credentials *credentials,
- PVFS_sysresp_listeattr *resp_p)
+ PVFS_sysresp_listeattr *resp_p,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -111,7 +114,7 @@ PVFS_error PVFS_sys_listeattr(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_listeattr entered\n");
ret = PVFS_isys_listeattr(ref, token, nkey, credentials,
- resp_p, &op_id, NULL);
+ resp_p, &op_id, hints, NULL);
if (ret)
{
@@ -157,7 +160,8 @@ static int list_eattr_setup_msgpair(PINT
sm_p->object_ref.handle,
sm_p->u.listeattr.pos_token,
sm_p->u.listeattr.nkey,
- sm_p->u.listeattr.size_array
+ sm_p->u.listeattr.size_array,
+ sm_p->hints
);
sm_p->msgarray = &(sm_p->msgpair);
Index: sys-lookup.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-lookup.sm,v
diff -p -u -r1.62.6.1 -r1.62.6.2
--- sys-lookup.sm 18 Aug 2006 05:12:01 -0000 1.62.6.1
+++ sys-lookup.sm 19 Aug 2006 13:09:34 -0000 1.62.6.2
@@ -450,6 +450,7 @@ PVFS_error PVFS_isys_ref_lookup(
PVFS_sysresp_lookup *resp,
int32_t follow_link,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -476,6 +477,7 @@ PVFS_error PVFS_isys_ref_lookup(
sm_p->u.lookup.lookup_resp = resp;
sm_p->u.lookup.follow_link = follow_link;
sm_p->u.lookup.current_context = 0;
+ sm_p->hints = hints;
ret = initialize_context(sm_p->u.lookup.contexts,
sm_p->u.lookup.current_context,
@@ -505,7 +507,8 @@ PVFS_error PVFS_sys_ref_lookup(
PVFS_object_ref parent,
PVFS_credentials *credentials,
PVFS_sysresp_lookup *resp,
- int32_t follow_link)
+ int32_t follow_link,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -514,7 +517,7 @@ PVFS_error PVFS_sys_ref_lookup(
ret = PVFS_isys_ref_lookup(
fs_id, relative_pathname, parent, credentials, resp,
- follow_link, &op_id, resp);
+ follow_link, &op_id, hints, resp);
if (ret)
{
@@ -541,7 +544,8 @@ PVFS_error PVFS_sys_lookup(
PVFS_fs_id fs_id, char *name,
PVFS_credentials *credentials,
PVFS_sysresp_lookup *resp,
- int32_t follow_link)
+ int32_t follow_link,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL;
PVFS_object_ref parent;
@@ -576,7 +580,7 @@ PVFS_error PVFS_sys_lookup(
*/
char *path = ((name[0] == '/') ? &name[1] : name);
ret = PVFS_sys_ref_lookup(
- fs_id, path, parent, credentials, resp, follow_link);
+ fs_id, path, parent, credentials, resp, follow_link, hints);
}
}
return ret;
@@ -643,7 +647,8 @@ static int lookup_segment_lookup_setup_m
seg_to_lookup,
cur_seg->seg_starting_refn.fs_id,
cur_seg->seg_starting_refn.handle,
- PVFS_ATTR_COMMON_ALL);
+ PVFS_ATTR_COMMON_ALL,
+ sm_p->hints);
gossip_debug(
GOSSIP_LOOKUP_DEBUG, "Looking up segment %s under handle %llu\n",
Index: sys-mkdir.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-mkdir.sm,v
diff -p -u -r1.54.4.1 -r1.54.4.2
--- sys-mkdir.sm 18 Aug 2006 05:12:01 -0000 1.54.4.1
+++ sys-mkdir.sm 19 Aug 2006 13:09:34 -0000 1.54.4.2
@@ -196,6 +196,7 @@ PVFS_error PVFS_isys_mkdir(
PVFS_credentials *credentials,
PVFS_sysresp_mkdir *resp,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -238,6 +239,7 @@ PVFS_error PVFS_isys_mkdir(
sm_p->u.mkdir.mkdir_resp = resp;
sm_p->u.mkdir.stored_error_code = 0;
sm_p->object_ref = parent_ref;
+ sm_p->hints = hints;
gossip_debug(GOSSIP_CLIENT_DEBUG, "Creating directory named %s "
"under parent handle %llu on fs %d\n", object_name,
@@ -254,7 +256,8 @@ PVFS_error PVFS_sys_mkdir(
PVFS_object_ref parent_ref,
PVFS_sys_attr attr,
PVFS_credentials *credentials,
- PVFS_sysresp_mkdir *resp)
+ PVFS_sysresp_mkdir *resp,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -262,7 +265,7 @@ PVFS_error PVFS_sys_mkdir(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_mkdir entered\n");
ret = PVFS_isys_mkdir(object_name, parent_ref, attr,
- credentials, resp, &op_id, NULL);
+ credentials, resp, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_mkdir call", ret);
@@ -401,7 +404,8 @@ static int mkdir_msg_setup_msgpair(PINT_
*sm_p->cred_p,
sm_p->object_ref.fs_id,
meta_handle_extent_array,
- sm_p->u.mkdir.sys_attr);
+ sm_p->u.mkdir.sys_attr,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = meta_handle_extent_array.extent_array[0].first;
@@ -446,7 +450,9 @@ static int mkdir_crdirent_setup_msgpair(
sm_p->u.mkdir.object_name,
sm_p->u.mkdir.metafile_handle,
sm_p->object_ref.handle,
- sm_p->object_ref.fs_id);
+ sm_p->object_ref.fs_id,
+ sm_p->hints);
+
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->object_ref.handle;
@@ -505,7 +511,8 @@ static int mkdir_delete_handle_setup_msg
msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- sm_p->u.mkdir.metafile_handle);
+ sm_p->u.mkdir.metafile_handle,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->u.mkdir.metafile_handle;
@@ -720,8 +727,8 @@ static int mkdir_seteattr_setup_msgpair(
0,
eattr_count,
sm_p->u.mkdir.key_array,
- sm_p->u.mkdir.val_array
- );
+ sm_p->u.mkdir.val_array,
+ sm_p->hints);
sm_p->msgarray = &(sm_p->msgpair);
sm_p->msgarray_count = 1;
Index: sys-readdir.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-readdir.sm,v
diff -p -u -r1.44.6.1 -r1.44.6.2
--- sys-readdir.sm 18 Aug 2006 05:12:01 -0000 1.44.6.1
+++ sys-readdir.sm 19 Aug 2006 13:09:34 -0000 1.44.6.2
@@ -105,6 +105,7 @@ PVFS_error PVFS_isys_readdir(
PVFS_credentials *credentials,
PVFS_sysresp_readdir *resp,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -140,6 +141,7 @@ PVFS_error PVFS_isys_readdir(
sm_p->u.readdir.dirent_limit = pvfs_dirent_incount;
sm_p->u.readdir.readdir_resp = resp;
sm_p->object_ref = ref;
+ sm_p->hints = hints;
gossip_debug(GOSSIP_READDIR_DEBUG, "Doing readdir on handle "
"%llu on fs %d\n", llu(ref.handle), ref.fs_id);
@@ -160,7 +162,8 @@ PVFS_error PVFS_sys_readdir(
PVFS_ds_position token,
int32_t pvfs_dirent_incount,
PVFS_credentials *credentials,
- PVFS_sysresp_readdir *resp)
+ PVFS_sysresp_readdir *resp,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -168,7 +171,7 @@ PVFS_error PVFS_sys_readdir(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_readdir entered\n");
ret = PVFS_isys_readdir(ref, token, pvfs_dirent_incount,
- credentials, resp, &op_id, NULL);
+ credentials, resp, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_readdir call", ret);
@@ -239,7 +242,8 @@ static int readdir_msg_setup_msgpair(PIN
sm_p->object_ref.fs_id,
sm_p->object_ref.handle,
sm_p->u.readdir.pos_token,
- sm_p->u.readdir.dirent_limit);
+ sm_p->u.readdir.dirent_limit,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->object_ref.handle;
Index: sys-remove.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-remove.sm,v
diff -p -u -r1.97.4.1 -r1.97.4.2
--- sys-remove.sm 18 Aug 2006 05:12:01 -0000 1.97.4.1
+++ sys-remove.sm 19 Aug 2006 13:09:35 -0000 1.97.4.2
@@ -184,6 +184,7 @@ PVFS_error PVFS_isys_remove(
PVFS_object_ref parent_ref,
PVFS_credentials *credentials,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -211,6 +212,7 @@ PVFS_error PVFS_isys_remove(
sm_p->u.remove.object_name = object_name;
sm_p->parent_ref = parent_ref;
sm_p->u.remove.stored_error_code = 0;
+ sm_p->hints = hints;
gossip_debug(
GOSSIP_CLIENT_DEBUG, "Trying to remove entry %s under %llu,%d\n",
@@ -231,7 +233,8 @@ PVFS_error PVFS_isys_remove(
PVFS_error PVFS_sys_remove(
char *object_name,
PVFS_object_ref parent_ref,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -239,7 +242,7 @@ PVFS_error PVFS_sys_remove(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_remove entered\n");
ret = PVFS_isys_remove(object_name, parent_ref,
- credentials, &op_id, NULL);
+ credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_remove call", ret);
@@ -292,7 +295,8 @@ static int remove_rmdirent_setup_msgpair
*sm_p->cred_p,
sm_p->parent_ref.fs_id,
sm_p->parent_ref.handle,
- sm_p->u.remove.object_name);
+ sm_p->u.remove.object_name,
+ sm_p->hints);
gossip_debug(GOSSIP_REMOVE_DEBUG, "- doing RMDIRENT on %s "
"under %llu,%d\n", sm_p->u.remove.object_name,
@@ -336,7 +340,8 @@ static int remove_crdirent_setup_msgpair
sm_p->u.remove.object_name,
sm_p->object_ref.handle,
sm_p->parent_ref.handle,
- sm_p->parent_ref.fs_id);
+ sm_p->parent_ref.fs_id,
+ sm_p->hints);
gossip_debug(GOSSIP_REMOVE_DEBUG, "- doing CRDIRENT of %s (%llu,%d) "
"under %llu,%d\n", sm_p->u.remove.object_name,
Index: sys-rename.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-rename.sm,v
diff -p -u -r1.46.6.1 -r1.46.6.2
--- sys-rename.sm 18 Aug 2006 05:12:02 -0000 1.46.6.1
+++ sys-rename.sm 19 Aug 2006 13:09:35 -0000 1.46.6.2
@@ -279,6 +279,7 @@ PVFS_error PVFS_isys_rename(
PVFS_object_ref new_parent_ref,
PVFS_credentials *credentials,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -337,6 +338,7 @@ PVFS_error PVFS_isys_rename(
sm_p->u.rename.rmdirent_index = 0;
sm_p->u.rename.target_dirent_exists = 0;
sm_p->u.rename.stored_error_code = 0;
+ sm_p->hints = hints;
gossip_debug(
GOSSIP_CLIENT_DEBUG, "Renaming file named %s (under [%llu,%d]\n\t"
@@ -362,7 +364,8 @@ PVFS_error PVFS_sys_rename(
PVFS_object_ref old_parent_ref,
char *new_entry,
PVFS_object_ref new_parent_ref,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -370,7 +373,7 @@ PVFS_error PVFS_sys_rename(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_rename entered\n");
ret = PVFS_isys_rename(old_entry, old_parent_ref, new_entry,
- new_parent_ref, credentials, &op_id, NULL);
+ new_parent_ref, credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_rename call", ret);
@@ -589,7 +592,8 @@ static int rename_lookups_setup_msgpair_
sm_p->u.rename.entries[i],
sm_p->u.rename.parent_refns[i].fs_id,
sm_p->u.rename.parent_refns[i].handle,
- PVFS_ATTR_COMMON_ALL);
+ PVFS_ATTR_COMMON_ALL,
+ sm_p->hints);
/* fill in msgpair structure components */
msg_p->fs_id = sm_p->u.rename.parent_refns[i].fs_id;
@@ -651,7 +655,8 @@ static int rename_crdirent_setup_msgpair
sm_p->u.rename.entries[1],
sm_p->u.rename.refns[0].handle,
sm_p->u.rename.parent_refns[1].handle,
- sm_p->u.rename.parent_refns[1].fs_id);
+ sm_p->u.rename.parent_refns[1].fs_id,
+ sm_p->hints);
msg_p->fs_id = sm_p->u.rename.parent_refns[1].fs_id;
msg_p->handle = sm_p->u.rename.parent_refns[1].handle;
@@ -701,7 +706,8 @@ static int rename_rmdirent_setup_msgpair
*sm_p->cred_p,
sm_p->u.rename.parent_refns[sm_p->u.rename.rmdirent_index].fs_id,
sm_p->u.rename.parent_refns[sm_p->u.rename.rmdirent_index].handle,
- sm_p->u.rename.entries[sm_p->u.rename.rmdirent_index]);
+ sm_p->u.rename.entries[sm_p->u.rename.rmdirent_index],
+ sm_p->hints);
msg_p->fs_id = sm_p->u.rename.parent_refns[
sm_p->u.rename.rmdirent_index].fs_id;
@@ -830,7 +836,8 @@ static int rename_chdirent_setup_msgpair
sm_p->u.rename.parent_refns[1].fs_id,
sm_p->u.rename.parent_refns[1].handle,
sm_p->u.rename.refns[0].handle,
- sm_p->u.rename.entries[1]);
+ sm_p->u.rename.entries[1],
+ sm_p->hints);
msg_p->fs_id = sm_p->u.rename.parent_refns[1].fs_id;
msg_p->handle = sm_p->u.rename.parent_refns[1].handle;
Index: sys-set-eattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-set-eattr.sm,v
diff -p -u -r1.5 -r1.5.8.1
--- sys-set-eattr.sm 22 May 2006 21:50:13 -0000 1.5
+++ sys-set-eattr.sm 19 Aug 2006 13:09:35 -0000 1.5.8.1
@@ -65,6 +65,7 @@ PVFS_error PVFS_isys_seteattr_list(
PVFS_ds_keyval *val_array,
int32_t flags,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
int ret = -PVFS_EINVAL;
@@ -95,6 +96,7 @@ PVFS_error PVFS_isys_seteattr_list(
sm_p->u.seteattr.flags = flags;
sm_p->error_code = 0;
sm_p->object_ref = ref;
+ sm_p->hints = hints;
return PINT_client_state_machine_post(
sm_p, PVFS_SYS_SETEATTR, op_id, user_ptr);
@@ -106,7 +108,8 @@ PVFS_error PVFS_sys_seteattr_list(
int32_t nkey,
PVFS_ds_keyval *key_array,
PVFS_ds_keyval *val_array,
- int32_t flags)
+ int32_t flags,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -114,7 +117,7 @@ PVFS_error PVFS_sys_seteattr_list(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_seteattr entered\n");
ret = PVFS_isys_seteattr_list(ref, credentials,
- nkey, key_array, val_array, flags, &op_id, NULL);
+ nkey, key_array, val_array, flags, &op_id, hints, NULL);
if (ret)
{
@@ -140,9 +143,10 @@ PVFS_error PVFS_sys_seteattr(
PVFS_credentials *credentials,
PVFS_ds_keyval *key_p,
PVFS_ds_keyval *val_p,
- int32_t flags)
+ int32_t flags,
+ PVFS_hint *hints)
{
- return PVFS_sys_seteattr_list(ref, credentials, 1, key_p, val_p, flags);
+ return PVFS_sys_seteattr_list(ref, credentials, 1, key_p, val_p, flags, hints);
}
@@ -162,7 +166,8 @@ static int set_eattr_setup_msgpair(PINT_
sm_p->u.seteattr.flags,
sm_p->u.seteattr.nkey,
sm_p->u.seteattr.key_array,
- sm_p->u.seteattr.val_array
+ sm_p->u.seteattr.val_array,
+ sm_p->hints
);
sm_p->msgarray = &(sm_p->msgpair);
Index: sys-setattr.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-setattr.sm,v
diff -p -u -r1.45.6.1 -r1.45.6.2
--- sys-setattr.sm 18 Aug 2006 05:12:02 -0000 1.45.6.1
+++ sys-setattr.sm 19 Aug 2006 13:09:35 -0000 1.45.6.2
@@ -90,6 +90,7 @@ PVFS_error PVFS_isys_setattr(
PVFS_sys_attr attr,
PVFS_credentials *credentials,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -133,6 +134,7 @@ PVFS_error PVFS_isys_setattr(
PINT_init_msgarray_params(&sm_p->msgarray_params, ref.fs_id);
PINT_init_sysint_credentials(sm_p->cred_p, credentials);
sm_p->object_ref = ref;
+ sm_p->hints = hints;
ret = PVFS_util_copy_sys_attr(&sm_p->u.setattr.sys_attr, &attr);
if(ret < 0)
@@ -155,14 +157,15 @@ PVFS_error PVFS_isys_setattr(
PVFS_error PVFS_sys_setattr(
PVFS_object_ref ref,
PVFS_sys_attr attr,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_setattr entered\n");
- ret = PVFS_isys_setattr(ref, attr, credentials, &op_id, NULL);
+ ret = PVFS_isys_setattr(ref, attr, credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_setattr call", ret);
@@ -229,7 +232,8 @@ static int setattr_msg_setup_msgpair(PIN
sm_p->object_ref.handle,
objtype,
sm_p->u.setattr.sys_attr,
- 0);
+ 0,
+ sm_p->hints);
/* clients should not be able to mess with dfile and distribution
* information here. Those parameters should only be set at create time.
Index: sys-small-io.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-small-io.sm,v
diff -p -u -r1.9 -r1.9.2.1
--- sys-small-io.sm 13 Jul 2006 05:11:40 -0000 1.9
+++ sys-small-io.sm 19 Aug 2006 13:09:35 -0000 1.9.2.1
@@ -178,7 +178,8 @@ static int small_io_setup_msgpairs(PINT_
sm_p->u.io.file_req,
sm_p->u.io.file_req_offset,
regions,
- PINT_REQUEST_TOTAL_BYTES(sm_p->u.io.mem_req));
+ PINT_REQUEST_TOTAL_BYTES(sm_p->u.io.mem_req),
+ sm_p->hints);
sm_p->msgarray[i].fs_id = sm_p->object_ref.fs_id;
sm_p->msgarray[i].handle = sm_p->object_ref.handle;
Index: sys-statfs.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-statfs.sm,v
diff -p -u -r1.2 -r1.2.10.1
--- sys-statfs.sm 22 May 2006 21:50:13 -0000 1.2
+++ sys-statfs.sm 19 Aug 2006 13:09:35 -0000 1.2.10.1
@@ -61,6 +61,7 @@ PVFS_error PVFS_isys_statfs(
PVFS_credentials *credentials,
PVFS_sysresp_statfs *resp,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PINT_client_sm *sm_p = NULL;
@@ -143,6 +144,8 @@ PVFS_error PVFS_isys_statfs(
free(sm_p);
return -PVFS_ENOMEM;
}
+
+ sm_p->hints = hints;
return PINT_client_state_machine_post(
sm_p, PVFS_SYS_STATFS, op_id, user_ptr);
@@ -153,7 +156,8 @@ PVFS_error PVFS_isys_statfs(
PVFS_error PVFS_sys_statfs(
PVFS_fs_id fs_id,
PVFS_credentials *credentials,
- PVFS_sysresp_statfs* resp)
+ PVFS_sysresp_statfs* resp,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -161,7 +165,7 @@ PVFS_error PVFS_sys_statfs(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_statfs entered\n");
ret = PVFS_isys_statfs(
- fs_id, credentials, resp, &op_id, NULL);
+ fs_id, credentials, resp, &op_id, hints, NULL);
if (ret)
{
Index: sys-symlink.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-symlink.sm,v
diff -p -u -r1.61.6.1 -r1.61.6.2
--- sys-symlink.sm 18 Aug 2006 05:12:02 -0000 1.61.6.1
+++ sys-symlink.sm 19 Aug 2006 13:09:35 -0000 1.61.6.2
@@ -184,6 +184,7 @@ PVFS_error PVFS_isys_symlink(
PVFS_credentials *credentials,
PVFS_sysresp_symlink *resp,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -229,6 +230,7 @@ PVFS_error PVFS_isys_symlink(
sm_p->u.sym.stored_error_code = 0;
sm_p->u.sym.retry_count = 0;
sm_p->object_ref = parent_ref;
+ sm_p->hints = hints;
gossip_debug(
GOSSIP_CLIENT_DEBUG, "Symlinking %s under parent handle %llu "
@@ -247,7 +249,8 @@ PVFS_error PVFS_sys_symlink(
char *target,
PVFS_sys_attr attr,
PVFS_credentials *credentials,
- PVFS_sysresp_symlink *resp)
+ PVFS_sysresp_symlink *resp,
+ PVFS_hint * hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -255,7 +258,7 @@ PVFS_error PVFS_sys_symlink(
gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_sys_symlink entered\n");
ret = PVFS_isys_symlink(entry_name, parent_ref, target, attr,
- credentials, resp, &op_id, NULL);
+ credentials, resp, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_symlink call", ret);
@@ -411,7 +414,8 @@ static int symlink_dspace_create_setup_m
*sm_p->cred_p,
sm_p->object_ref.fs_id,
PVFS_TYPE_SYMLINK,
- meta_handle_extent_array);
+ meta_handle_extent_array,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = meta_handle_extent_array.extent_array[0].first;
@@ -452,7 +456,8 @@ static int symlink_crdirent_setup_msgpai
sm_p->u.sym.link_name,
sm_p->u.sym.symlink_handle,
sm_p->object_ref.handle,
- sm_p->object_ref.fs_id);
+ sm_p->object_ref.fs_id,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->object_ref.handle;
@@ -508,7 +513,8 @@ static int symlink_setattr_setup_msgpair
sm_p->u.sym.symlink_handle,
PVFS_TYPE_SYMLINK,
sm_p->u.sym.sys_attr,
- PVFS_ATTR_SYMLNK_ALL);
+ PVFS_ATTR_SYMLNK_ALL,
+ sm_p->hints);
/* fill in symlink specific attributes */
msg_p->req.u.setattr.attr.u.sym.target_path =
@@ -561,7 +567,8 @@ static int symlink_delete_handle_setup_m
msg_p->req,
*sm_p->cred_p,
sm_p->object_ref.fs_id,
- sm_p->u.sym.symlink_handle);
+ sm_p->u.sym.symlink_handle,
+ sm_p->hints);
msg_p->fs_id = sm_p->object_ref.fs_id;
msg_p->handle = sm_p->u.sym.symlink_handle;
Index: sys-truncate.sm
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/client/sysint/sys-truncate.sm,v
diff -p -u -r1.49 -r1.49.6.1
--- sys-truncate.sm 22 May 2006 21:50:13 -0000 1.49
+++ sys-truncate.sm 19 Aug 2006 13:09:35 -0000 1.49.6.1
@@ -87,6 +87,7 @@ PVFS_error PVFS_isys_truncate(
PVFS_size size,
PVFS_credentials *credentials,
PVFS_sys_op_id *op_id,
+ PVFS_hint *hints,
void *user_ptr)
{
PVFS_error ret = -PVFS_EINVAL;
@@ -119,6 +120,7 @@ PVFS_error PVFS_isys_truncate(
PINT_init_sysint_credentials(sm_p->cred_p, credentials);
sm_p->u.truncate.size = size;
sm_p->object_ref = ref;
+ sm_p->hints = hints;
PINT_SM_GETATTR_STATE_FILL(
sm_p->getattr,
@@ -134,7 +136,8 @@ PVFS_error PVFS_isys_truncate(
PVFS_error PVFS_sys_truncate(
PVFS_object_ref ref,
PVFS_size size,
- PVFS_credentials *credentials)
+ PVFS_credentials *credentials,
+ PVFS_hint *hints)
{
PVFS_error ret = -PVFS_EINVAL, error = 0;
PVFS_sys_op_id op_id;
@@ -142,7 +145,7 @@ PVFS_error PVFS_sys_truncate(
gossip_debug(GOSSIP_CLIENT_DEBUG,
"PVFS_sys_truncate entered with %lld\n", lld(size));
- ret = PVFS_isys_truncate(ref, size, credentials, &op_id, NULL);
+ ret = PVFS_isys_truncate(ref, size, credentials, &op_id, hints, NULL);
if (ret)
{
PVFS_perror_gossip("PVFS_isys_truncate call", ret);
@@ -228,7 +231,8 @@ static int truncate_datafile_setup_msgpa
*sm_p->cred_p,
sm_p->object_ref.fs_id,
new_dfile_size,
- attr->u.meta.dfile_array[i]);
+ attr->u.meta.dfile_array[i],
+ sm_p->hints);
/*
no callback. the status will be in the generic response
structure
More information about the Pvfs2-cvs
mailing list