Clean up the notify message class - missing the ompi_object_t element in structure.
This commit was SVN r3774.
Этот коммит содержится в:
родитель
a4847ca677
Коммит
72e1161605
@ -305,6 +305,9 @@ static void mca_base_modex_registry_callback(
|
||||
/* update the pml/ptls with new proc */
|
||||
}
|
||||
|
||||
/* release the message storage */
|
||||
OBJ_RELEASE(msg);
|
||||
|
||||
if(NULL != new_procs) {
|
||||
mca_pml.pml_add_procs(new_procs, new_proc_count);
|
||||
free(new_procs);
|
||||
|
@ -46,7 +46,6 @@ libmca_gpr_base_la_SOURCES = \
|
||||
gpr_base_unpack_synchro.c \
|
||||
gpr_base_pack_test_internals.c \
|
||||
gpr_base_unpack_test_internals.c \
|
||||
gpr_base_release_notify_msg.c \
|
||||
gpr_base_select.c
|
||||
|
||||
# Conditionally install the header files
|
||||
|
@ -177,7 +177,6 @@ extern "C" {
|
||||
OMPI_DECLSPEC int mca_gpr_base_pack_triggers_inactive_cmd(ompi_buffer_t cmd, mca_ns_base_jobid_t jobid);
|
||||
OMPI_DECLSPEC int mca_gpr_base_unpack_triggers_inactive_cmd(ompi_buffer_t cmd);
|
||||
|
||||
OMPI_DECLSPEC void mca_gpr_base_release_notify_msg(ompi_registry_notify_message_t *msg);
|
||||
|
||||
#if defined(c_plusplus) || defined(__cplusplus)
|
||||
}
|
||||
|
@ -180,7 +180,7 @@ static void ompi_registry_notify_message_destructor(ompi_registry_notify_message
|
||||
/* define instance of ompi_class_t */
|
||||
OBJ_CLASS_INSTANCE(
|
||||
ompi_registry_notify_message_t, /* type name */
|
||||
ompi_list_item_t, /* parent "class" name */
|
||||
ompi_object_t, /* parent "class" name */
|
||||
ompi_registry_notify_message_construct, /* constructor */
|
||||
ompi_registry_notify_message_destructor); /* destructor */
|
||||
|
||||
|
@ -1,36 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2004-2005 The Trustees of Indiana University.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
* University of Stuttgart. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
*
|
||||
* $HEADER$
|
||||
*/
|
||||
|
||||
#include "ompi_config.h"
|
||||
|
||||
#include "mca/gpr/base/base.h"
|
||||
|
||||
|
||||
|
||||
void mca_gpr_base_release_notify_msg(ompi_registry_notify_message_t *msg)
|
||||
{
|
||||
ompi_registry_value_t *ptr;
|
||||
|
||||
if (NULL != msg->segment) {
|
||||
free(msg->segment);
|
||||
}
|
||||
|
||||
if (0 < ompi_list_get_size(&msg->data)) {
|
||||
while (NULL != (ptr = (ompi_registry_value_t*)ompi_list_remove_first(&msg->data))) {
|
||||
OBJ_RELEASE(ptr);
|
||||
}
|
||||
}
|
||||
|
||||
free(msg);
|
||||
}
|
@ -86,6 +86,7 @@ typedef uint16_t ompi_registry_synchro_mode_t;
|
||||
/** Return value for notify requests
|
||||
*/
|
||||
struct ompi_registry_notify_message_t {
|
||||
ompi_object_t super; /**< Make this an object */
|
||||
char *segment; /**< Name of originating segment */
|
||||
mca_ns_base_jobid_t owning_job; /**< Job that owns that segment */
|
||||
ompi_list_t data; /**< List of data objects */
|
||||
|
@ -360,7 +360,7 @@ void mca_gpr_proxy_notify_recv(int status, ompi_process_name_t* sender,
|
||||
/* dismantle message and free memory */
|
||||
|
||||
RETURN_ERROR:
|
||||
mca_gpr_base_release_notify_msg(message);
|
||||
OBJ_RELEASE(message);
|
||||
|
||||
/* reissue non-blocking receive */
|
||||
mca_oob_recv_packed_nb(MCA_OOB_NAME_ANY, MCA_OOB_TAG_GPR_NOTIFY, 0, mca_gpr_proxy_notify_recv, NULL);
|
||||
|
@ -52,5 +52,5 @@ void mca_gpr_proxy_deliver_notify_msg(ompi_registry_notify_action_t state,
|
||||
OMPI_THREAD_UNLOCK(&mca_gpr_proxy_mutex);
|
||||
}
|
||||
}
|
||||
mca_gpr_base_release_notify_msg(message);
|
||||
OBJ_RELEASE(message);
|
||||
}
|
||||
|
@ -55,6 +55,6 @@ void mca_gpr_replica_deliver_notify_msg(ompi_registry_notify_action_t state,
|
||||
OMPI_THREAD_UNLOCK(&mca_gpr_replica_mutex);
|
||||
}
|
||||
}
|
||||
mca_gpr_base_release_notify_msg(message);
|
||||
OBJ_RELEASE(message);
|
||||
|
||||
}
|
||||
|
@ -319,5 +319,5 @@ void mca_gpr_replica_remote_notify(ompi_process_name_t *recipient, int recipient
|
||||
|
||||
ompi_buffer_free(msg);
|
||||
|
||||
mca_gpr_base_release_notify_msg(message);
|
||||
OBJ_RELEASE(message);
|
||||
}
|
||||
|
@ -51,6 +51,8 @@ ompi_rte_vm_status_t
|
||||
|
||||
if (NULL != (value = (ompi_registry_value_t*)ompi_list_remove_first(returned_list))) {
|
||||
stat_ptr = ompi_rte_unpack_vm_status(value);
|
||||
OBJ_RELEASE(value);
|
||||
OBJ_RELEASE(returned_list);
|
||||
return stat_ptr;
|
||||
}
|
||||
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user