[openib-general] [PATCH 2/2] opensm: cleanup sa related _ctrl layer
Sasha Khapyorsky
sashak at voltaire.com
Fri Jan 19 18:57:48 PST 2007
Cleanup SA related *_ctrl layer.
Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>
---
osm/include/Makefile.am | 18 --
osm/include/opensm/osm_sa.h | 82 +++---
osm/include/opensm/osm_sa_class_port_info.h | 19 +-
osm/include/opensm/osm_sa_class_port_info_ctrl.h | 261 ------------------
osm/include/opensm/osm_sa_guidinfo_record.h | 21 +-
osm/include/opensm/osm_sa_guidinfo_record_ctrl.h | 230 ----------------
osm/include/opensm/osm_sa_informinfo.h | 28 +-
osm/include/opensm/osm_sa_informinfo_ctrl.h | 261 ------------------
osm/include/opensm/osm_sa_lft_record.h | 22 +-
osm/include/opensm/osm_sa_lft_record_ctrl.h | 233 ----------------
osm/include/opensm/osm_sa_link_record.h | 21 +-
osm/include/opensm/osm_sa_link_record_ctrl.h | 261 ------------------
osm/include/opensm/osm_sa_mcmember_record.h | 24 +-
osm/include/opensm/osm_sa_mcmember_record_ctrl.h | 262 ------------------
osm/include/opensm/osm_sa_mft_record.h | 22 +-
osm/include/opensm/osm_sa_mft_record_ctrl.h | 231 ----------------
osm/include/opensm/osm_sa_multipath_record.h | 8 +-
osm/include/opensm/osm_sa_multipath_record_ctrl.h | 260 ------------------
osm/include/opensm/osm_sa_node_record.h | 21 +-
osm/include/opensm/osm_sa_node_record_ctrl.h | 231 ----------------
osm/include/opensm/osm_sa_path_record.h | 20 +-
osm/include/opensm/osm_sa_path_record_ctrl.h | 261 ------------------
osm/include/opensm/osm_sa_pkey_record.h | 21 +-
osm/include/opensm/osm_sa_pkey_record_ctrl.h | 218 ---------------
osm/include/opensm/osm_sa_portinfo_record.h | 20 +-
osm/include/opensm/osm_sa_portinfo_record_ctrl.h | 231 ----------------
osm/include/opensm/osm_sa_service_record.h | 23 +-
osm/include/opensm/osm_sa_service_record_ctrl.h | 230 ----------------
osm/include/opensm/osm_sa_slvl_record.h | 21 +-
osm/include/opensm/osm_sa_slvl_record_ctrl.h | 231 ----------------
osm/include/opensm/osm_sa_sminfo_record.h | 22 +-
osm/include/opensm/osm_sa_sminfo_record_ctrl.h | 231 ----------------
osm/include/opensm/osm_sa_sw_info_record.h | 8 +-
osm/include/opensm/osm_sa_sw_info_record_ctrl.h | 259 ------------------
osm/include/opensm/osm_sa_vlarb_record.h | 20 +-
osm/include/opensm/osm_sa_vlarb_record_ctrl.h | 231 ----------------
osm/opensm/Makefile.am | 34 ++--
osm/opensm/osm_sa.c | 293 ++++++++-------------
osm/opensm/osm_sa_class_port_info.c | 6 +-
osm/opensm/osm_sa_class_port_info_ctrl.c | 126 ---------
osm/opensm/osm_sa_guidinfo_record.c | 6 +-
osm/opensm/osm_sa_guidinfo_record_ctrl.c | 124 ---------
osm/opensm/osm_sa_informinfo.c | 12 +-
osm/opensm/osm_sa_informinfo_ctrl.c | 154 -----------
osm/opensm/osm_sa_lft_record.c | 6 +-
osm/opensm/osm_sa_lft_record_ctrl.c | 124 ---------
osm/opensm/osm_sa_link_record.c | 6 +-
osm/opensm/osm_sa_link_record_ctrl.c | 128 ---------
osm/opensm/osm_sa_mcmember_record.c | 6 +-
osm/opensm/osm_sa_mcmember_record_ctrl.c | 132 ---------
osm/opensm/osm_sa_mft_record.c | 6 +-
osm/opensm/osm_sa_mft_record_ctrl.c | 123 ---------
osm/opensm/osm_sa_multipath_record.c | 6 +-
osm/opensm/osm_sa_multipath_record_ctrl.c | 128 ---------
osm/opensm/osm_sa_node_record.c | 6 +-
osm/opensm/osm_sa_node_record_ctrl.c | 125 ---------
osm/opensm/osm_sa_path_record.c | 6 +-
osm/opensm/osm_sa_path_record_ctrl.c | 126 ---------
osm/opensm/osm_sa_pkey_record.c | 6 +-
osm/opensm/osm_sa_pkey_record_ctrl.c | 113 --------
osm/opensm/osm_sa_portinfo_record.c | 6 +-
osm/opensm/osm_sa_portinfo_record_ctrl.c | 125 ---------
osm/opensm/osm_sa_service_record.c | 6 +-
osm/opensm/osm_sa_service_record_ctrl.c | 125 ---------
osm/opensm/osm_sa_slvl_record.c | 6 +-
osm/opensm/osm_sa_slvl_record_ctrl.c | 126 ---------
osm/opensm/osm_sa_sminfo_record.c | 6 +-
osm/opensm/osm_sa_sminfo_record_ctrl.c | 125 ---------
osm/opensm/osm_sa_sw_info_record.c | 6 +-
osm/opensm/osm_sa_sw_info_record_ctrl.c | 123 ---------
osm/opensm/osm_sa_vlarb_record.c | 6 +-
osm/opensm/osm_sa_vlarb_record_ctrl.c | 126 ---------
osm/opensm/osm_state_mgr.c | 1 +
73 files changed, 405 insertions(+), 6747 deletions(-)
diff --git a/osm/include/Makefile.am b/osm/include/Makefile.am
index bc23723..b49cf21 100644
--- a/osm/include/Makefile.am
+++ b/osm/include/Makefile.am
@@ -5,9 +5,6 @@ nobase_pkginclude_HEADERS = iba/ib_types.h
EXTRA_DIST = \
$(srcdir)/opensm/osm_version.h \
- $(srcdir)/opensm/osm_sa_portinfo_record_ctrl.h \
- $(srcdir)/opensm/osm_sa_guidinfo_record_ctrl.h \
- $(srcdir)/opensm/osm_sa_multipath_record_ctrl.h \
$(srcdir)/opensm/osm_sa_path_record.h \
$(srcdir)/opensm/osm_lid_mgr.h \
$(srcdir)/opensm/osm_vl_arb_rcv.h \
@@ -18,17 +15,13 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_rand_fwd_tbl.h \
$(srcdir)/opensm/osm_sa_vlarb_record.h \
$(srcdir)/opensm/osm_madw.h \
- $(srcdir)/opensm/osm_sa_sminfo_record_ctrl.h \
$(srcdir)/opensm/osm_subnet.h \
$(srcdir)/opensm/osm_sweep_fail_ctrl.h \
$(srcdir)/opensm/osm_matrix.h \
- $(srcdir)/opensm/osm_sa_mcmember_record_ctrl.h \
- $(srcdir)/opensm/osm_sa_service_record_ctrl.h \
$(srcdir)/opensm/osm_sa_lft_record.h \
$(srcdir)/opensm/osm_sa_mft_record.h \
$(srcdir)/opensm/osm_resp.h \
$(srcdir)/opensm/osm_partition.h \
- $(srcdir)/opensm/osm_sa_pkey_record_ctrl.h \
$(srcdir)/opensm/osm_helper.h \
$(srcdir)/opensm/osm_sa_portinfo_record.h \
$(srcdir)/opensm/osm_sa_guidinfo_record.h \
@@ -37,13 +30,10 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_sa_response.h \
$(srcdir)/opensm/osm_node.h \
$(srcdir)/opensm/osm_console.h \
- $(srcdir)/opensm/osm_sa_slvl_record_ctrl.h \
$(srcdir)/opensm/osm_req.h \
$(srcdir)/opensm/osm_mcm_info.h \
$(srcdir)/opensm/osm_mtl_bind.h \
$(srcdir)/opensm/osm_sa_pkey_record.h \
- $(srcdir)/opensm/osm_sa_lft_record_ctrl.h \
- $(srcdir)/opensm/osm_sa_mft_record_ctrl.h \
$(srcdir)/opensm/osm_inform.h \
$(srcdir)/opensm/osm_path.h \
$(srcdir)/opensm/osm_lin_fwd_rcv.h \
@@ -61,12 +51,10 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_umadt.h \
$(srcdir)/opensm/osm_node_info_rcv.h \
$(srcdir)/opensm/osm_base.h \
- $(srcdir)/opensm/osm_sa_vlarb_record_ctrl.h \
$(srcdir)/opensm/osm_sa_sminfo_record.h \
$(srcdir)/opensm/osm_mcast_mgr.h \
$(srcdir)/opensm/osm_errors.h \
$(srcdir)/opensm/osm_mtree.h \
- $(srcdir)/opensm/osm_sa_informinfo_ctrl.h \
$(srcdir)/opensm/osm_sm.h \
$(srcdir)/opensm/osm_trap_rcv.h \
$(srcdir)/opensm/osm_lin_fwd_tbl.h \
@@ -75,7 +63,6 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_sa_informinfo.h \
$(srcdir)/opensm/osm_mad_pool.h \
$(srcdir)/opensm/osm_remote_sm.h \
- $(srcdir)/opensm/osm_sa_class_port_info_ctrl.h \
$(srcdir)/opensm/osm_link_mgr.h \
$(srcdir)/opensm/osm_msgdef.h \
$(srcdir)/opensm/osm_sa_node_record.h \
@@ -93,15 +80,10 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_db_pack.h \
$(srcdir)/opensm/osm_sm_mad_ctrl.h \
$(srcdir)/opensm/osm_slvl_map_rcv.h \
- $(srcdir)/opensm/osm_sa_node_record_ctrl.h \
$(srcdir)/opensm/osm_attrib_req.h \
$(srcdir)/opensm/osm_node_desc_rcv.h \
$(srcdir)/opensm/osm_stats.h \
- $(srcdir)/opensm/osm_sa_path_record_ctrl.h \
- $(srcdir)/opensm/osm_sa_link_record_ctrl.h \
- $(srcdir)/opensm/osm_sw_info_rcv_ctrl.h \
$(srcdir)/opensm/osm_sa_mcmember_record.h \
- $(srcdir)/opensm/osm_sa_sw_info_record_ctrl.h \
$(srcdir)/opensm/osm_sa_sw_info_record.h \
$(srcdir)/opensm/osm_vl15intf.h \
$(srcdir)/opensm/osm_drop_mgr.h \
diff --git a/osm/include/opensm/osm_sa.h b/osm/include/opensm/osm_sa.h
index 1508f44..ea60341 100644
--- a/osm/include/opensm/osm_sa.h
+++ b/osm/include/opensm/osm_sa.h
@@ -60,24 +60,24 @@
#include <opensm/osm_mad_pool.h>
#include <opensm/osm_sa_response.h>
#include <opensm/osm_log.h>
-#include <opensm/osm_sa_node_record_ctrl.h>
-#include <opensm/osm_sa_portinfo_record_ctrl.h>
-#include <opensm/osm_sa_guidinfo_record_ctrl.h>
-#include <opensm/osm_sa_link_record_ctrl.h>
-#include <opensm/osm_sa_path_record_ctrl.h>
-#include <opensm/osm_sa_multipath_record_ctrl.h>
-#include <opensm/osm_sa_sminfo_record_ctrl.h>
+#include <opensm/osm_sa_node_record.h>
+#include <opensm/osm_sa_portinfo_record.h>
+#include <opensm/osm_sa_guidinfo_record.h>
+#include <opensm/osm_sa_link_record.h>
+#include <opensm/osm_sa_path_record.h>
+#include <opensm/osm_sa_multipath_record.h>
+#include <opensm/osm_sa_sminfo_record.h>
#include <opensm/osm_sa_mad_ctrl.h>
-#include <opensm/osm_sa_mcmember_record_ctrl.h>
-#include <opensm/osm_sa_service_record_ctrl.h>
-#include <opensm/osm_sa_class_port_info_ctrl.h>
-#include <opensm/osm_sa_informinfo_ctrl.h>
-#include <opensm/osm_sa_slvl_record_ctrl.h>
-#include <opensm/osm_sa_vlarb_record_ctrl.h>
-#include <opensm/osm_sa_pkey_record_ctrl.h>
-#include <opensm/osm_sa_lft_record_ctrl.h>
-#include <opensm/osm_sa_sw_info_record_ctrl.h>
-#include <opensm/osm_sa_mft_record_ctrl.h>
+#include <opensm/osm_sa_mcmember_record.h>
+#include <opensm/osm_sa_service_record.h>
+#include <opensm/osm_sa_class_port_info.h>
+#include <opensm/osm_sa_informinfo.h>
+#include <opensm/osm_sa_slvl_record.h>
+#include <opensm/osm_sa_vlarb_record.h>
+#include <opensm/osm_sa_pkey_record.h>
+#include <opensm/osm_sa_lft_record.h>
+#include <opensm/osm_sa_sw_info_record.h>
+#include <opensm/osm_sa_mft_record.h>
#ifdef __cplusplus
# define BEGIN_C_DECLS extern "C" {
@@ -151,55 +151,59 @@ typedef struct _osm_sa
osm_sa_mad_ctrl_t mad_ctrl;
osm_sa_resp_t resp;
osm_cpi_rcv_t cpi_rcv;
- osm_cpi_rcv_ctrl_t cpi_rcv_ctrl;
osm_nr_rcv_t nr_rcv;
- osm_nr_rcv_ctrl_t nr_rcv_ctrl;
osm_pir_rcv_t pir_rcv;
- osm_pir_rcv_ctrl_t pir_rcv_ctrl;
osm_gir_rcv_t gir_rcv;
- osm_gir_rcv_ctrl_t gir_rcv_ctrl;
osm_lr_rcv_t lr_rcv;
- osm_lr_rcv_ctrl_t lr_rcv_ctrl;
osm_pr_rcv_t pr_rcv;
- osm_pr_rcv_ctrl_t pr_rcv_ctrl;
osm_smir_rcv_t smir_rcv;
- osm_smir_ctrl_t smir_ctrl;
osm_mcmr_recv_t mcmr_rcv;
- osm_mcmr_rcv_ctrl_t mcmr_rcv_ctlr;
osm_sr_rcv_t sr_rcv;
- osm_sr_rcv_ctrl_t sr_rcv_ctrl;
#if defined (VENDOR_RMPP_SUPPORT) && defined (DUAL_SIDED_RMPP)
osm_mpr_rcv_t mpr_rcv;
- osm_mpr_rcv_ctrl_t mpr_rcv_ctrl;
#endif
/* InformInfo Receiver */
osm_infr_rcv_t infr_rcv;
- osm_infr_rcv_ctrl_t infr_rcv_ctrl;
/* VL Arbitrartion Query */
osm_vlarb_rec_rcv_t vlarb_rec_rcv;
- osm_vlarb_rec_rcv_ctrl_t vlarb_rec_rcv_ctrl;
/* SLtoVL Map Query */
osm_slvl_rec_rcv_t slvl_rec_rcv;
- osm_slvl_rec_rcv_ctrl_t slvl_rec_rcv_ctrl;
/* P_Key table Query */
osm_pkey_rec_rcv_t pkey_rec_rcv;
- osm_pkey_rec_rcv_ctrl_t pkey_rec_rcv_ctrl;
/* LinearForwardingTable Query */
osm_lftr_rcv_t lftr_rcv;
- osm_lftr_rcv_ctrl_t lftr_rcv_ctrl;
/* SwitchInfo Query */
osm_sir_rcv_t sir_rcv;
- osm_sir_rcv_ctrl_t sir_rcv_ctrl;
/* MulticastForwardingTable Query */
osm_mftr_rcv_t mftr_rcv;
- osm_mftr_rcv_ctrl_t mftr_rcv_ctrl;
+
+ cl_disp_reg_handle_t cpi_disp_h;
+ cl_disp_reg_handle_t nr_disp_h;
+ cl_disp_reg_handle_t pir_disp_h;
+ cl_disp_reg_handle_t gir_disp_h;
+ cl_disp_reg_handle_t lr_disp_h;
+ cl_disp_reg_handle_t pr_disp_h;
+ cl_disp_reg_handle_t smir_disp_h;
+ cl_disp_reg_handle_t mcmr_disp_h;
+ cl_disp_reg_handle_t sr_disp_h;
+#if defined (VENDOR_RMPP_SUPPORT) && defined (DUAL_SIDED_RMPP)
+ cl_disp_reg_handle_t mpr_disp_h;
+#endif
+ cl_disp_reg_handle_t infr_disp_h;
+ cl_disp_reg_handle_t infir_disp_h;
+ cl_disp_reg_handle_t vlarb_disp_h;
+ cl_disp_reg_handle_t slvl_disp_h;
+ cl_disp_reg_handle_t pkey_disp_h;
+ cl_disp_reg_handle_t lft_disp_h;
+ cl_disp_reg_handle_t sir_disp_h;
+ cl_disp_reg_handle_t mft_disp_h;
} osm_sa_t;
/*
* FIELDS
@@ -234,24 +238,14 @@ typedef struct _osm_sa
*
* nr
*
-* nr_ctrl
-*
* pir_rcv
*
-* pir_rcv_ctrl
-*
* lr
*
-* lr_ctrl
-*
* pr
*
-* pr_ctrl
-*
* smir
*
-* smir_ctrl
-*
* SEE ALSO
* SM object
*********/
diff --git a/osm/include/opensm/osm_sa_class_port_info.h b/osm/include/opensm/osm_sa_class_port_info.h
index 9caba7a..ca159a2 100644
--- a/osm/include/opensm/osm_sa_class_port_info.h
+++ b/osm/include/opensm/osm_sa_class_port_info.h
@@ -100,12 +100,11 @@ BEGIN_C_DECLS
*/
typedef struct _osm_cpi_rcv
{
- osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
} osm_cpi_rcv_t;
/*
* FIELDS
@@ -243,14 +242,14 @@ osm_cpi_rcv_init(
*/
void
osm_cpi_rcv_process(
- IN osm_cpi_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_cpi_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the ClassPortInfo attribute.
*
diff --git a/osm/include/opensm/osm_sa_class_port_info_ctrl.h b/osm/include/opensm/osm_sa_class_port_info_ctrl.h
deleted file mode 100644
index 447617c..0000000
--- a/osm/include/opensm/osm_sa_class_port_info_ctrl.h
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_cpi_rcv_ctrl_t.
- * This object represents a controller that receives the IBA ClassPortInfo
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.2 $
- */
-
-#ifndef _OSM_CPICTRL_H_
-#define _OSM_CPICTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_class_port_info.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Class Port Info Receive Controller
-* NAME
-* Class Port Info Receive Controller
-*
-* DESCRIPTION
-* The Class Port Info Receive Controller object encapsulates
-* the information requested by the ClassPortInfo attribute.
-*
-* The ClassPortInfo Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Eitan Zahavi, Mellanox
-*
-*********/
-
-/****s* OpenSM: ClassPort Info Receive Controller/osm_cpi_rcv_ctrl_t
-* NAME
-* osm_cpi_rcv_ctrl_t
-*
-* DESCRIPTION
-* ClassPort Info Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_cpi_rcv_ctrl
-{
- osm_cpi_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_cpi_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the ClassPort Info Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Class Port Info Receive Controller object
-* Class Port Info Receiver object
-*********/
-
-/****f* OpenSM: Class Port Info Receive Controller/osm_cpi_rcv_ctrl_construct
-* NAME
-* osm_cpi_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Class Port Info Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_cpi_rcv_ctrl_construct(
- IN osm_cpi_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Class Port Info Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_cpi_rcv_ctrl_init, osm_cpi_rcv_ctrl_destroy,
-* and osm_cpi_rcv_ctrl_is_inited.
-*
-* Calling osm_cpi_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_cpi_rcv_ctrl_init.
-*
-* SEE ALSO
-* Class Port Info Receive Controller object, osm_cpi_rcv_ctrl_init,
-* osm_cpi_rcv_ctrl_destroy, osm_cpi_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Class Port Info Receive Controller/osm_cpi_rcv_ctrl_destroy
-* NAME
-* osm_cpi_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_cpi_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_cpi_rcv_ctrl_destroy(
- IN osm_cpi_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Class Port Info Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_cpi_rcv_ctrl_construct or osm_cpi_rcv_ctrl_init.
-*
-* SEE ALSO
-* Class Port Info Receive Controller object, osm_cpi_rcv_ctrl_construct,
-* osm_cpi_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Class Port Info Receive Controller/osm_cpi_rcv_ctrl_init
-* NAME
-* osm_cpi_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_cpi_rcv_ctrl_init function initializes a
-* Class Port Info Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_cpi_rcv_ctrl_init(
- IN osm_cpi_rcv_ctrl_t* const p_ctrl,
- IN osm_cpi_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_cpi_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_cpi_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the Class Port Info Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Class Port Info Receive Controller methods.
-*
-* SEE ALSO
-* Class Port Info Receive Controller object, osm_cpi_rcv_ctrl_construct,
-* osm_cpi_rcv_ctrl_destroy, osm_cpi_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Class Port Info Receive Controller/osm_cpi_rcv_ctrl_is_inited
-* NAME
-* osm_cpi_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_cpi_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_cpi_rcv_ctrl_is_inited(
- IN const osm_cpi_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_cpi_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_cpi_rcv_ctrl_construct or osm_cpi_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Class Port Info Receive Controller object, osm_cpi_rcv_ctrl_construct,
-* osm_cpi_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_CPICTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_guidinfo_record.h b/osm/include/opensm/osm_sa_guidinfo_record.h
index f22c525..5c23cf9 100644
--- a/osm/include/opensm/osm_sa_guidinfo_record.h
+++ b/osm/include/opensm/osm_sa_guidinfo_record.h
@@ -98,13 +98,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_gir_rcv
{
- const osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pool;
-
+ const osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t pool;
} osm_gir_rcv_t;
/*
* FIELDS
@@ -253,14 +252,14 @@ osm_gir_rcv_init(
*/
void
osm_gir_rcv_process(
- IN osm_gir_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_gir_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's GUIDInfoRecord attribute.
*
diff --git a/osm/include/opensm/osm_sa_guidinfo_record_ctrl.h b/osm/include/opensm/osm_sa_guidinfo_record_ctrl.h
deleted file mode 100644
index b9d0cfb..0000000
--- a/osm/include/opensm/osm_sa_guidinfo_record_ctrl.h
+++ /dev/null
@@ -1,230 +0,0 @@
-/*
- * Copyright (c) 2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_sa_gir_rec_rcv_ctrl_t.
- * This object represents a controller that receives the IBA GUID Info
- * record query from SA client.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#ifndef _OSM_GIR_CTRL_H_
-#define _OSM_GIR_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_guidinfo_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/GUID Info Record Receive Controller
-* NAME
-* GUID Info Record Receive Controller
-*
-* DESCRIPTION
-* The GUID Info Record Receive Controller object encapsulates
-* the information needed to handle GUID Info record query from SA client.
-*
-* The GUID Info Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Hal Rosenstock, Voltaire
-*
-*********/
-
-/****s* OpenSM: GUID Info Record Receive Controller/osm_gir_rcv_ctrl_t
-* NAME
-* osm_gir_rcv_ctrl_t
-*
-* DESCRIPTION
-* GUID Info Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_gir_rcv_ctrl
-{
- osm_gir_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_gir_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the GUID Info Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* GUID Info Record Receive Controller object
-* GUID Info Record Receiver object
-*********/
-
-/****f* OpenSM: GUID Info Record Receive Controller/osm_gir_rec_rcv_ctrl_construct
-* NAME
-* osm_gir_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a GUID Info Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_gir_rcv_ctrl_construct(
- IN osm_gir_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a GUID Info Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_gir_rcv_ctrl_init, osm_gir_rcv_ctrl_destroy
-*
-* Calling osm_gir_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_gir_rcv_ctrl_init.
-*
-* SEE ALSO
-* GUID Info Record Receive Controller object, osm_gir_rcv_ctrl_init,
-* osm_gir_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: GUID Info Record Receive Controller/osm_gir_rcv_ctrl_destroy
-* NAME
-* osm_gir_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_gir_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_gir_rcv_ctrl_destroy(
- IN osm_gir_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* GUIDInfo Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_gir_rcv_ctrl_construct or osm_gir_rcv_ctrl_init.
-*
-* SEE ALSO
-* GUIDInfo Record Receive Controller object, osm_gir_rcv_ctrl_construct,
-* osm_gir_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: GUID Info Record Receive Controller/osm_gir_rcv_ctrl_init
-* NAME
-* osm_gir_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_gir_rcv_ctrl_init function initializes a
-* GUID Info Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_gir_rcv_ctrl_init(
- IN osm_gir_rcv_ctrl_t* const p_ctrl,
- IN osm_gir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_gir_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_gir_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the GUID Info Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other GUID Info Record Receive Controller methods.
-*
-* SEE ALSO
-* GUID Info Record Receive Controller object, osm_gir_rcv_ctrl_construct,
-* osm_gir_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_GIR_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_informinfo.h b/osm/include/opensm/osm_sa_informinfo.h
index c22c1eb..c935995 100644
--- a/osm/include/opensm/osm_sa_informinfo.h
+++ b/osm/include/opensm/osm_sa_informinfo.h
@@ -102,12 +102,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_infr_rcv
{
- osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pool;
+ osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t pool;
} osm_infr_rcv_t;
/*
* FIELDS
@@ -249,14 +249,14 @@ osm_infr_rcv_init(
*/
void
osm_infr_rcv_process(
- IN osm_infr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_infr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's InformInfo attribute.
* NOTES
@@ -277,14 +277,14 @@ osm_infr_rcv_process(
*/
void
osm_infir_rcv_process(
- IN osm_infr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_infr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's InformInfo Record attribute.
* NOTES
diff --git a/osm/include/opensm/osm_sa_informinfo_ctrl.h b/osm/include/opensm/osm_sa_informinfo_ctrl.h
deleted file mode 100644
index 6213748..0000000
--- a/osm/include/opensm/osm_sa_informinfo_ctrl.h
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_infr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA InfromInfo
- * Set method attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.3 $
- */
-
-#ifndef _OSM_INFR_RCV_CTRL_H_
-#define _OSM_INFR_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_inform.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/InformInfo Receive Controller
-* NAME
-* InformInfo Receive Controller
-*
-* DESCRIPTION
-* The InformInfo Receive Controller object encapsulates
-* the information needed to receive the InformInfo attribute from a node.
-*
-* The InformInfo Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Eitan Zahavi, Mellanox
-*
-*********/
-
-/****s* OpenSM: InformInfo Receive Controller/osm_infr_rcv_ctrl_t
-* NAME
-* osm_infr_rcv_ctrl_t
-*
-* DESCRIPTION
-* InformInfo Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_infr_rcv_ctrl
-{
- osm_infr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
- cl_disp_reg_handle_t h_disp2;
-} osm_infr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the InformInfo Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* InformInfo Receive Controller object
-* InformInfo Receiver object
-*********/
-
-/****f* OpenSM: InformInfo Receive Controller/osm_infr_rcv_ctrl_construct
-* NAME
-* osm_infr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a InformInfo Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_infr_rcv_ctrl_construct(
- IN osm_infr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a InformInfo Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_infr_rcv_ctrl_init, osm_infr_rcv_ctrl_destroy,
-* and osm_infr_rcv_ctrl_is_inited.
-*
-* Calling osm_infr_rcv_ctrl_construct is a prerequisite to calling any
-* other method except osm_infr_rcv_ctrl_init.
-*
-* SEE ALSO
-* InformInfo Receive Controller object, osm_infr_rcv_ctrl_init,
-* osm_infr_rcv_ctrl_destroy, osm_infr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: InformInfo Receive Controller/osm_infr_rcv_ctrl_destroy
-* NAME
-* osm_infr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_infr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_infr_rcv_ctrl_destroy(
- IN osm_infr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* InformInfo Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_infr_rcv_ctrl_construct or osm_infr_rcv_ctrl_init.
-*
-* SEE ALSO
-* InformInfo Receive Controller object, osm_infr_rcv_ctrl_construct,
-* osm_infr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: InformInfo Receive Controller/osm_infr_rcv_ctrl_init
-* NAME
-* osm_infr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_infr_rcv_ctrl_init function initializes a
-* InformInfo Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_infr_rcv_ctrl_init(
- IN osm_infr_rcv_ctrl_t* const p_ctrl,
- IN osm_infr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_infr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_infr_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the InformInfo Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other InformInfo Receive Controller methods.
-*
-* SEE ALSO
-* InformInfo Receive Controller object, osm_infr_rcv_ctrl_construct,
-* osm_infr_rcv_ctrl_destroy, osm_infr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: InformInfo Receive Controller/osm_infr_rcv_ctrl_is_inited
-* NAME
-* osm_infr_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_infr_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_infr_rcv_ctrl_is_inited(
- IN const osm_infr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_infr_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_infr_rcv_ctrl_construct or osm_infr_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* InformInfo Receive Controller object, osm_infr_rcv_ctrl_construct,
-* osm_infr_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_INFR_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_lft_record.h b/osm/include/opensm/osm_sa_lft_record.h
index 8d3e596..c055e9e 100644
--- a/osm/include/opensm/osm_sa_lft_record.h
+++ b/osm/include/opensm/osm_sa_lft_record.h
@@ -100,13 +100,13 @@ BEGIN_C_DECLS
*/
typedef struct _osm_lft
{
- osm_subn_t* p_subn;
- osm_stats_t* p_stats;
- osm_sa_resp_t* p_resp;
- osm_mad_pool_t* p_mad_pool;
- osm_log_t* p_log;
- cl_plock_t* p_lock;
- cl_qlock_pool_t pool;
+ osm_subn_t* p_subn;
+ osm_stats_t* p_stats;
+ osm_sa_resp_t* p_resp;
+ osm_mad_pool_t* p_mad_pool;
+ osm_log_t* p_log;
+ cl_plock_t* p_lock;
+ cl_qlock_pool_t pool;
} osm_lftr_rcv_t;
/*
* FIELDS
@@ -254,14 +254,14 @@ ib_api_status_t osm_lftr_rcv_init(
* SYNOPSIS
*/
void osm_lftr_rcv_process(
- IN osm_lftr_rcv_t* const p_ctrl,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_lftr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the switch node's LinearForwardingTable attribute.
*
diff --git a/osm/include/opensm/osm_sa_lft_record_ctrl.h b/osm/include/opensm/osm_sa_lft_record_ctrl.h
deleted file mode 100644
index 4869851..0000000
--- a/osm/include/opensm/osm_sa_lft_record_ctrl.h
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_lftr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA
- * LinearForwardingTable attribute from a switch.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_LFTR_RCV_CTRL_H_
-#define _OSM_LFTR_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_lft_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Linear Forwarding Table Receive Controller
-* NAME
-* Linear Forwarding Table Record Receive Controller
-*
-* DESCRIPTION
-* The Linear Forwarding Table Receive Controller object encapsulates
-* the information needed to receive the LinearFowardingTable attribute
-* from a switch node.
-*
-* The Linear Forwarding Table Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Eitan Zahavi, Mellanox Technologies LTD
-*
-*********/
-
-/****s* OpenSM: Linear Forwarding Table Receive Controller/osm_lftr_rcv_ctrl_t
-* NAME
-* osm_lftr_rcv_ctrl_t
-*
-* DESCRIPTION
-* Linear Forwarding Table Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_lftr_rcv_ctrl
-{
- osm_lftr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_lftr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Linear Forwarding Table Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Linear Forwarding Table Receive Controller object
-* Linear Forwarding Table Receiver object
-*********/
-
-/****f* OpenSM: Linear Forwarding Table Receive Controller/osm_lftr_rcv_ctrl_construct
-* NAME
-* osm_lftr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Linear Forwarding Table Receive
-* Controller object.
-*
-* SYNOPSIS
-*/
-void osm_lftr_rcv_ctrl_construct(
- IN osm_lftr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Linear Forwarding Table Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_lftr_rcv_ctrl_init, osm_lftr_rcv_ctrl_destroy
-*
-* Calling osm_lftr_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_lftr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Linear Forwarding Table Receive Controller object, osm_lftr_rcv_ctrl_init,
-* osm_lftr_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: Linear Forwarding Table Receive Controller/osm_lftr_rcv_ctrl_destroy
-* NAME
-* osm_lftr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_lftr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_lftr_rcv_ctrl_destroy(
- IN osm_lftr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Linear Forwarding Table Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_lftr_rcv_ctrl_construct or osm_lftr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Linear Forwarding Table Receive Controller object, osm_lftr_rcv_ctrl_construct,
-* osm_lftr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Linear Forwarding Table Receive Controller/osm_lftr_rcv_ctrl_init
-* NAME
-* osm_lftr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_lftr_rcv_ctrl_init function initializes a
-* Linear Forwarding Table Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_lftr_rcv_ctrl_init(
- IN osm_lftr_rcv_ctrl_t* const p_ctrl,
- IN osm_lftr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_lftr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_lftr_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the Linear Forwarding Table Receive Controller object
-* was initialized successfully.
-*
-* NOTES
-* Allows calling other Linear Forwarding Table Receive Controller methods.
-*
-* SEE ALSO
-* Linear Forwarding Table Receive Controller object,
-* osm_lftr_rcv_ctrl_construct, osm_lftr_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_LFTR_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_link_record.h b/osm/include/opensm/osm_sa_link_record.h
index 3390b35..adc3be8 100644
--- a/osm/include/opensm/osm_sa_link_record.h
+++ b/osm/include/opensm/osm_sa_link_record.h
@@ -100,13 +100,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_lr_rcv
{
- osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t lr_pool;
-
+ osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t lr_pool;
} osm_lr_rcv_t;
/*
* FIELDS
@@ -253,14 +252,14 @@ osm_lr_rcv_init(
* SYNOPSIS
*/
void osm_lr_rcv_process(
- IN osm_lr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_lr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's Link Record attribute.
*
diff --git a/osm/include/opensm/osm_sa_link_record_ctrl.h b/osm/include/opensm/osm_sa_link_record_ctrl.h
deleted file mode 100644
index 166b850..0000000
--- a/osm/include/opensm/osm_sa_link_record_ctrl.h
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_lr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA Link Record
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_LR_CTRL_H_
-#define _OSM_LR_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_link_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Link Record Receive Controller
-* NAME
-* Link Record Receive Controller
-*
-* DESCRIPTION
-* The Link Record Receive Controller object encapsulates
-* the information needed to receive the LinkRecord attribute from a node.
-*
-* The Link Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Ranjit Pandit, Intel
-*
-*********/
-
-/****s* OpenSM: Link Record Receive Controller/osm_lr_rcv_ctrl_t
-* NAME
-* osm_lr_rcv_ctrl_t
-*
-* DESCRIPTION
-* Link Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_lr_rcv_ctrl
-{
- osm_lr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_lr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Link Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Link Record Receive Controller object
-* Link Record Receiver object
-*********/
-
-/****f* OpenSM: Link Record Receive Controller/osm_lr_rcv_ctrl_construct
-* NAME
-* osm_lr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Link Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_lr_rcv_ctrl_construct(
- IN osm_lr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Link Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_lr_rcv_ctrl_init, osm_lr_rcv_ctrl_destroy,
-* and osm_lr_rcv_ctrl_is_inited.
-*
-* Calling osm_lr_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_lr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Link Record Receive Controller object, osm_lr_rcv_ctrl_init,
-* osm_lr_rcv_ctrl_destroy, osm_lr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Link Record Receive Controller/osm_lr_rcv_ctrl_destroy
-* NAME
-* osm_lr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_lr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_lr_rcv_ctrl_destroy(
- IN osm_lr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Link Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_lr_rcv_ctrl_construct or osm_lr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Link Record Receive Controller object, osm_lr_rcv_ctrl_construct,
-* osm_lr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Link Record Receive Controller/osm_lr_rcv_ctrl_init
-* NAME
-* osm_lr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_lr_rcv_ctrl_init function initializes a
-* Link Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t
-osm_lr_rcv_ctrl_init(
- IN osm_lr_rcv_ctrl_t* const p_ctrl,
- IN osm_lr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_lr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_lr_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the Link Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Link Record Receive Controller methods.
-*
-* SEE ALSO
-* Link Record Receive Controller object, osm_lr_rcv_ctrl_construct,
-* osm_lr_rcv_ctrl_destroy, osm_lr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Link Record Receive Controller/osm_lr_rcv_ctrl_is_inited
-* NAME
-* osm_lr_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_lr_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_lr_rcv_ctrl_is_inited(
- IN const osm_lr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_lr_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_lr_rcv_ctrl_construct or osm_lr_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Link Record Receive Controller object, osm_lr_rcv_ctrl_construct,
-* osm_lr_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_LR_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_mcmember_record.h b/osm/include/opensm/osm_sa_mcmember_record.h
index 802f3e8..c87d100 100644
--- a/osm/include/opensm/osm_sa_mcmember_record.h
+++ b/osm/include/opensm/osm_sa_mcmember_record.h
@@ -103,14 +103,14 @@ BEGIN_C_DECLS
typedef struct _osm_mcmr
{
- osm_subn_t *p_subn;
- osm_sm_t *p_sm;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- uint16_t mlid_ho;
- cl_qlock_pool_t pool;
+ osm_subn_t *p_subn;
+ osm_sm_t *p_sm;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ uint16_t mlid_ho;
+ cl_qlock_pool_t pool;
} osm_mcmr_recv_t;
@@ -253,14 +253,14 @@ ib_api_status_t osm_mcmr_rcv_init(
* SYNOPSIS
*/
void osm_mcmr_rcv_process(
- IN osm_mcmr_recv_t* const p_ctrl,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_mcmr_recv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's MCMemberRecord attribute.
*
diff --git a/osm/include/opensm/osm_sa_mcmember_record_ctrl.h b/osm/include/opensm/osm_sa_mcmember_record_ctrl.h
deleted file mode 100644
index a73b817..0000000
--- a/osm/include/opensm/osm_sa_mcmember_record_ctrl.h
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_mcmr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA MCMemberRecord
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-
-#ifndef _OSM_MCMRCTRL_H
-#define _OSM_MCMRCTRL_H
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_mcmember_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/MCMember Receive Controller
-* NAME
-* MCMember Receive Controller
-*
-* DESCRIPTION
-* The MCMember Receive Controller object encapsulates
-* the information needed to receive the MCMemberRecord attribute from a node.
-*
-* The MCMember Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Ranjit Pandit, Intel
-*
-*********/
-
-/****s* OpenSM: MCMember Receive Controller/osm_mcmr_rcv_ctrl_t
-* NAME
-* osm_mcmr_rcv_ctrl_t
-*
-* DESCRIPTION
-* MCMember Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_mcmr_rcv_ctrl
-{
- osm_mcmr_recv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_mcmr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the MCMember Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* MCMember Receive Controller object
-* MCMember Receiver object
-*********/
-
-/****f* OpenSM: MCMember Receive Controller/osm_mcmr_rcv_ctrl_construct
-* NAME
-* osm_mcmr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a MCMember Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_mcmr_rcv_ctrl_construct(
- IN osm_mcmr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a MCMember Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_mcmr_rcv_ctrl_init, osm_mcmr_rcv_ctrl_destroy,
-* and osm_mcmr_ctrl_is_inited.
-*
-* Calling osm_mcmr_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_mcmr_rcv_ctrl_init.
-*
-* SEE ALSO
-* MCMember Receive Controller object, osm_mcmr_rcv_ctrl_init,
-* osm_mcmr_rcv_ctrl_destroy, osm_mcmr_ctrl_is_inited
-*********/
-
-/****f* OpenSM: MCMember Receive Controller/osm_mcmr_rcv_ctrl_destroy
-* NAME
-* osm_mcmr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_mcmr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_mcmr_rcv_ctrl_destroy(
- IN osm_mcmr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* MCMember Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_mcmr_rcv_ctrl_construct or osm_mcmr_rcv_ctrl_init.
-*
-* SEE ALSO
-* MCMember Receive Controller object, osm_mcmr_rcv_ctrl_construct,
-* osm_mcmr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: MCMember Receive Controller/osm_mcmr_rcv_ctrl_init
-* NAME
-* osm_mcmr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_mcmr_rcv_ctrl_init function initializes a
-* MCMember Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_mcmr_rcv_ctrl_init(
- IN osm_mcmr_rcv_ctrl_t* const p_ctrl,
- IN osm_mcmr_recv_t* const p_mcmr,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_mcmr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_mcmr_recv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the MCMember Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other MCMember Receive Controller methods.
-*
-* SEE ALSO
-* MCMember Receive Controller object, osm_mcmr_rcv_ctrl_construct,
-* osm_mcmr_rcv_ctrl_destroy, osm_mcmr_ctrl_is_inited
-*********/
-
-/****f* OpenSM: MCMember Receive Controller/osm_mcmr_ctrl_is_inited
-* NAME
-* osm_mcmr_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_mcmr_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_mcmr_ctrl_is_inited(
- IN const osm_mcmr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_mcmr_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_mcmr_rcv_ctrl_construct or osm_mcmr_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* MCMember Receive Controller object, osm_mcmr_rcv_ctrl_construct,
-* osm_mcmr_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_MCMRCTRL_H */
diff --git a/osm/include/opensm/osm_sa_mft_record.h b/osm/include/opensm/osm_sa_mft_record.h
index f961206..e63e4ef 100644
--- a/osm/include/opensm/osm_sa_mft_record.h
+++ b/osm/include/opensm/osm_sa_mft_record.h
@@ -99,13 +99,13 @@ BEGIN_C_DECLS
*/
typedef struct _osm_mft
{
- osm_subn_t* p_subn;
- osm_stats_t* p_stats;
- osm_sa_resp_t* p_resp;
- osm_mad_pool_t* p_mad_pool;
- osm_log_t* p_log;
- cl_plock_t* p_lock;
- cl_qlock_pool_t pool;
+ osm_subn_t* p_subn;
+ osm_stats_t* p_stats;
+ osm_sa_resp_t* p_resp;
+ osm_mad_pool_t* p_mad_pool;
+ osm_log_t* p_log;
+ cl_plock_t* p_lock;
+ cl_qlock_pool_t pool;
} osm_mftr_rcv_t;
/*
* FIELDS
@@ -253,14 +253,14 @@ ib_api_status_t osm_mftr_rcv_init(
* SYNOPSIS
*/
void osm_mftr_rcv_process(
- IN osm_mftr_rcv_t* const p_ctrl,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_mftr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the switch node's MulticastForwardingTable attribute.
*
diff --git a/osm/include/opensm/osm_sa_mft_record_ctrl.h b/osm/include/opensm/osm_sa_mft_record_ctrl.h
deleted file mode 100644
index a28374d..0000000
--- a/osm/include/opensm/osm_sa_mft_record_ctrl.h
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_mftr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA
- * MulticastForwardingTable attribute from a switch.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#ifndef _OSM_MFTR_RCV_CTRL_H_
-#define _OSM_MFTR_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_mft_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Multicast Forwarding Table Receive Controller
-* NAME
-* Multicast Forwarding Table Record Receive Controller
-*
-* DESCRIPTION
-* The Multicast Forwarding Table Receive Controller object encapsulates
-* the information needed to receive the MulticastFowardingTable attribute
-* from a switch node.
-*
-* The Multicast Forwarding Table Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Hal Rosenstock, Voltaire
-*
-*********/
-
-/****s* OpenSM: Multicast Forwarding Table Receive Controller/osm_mftr_rcv_ctrl_t
-* NAME
-* osm_mftr_rcv_ctrl_t
-*
-* DESCRIPTION
-* Multicast Forwarding Table Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_mftr_rcv_ctrl
-{
- osm_mftr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-} osm_mftr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Multicast Forwarding Table Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Multicast Forwarding Table Receive Controller object
-* Multicast Forwarding Table Receiver object
-*********/
-
-/****f* OpenSM: Multicast Forwarding Table Receive Controller/osm_mftr_rcv_ctrl_construct
-* NAME
-* osm_mftr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Multicast Forwarding Table Receive
-* Controller object.
-*
-* SYNOPSIS
-*/
-void osm_mftr_rcv_ctrl_construct(
- IN osm_mftr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Multicast Forwarding Table Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_mftr_rcv_ctrl_init, osm_mftr_rcv_ctrl_destroy
-*
-* Calling osm_mftr_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_mftr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Multicast Forwarding Table Receive Controller object, osm_mftr_rcv_ctrl_init,
-* osm_mftr_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: Multicast Forwarding Table Receive Controller/osm_mftr_rcv_ctrl_destroy
-* NAME
-* osm_mftr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_mftr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_mftr_rcv_ctrl_destroy(
- IN osm_mftr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Multicast Forwarding Table Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_mftr_rcv_ctrl_construct or osm_mftr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Multicast Forwarding Table Receive Controller object, osm_mftr_rcv_ctrl_construct,
-* osm_mftr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Multicast Forwarding Table Receive Controller/osm_mftr_rcv_ctrl_init
-* NAME
-* osm_mftr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_mftr_rcv_ctrl_init function initializes a
-* Multicast Forwarding Table Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_mftr_rcv_ctrl_init(
- IN osm_mftr_rcv_ctrl_t* const p_ctrl,
- IN osm_mftr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_mftr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_mftr_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the Multicast Forwarding Table Receive Controller object
-* was initialized successfully.
-*
-* NOTES
-* Allows calling other Multicast Forwarding Table Receive Controller methods.
-*
-* SEE ALSO
-* Multicast Forwarding Table Receive Controller object,
-* osm_mftr_rcv_ctrl_construct, osm_mftr_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_MFTR_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_multipath_record.h b/osm/include/opensm/osm_sa_multipath_record.h
index d647227..6f99ec9 100644
--- a/osm/include/opensm/osm_sa_multipath_record.h
+++ b/osm/include/opensm/osm_sa_multipath_record.h
@@ -247,14 +247,14 @@ osm_mpr_rcv_init(
*/
void
osm_mpr_rcv_process(
- IN osm_mpr_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_mpr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's MultiPathRecord attribute.
*
diff --git a/osm/include/opensm/osm_sa_multipath_record_ctrl.h b/osm/include/opensm/osm_sa_multipath_record_ctrl.h
deleted file mode 100644
index ca618f9..0000000
--- a/osm/include/opensm/osm_sa_multipath_record_ctrl.h
+++ /dev/null
@@ -1,260 +0,0 @@
-/*
- * Copyright (c) 2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_mpr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA
- * MultiPathRecord attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#ifndef _OSM_MPRCTRL_H_
-#define _OSM_MPRCTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_multipath_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/MultiPath Record Receive Controller
-* NAME
-* MultiPath Record Receive Controller
-*
-* DESCRIPTION
-* The MultiPath Record Receive Controller object encapsulates
-* the information needed to receive the MultiPathRecord attribute from a node.
-*
-* The MultiPath record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Hal Rosenstock, Voltaire
-*
-*********/
-
-/****s* OpenSM: MultiPath Record Receive Controller/osm_mpr_rcv_ctrl_t
-* NAME
-* osm_mpr_rcv_ctrl_t
-*
-* DESCRIPTION
-* MultiPath Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_mpr_rcv_ctrl
-{
- osm_mpr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_mpr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the MultiPath Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* MultiPath Record Receive Controller object
-* MultiPath Record Receiver object
-*********/
-
-/****f* OpenSM: MultiPath Record Receive Controller/osm_pr_rcv_ctrl_construct
-* NAME
-* osm_mpr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a MultiPath Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_mpr_rcv_ctrl_construct(
- IN osm_mpr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a MultiPath Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_mpr_rcv_ctrl_init, osm_mpr_rcv_ctrl_destroy,
-* and osm_mpr_rcv_ctrl_is_inited.
-*
-* Calling osm_mpr_rcv_ctrl_construct is a prerequisite to calling any
-* other method except osm_mpr_rcv_ctrl_init.
-*
-* SEE ALSO
-* MultiPath Record Receive Controller object, osm_mpr_rcv_ctrl_init,
-* osm_mpr_rcv_ctrl_destroy, osm_mpr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: MultiPath Record Receive Controller/osm_mpr_rcv_ctrl_destroy
-* NAME
-* osm_mpr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_mpr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_mpr_rcv_ctrl_destroy(
- IN osm_mpr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* MultiPath Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_mpr_rcv_ctrl_construct or osm_mpr_rcv_ctrl_init.
-*
-* SEE ALSO
-* MultiPath Record Receive Controller object, osm_mpr_rcv_ctrl_construct,
-* osm_mpr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: MultiPath Record Receive Controller/osm_mpr_rcv_ctrl_init
-* NAME
-* osm_mpr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_mpr_rcv_ctrl_init function initializes a
-* MultiPath Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_mpr_rcv_ctrl_init(
- IN osm_mpr_rcv_ctrl_t* const p_ctrl,
- IN osm_mpr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_mpr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_mpr_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the MultiPath Record Receive Controller object was
-* initialized successfully.
-*
-* NOTES
-* Allows calling other MultiPath Record Receive Controller methods.
-*
-* SEE ALSO
-* MultiPath Record Receive Controller object, osm_pr_rcv_ctrl_construct,
-* osm_mpr_rcv_ctrl_destroy, osm_mpr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: MultiPath Record Receive Controller/osm_mpr_rcv_ctrl_is_inited
-* NAME
-* osm_mpr_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_mpr_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_mpr_rcv_ctrl_is_inited(
- IN const osm_mpr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_mpr_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_mpr_rcv_ctrl_construct or osm_mpr_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* MultiPath Record Receive Controller object, osm_mpr_rcv_ctrl_construct,
-* osm_mpr_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_MPRCTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_node_record.h b/osm/include/opensm/osm_sa_node_record.h
index f796eda..c0e8988 100644
--- a/osm/include/opensm/osm_sa_node_record.h
+++ b/osm/include/opensm/osm_sa_node_record.h
@@ -99,13 +99,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_nr_recv
{
- const osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pool;
-
+ const osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t pool;
} osm_nr_rcv_t;
/*
* FIELDS
@@ -252,14 +251,14 @@ ib_api_status_t osm_nr_rcv_init(
* SYNOPSIS
*/
void osm_nr_rcv_process(
- IN osm_nr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_nr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's NodeRecord attribute.
*
diff --git a/osm/include/opensm/osm_sa_node_record_ctrl.h b/osm/include/opensm/osm_sa_node_record_ctrl.h
deleted file mode 100644
index 02b60b3..0000000
--- a/osm/include/opensm/osm_sa_node_record_ctrl.h
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_nr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA NodeInfo
- * record from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_NR_CTRL_H_
-#define _OSM_NR_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_node_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Node Record Receive Controller
-* NAME
-* Node Record Receive Controller
-*
-* DESCRIPTION
-* The Node Record Receive Controller object encapsulates
-* the information needed to receive the NodeInfo attribute from a node.
-*
-* The Node Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Anil S Keshavamurthy, Intel
-*
-*********/
-
-/****s* OpenSM: Node Record Receive Controller/osm_nr_rcv_ctrl_t
-* NAME
-* osm_nr_rcv_ctrl_t
-*
-* DESCRIPTION
-* Node Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_nr_ctrl
-{
- osm_nr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_nr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Node Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Node Record Receive Controller object
-* Node Record Receiver object
-*********/
-
-/****f* OpenSM: Node Record Receive Controller/osm_nr_rcv_ctrl_construct
-* NAME
-* osm_nr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Node Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_nr_rcv_ctrl_construct(
- IN osm_nr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Node Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_nr_rcv_ctrl_init, osm_nr_rcv_ctrl_destroy,
-*
-* Calling osm_nr_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_nr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Node Record Receive Controller object, osm_nr_rcv_ctrl_init,
-* osm_nr_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: Node Record Receive Controller/osm_nr_rcv_ctrl_destroy
-* NAME
-* osm_nr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_nr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_nr_rcv_ctrl_destroy(
- IN osm_nr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Node Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_nr_rcv_ctrl_construct or osm_nr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Node Record Receive Controller object, osm_nr_rcv_ctrl_construct,
-* osm_nr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Node Record Receive Controller/osm_nr_rcv_ctrl_init
-* NAME
-* osm_nr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_nr_rcv_ctrl_init function initializes a
-* Node Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_nr_rcv_ctrl_init(
- IN osm_nr_rcv_ctrl_t* const p_ctrl,
- IN osm_nr_rcv_t* const p_nr,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_nr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_nr_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the Node Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Node Record Receive Controller methods.
-*
-* SEE ALSO
-* Node Record Receive Controller object, osm_nr_rcv_ctrl_construct,
-* osm_nr_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_NR_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_path_record.h b/osm/include/opensm/osm_sa_path_record.h
index 9196960..29667ef 100644
--- a/osm/include/opensm/osm_sa_path_record.h
+++ b/osm/include/opensm/osm_sa_path_record.h
@@ -102,12 +102,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_pr_rcv
{
- osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pr_pool;
+ osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t pr_pool;
} osm_pr_rcv_t;
/*
* FIELDS
@@ -248,14 +248,14 @@ osm_pr_rcv_init(
*/
void
osm_pr_rcv_process(
- IN osm_pr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_pr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's PathRecord attribute.
*
diff --git a/osm/include/opensm/osm_sa_path_record_ctrl.h b/osm/include/opensm/osm_sa_path_record_ctrl.h
deleted file mode 100644
index 7fba54a..0000000
--- a/osm/include/opensm/osm_sa_path_record_ctrl.h
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_pr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA PathRecord
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_PRCTRL_H_
-#define _OSM_PRCTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_path_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Path Record Receive Controller
-* NAME
-* Path Record Receive Controller
-*
-* DESCRIPTION
-* The Path Record Receive Controller object encapsulates
-* the information needed to receive the PathRecord attribute from a node.
-*
-* The Path record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Ranjit Pandit, Intel
-*
-*********/
-
-/****s* OpenSM: Path Record Receive Controller/osm_pr_rcv_ctrl_t
-* NAME
-* osm_pr_rcv_ctrl_t
-*
-* DESCRIPTION
-* Path Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_pr_rcv_ctrl
-{
- osm_pr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_pr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Path Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Path Record Receive Controller object
-* Path Record Receiver object
-*********/
-
-/****f* OpenSM: Path Record Receive Controller/osm_pr_rcv_ctrl_construct
-* NAME
-* osm_pr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Path Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_pr_rcv_ctrl_construct(
- IN osm_pr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Path Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_pr_rcv_ctrl_init, osm_pr_rcv_ctrl_destroy,
-* and osm_pr_rcv_ctrl_is_inited.
-*
-* Calling osm_pr_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_pr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Path Record Receive Controller object, osm_pr_rcv_ctrl_init,
-* osm_pr_rcv_ctrl_destroy, osm_pr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Path Record Receive Controller/osm_pr_rcv_ctrl_destroy
-* NAME
-* osm_pr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_pr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_pr_rcv_ctrl_destroy(
- IN osm_pr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Path Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_pr_rcv_ctrl_construct or osm_pr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Path Record Receive Controller object, osm_pr_rcv_ctrl_construct,
-* osm_pr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Path Record Receive Controller/osm_pr_rcv_ctrl_init
-* NAME
-* osm_pr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_pr_rcv_ctrl_init function initializes a
-* Path Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_pr_rcv_ctrl_init(
- IN osm_pr_rcv_ctrl_t* const p_ctrl,
- IN osm_pr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_pr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_pr_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the Path Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Path Record Receive Controller methods.
-*
-* SEE ALSO
-* Path Record Receive Controller object, osm_pr_rcv_ctrl_construct,
-* osm_pr_rcv_ctrl_destroy, osm_pr_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Path Record Receive Controller/osm_pr_rcv_ctrl_is_inited
-* NAME
-* osm_pr_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_pr_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_pr_rcv_ctrl_is_inited(
- IN const osm_pr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_pr_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_pr_rcv_ctrl_construct or osm_pr_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Path Record Receive Controller object, osm_pr_rcv_ctrl_construct,
-* osm_pr_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_PRCTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_pkey_record.h b/osm/include/opensm/osm_sa_pkey_record.h
index f4eb73d..aceab9a 100644
--- a/osm/include/opensm/osm_sa_pkey_record.h
+++ b/osm/include/opensm/osm_sa_pkey_record.h
@@ -87,13 +87,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_pkey_rec_rcv
{
- const osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pool;
-
+ const osm_subn_t* p_subn;
+ osm_sa_resp_t* p_resp;
+ osm_mad_pool_t* p_mad_pool;
+ osm_log_t* p_log;
+ cl_plock_t* p_lock;
+ cl_qlock_pool_t pool;
} osm_pkey_rec_rcv_t;
/*
* FIELDS
@@ -242,14 +241,14 @@ osm_pkey_rec_rcv_init(
*/
void
osm_pkey_rec_rcv_process(
- IN osm_pkey_rec_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_pkey_rec_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the P_Key Record Query attribute.
*
diff --git a/osm/include/opensm/osm_sa_pkey_record_ctrl.h b/osm/include/opensm/osm_sa_pkey_record_ctrl.h
deleted file mode 100644
index e655692..0000000
--- a/osm/include/opensm/osm_sa_pkey_record_ctrl.h
+++ /dev/null
@@ -1,218 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-#ifndef _OSM_PKEY_REC_CTRL_H_
-#define _OSM_PKEY_REC_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_pkey_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/P_Key Record Receive Controller
-* NAME
-* P_Key Record Receive Controller
-*
-* DESCRIPTION
-* The P_Key Record Receive Controller object encapsulates
-* the information needed to handle P_Key record query from SA client.
-*
-* The P_Key Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Yael Kalka, Mellanox
-*
-*********/
-
-/****s* OpenSM: P_Key Record Receive Controller/osm_pkey_rec_rcv_ctrl_t
-* NAME
-* osm_pkey_rec_rcv_ctrl_t
-*
-* DESCRIPTION
-* P_Key Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_pkey_rec_rcv_ctrl
-{
- osm_pkey_rec_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_pkey_rec_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the P_Key Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* P_Key Record Receive Controller object
-* P_Key Record Receiver object
-*********/
-
-/****f* OpenSM: P_Key Record Receive Controller/osm_pkey_rec_rcv_ctrl_construct
-* NAME
-* osm_pkey_rec_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a P_Key Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_pkey_rec_rcv_ctrl_construct(
- IN osm_pkey_rec_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a P_Key Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_pkey_rec_rcv_ctrl_init, osm_pkey_rec_rcv_ctrl_destroy
-*
-* Calling osm_pkey_rec_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_pkey_rec_rcv_ctrl_init.
-*
-* SEE ALSO
-* P_Key Record Receive Controller object, osm_pkey_rec_rcv_ctrl_init,
-* osm_pkey_rec_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: P_Key Record Receive Controller/osm_pkey_rec_rcv_ctrl_destroy
-* NAME
-* osm_pkey_rec_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_pkey_rec_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_pkey_rec_rcv_ctrl_destroy(
- IN osm_pkey_rec_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* P_Key Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_pkey_rec_rcv_ctrl_construct or osm_pkey_rec_rcv_ctrl_init.
-*
-* SEE ALSO
-* P_Key Record Receive Controller object, osm_pkey_rec_rcv_ctrl_construct,
-* osm_pkey_rec_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: P_Key Record Receive Controller/osm_pkey_rec_rcv_ctrl_init
-* NAME
-* osm_pkey_rec_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_pkey_rec_rcv_ctrl_init function initializes a
-* P_Key Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_pkey_rec_rcv_ctrl_init(
- IN osm_pkey_rec_rcv_ctrl_t* const p_ctrl,
- IN osm_pkey_rec_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_pkey_rec_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_pkey_rec_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the P_Key Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other P_Key Record Receive Controller methods.
-*
-* SEE ALSO
-* P_Key Record Receive Controller object, osm_pkey_rec_rcv_ctrl_construct,
-* osm_pkey_rec_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_PKEY_REC_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_portinfo_record.h b/osm/include/opensm/osm_sa_portinfo_record.h
index 6cd7e87..19cbfbf 100644
--- a/osm/include/opensm/osm_sa_portinfo_record.h
+++ b/osm/include/opensm/osm_sa_portinfo_record.h
@@ -100,12 +100,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_pir_rcv
{
- osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pool;
+ osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t pool;
} osm_pir_rcv_t;
/*
* FIELDS
@@ -254,14 +254,14 @@ osm_pir_rcv_init(
*/
void
osm_pir_rcv_process(
- IN osm_pir_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_pir_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's PortInfoRecord attribute.
*
diff --git a/osm/include/opensm/osm_sa_portinfo_record_ctrl.h b/osm/include/opensm/osm_sa_portinfo_record_ctrl.h
deleted file mode 100644
index 313fe03..0000000
--- a/osm/include/opensm/osm_sa_portinfo_record_ctrl.h
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_pir_rcv_ctrl_t.
- * This object represents a controller that receives the IBA PortInfo
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_PIR_CTRL_H_
-#define _OSM_PIR_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_portinfo_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/PortInfo Record Receive Controller
-* NAME
-* PortInfo Record Receive Controller
-*
-* DESCRIPTION
-* The PortInfo Record Receive Controller object encapsulates
-* the information needed to receive the PortInfo attribute from a node.
-*
-* The PortInfo Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Ranjit Pandit, Intel
-*
-*********/
-
-/****s* OpenSM: PortInfo Record Receive Controller/osm_pir_rcv_ctrl_t
-* NAME
-* osm_pir_rcv_ctrl_t
-*
-* DESCRIPTION
-* PortInfo Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_pir_rcv_ctrl
-{
- osm_pir_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_pir_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the PortInfo Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* PortInfo Record Receive Controller object
-* PortInfo Record Receiver object
-*********/
-
-/****f* OpenSM: PortInfo Record Receive Controller/osm_pir_rcv_ctrl_construct
-* NAME
-* osm_pir_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a PortInfo Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_pir_rcv_ctrl_construct(
- IN osm_pir_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a PortInfo Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_pir_rcv_ctrl_init, osm_pir_rcv_ctrl_destroy
-*
-* Calling osm_pir_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_pir_rcv_ctrl_init.
-*
-* SEE ALSO
-* PortInfo Record Receive Controller object, osm_pir_rcv_ctrl_init,
-* osm_pir_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: PortInfo Record Receive Controller/osm_pir_rcv_ctrl_destroy
-* NAME
-* osm_pir_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_pir_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_pir_rcv_ctrl_destroy(
- IN osm_pir_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* PortInfo Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_pir_rcv_ctrl_construct or osm_pir_rcv_ctrl_init.
-*
-* SEE ALSO
-* PortInfo Record Receive Controller object, osm_pir_rcv_ctrl_construct,
-* osm_pir_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: PortInfo Record Receive Controller/osm_pir_rcv_ctrl_init
-* NAME
-* osm_pir_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_pir_rcv_ctrl_init function initializes a
-* PortInfo Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_pir_rcv_ctrl_init(
- IN osm_pir_rcv_ctrl_t* const p_ctrl,
- IN osm_pir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_pir_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_pir_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the PortInfo Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other PortInfo Record Receive Controller methods.
-*
-* SEE ALSO
-* PortInfo Record Receive Controller object, osm_pir_rcv_ctrl_construct,
-* osm_pir_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_PIR_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_service_record.h b/osm/include/opensm/osm_sa_service_record.h
index 8fb9ce4..d485509 100644
--- a/osm/include/opensm/osm_sa_service_record.h
+++ b/osm/include/opensm/osm_sa_service_record.h
@@ -102,14 +102,13 @@ BEGIN_C_DECLS
*/
typedef struct _osm_sr_rcv
{
- osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t sr_pool;
- cl_timer_t sr_timer;
-
+ osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t sr_pool;
+ cl_timer_t sr_timer;
} osm_sr_rcv_t;
/*
* FIELDS
@@ -250,14 +249,14 @@ osm_sr_rcv_init(
*/
void
osm_sr_rcv_process(
- IN osm_sr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_sr_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's ServiceRecord attribute.
* NOTES
diff --git a/osm/include/opensm/osm_sa_service_record_ctrl.h b/osm/include/opensm/osm_sa_service_record_ctrl.h
deleted file mode 100644
index 1e1bd99..0000000
--- a/osm/include/opensm/osm_sa_service_record_ctrl.h
+++ /dev/null
@@ -1,230 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_sr_rcv_ctrl_t.
- * This object represents a controller that receives the IBA Service
- * record attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_SRCTRL_H_
-#define _OSM_SRCTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_service_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Service Record Receive Controller
-* NAME
-* Service Record Receive Controller
-*
-* DESCRIPTION
-* The Service Record Receive Controller object encapsulates
-* the information needed to receive the Service Record attribute from a node.
-*
-* The Service Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Anil S Keshavamurthy, Intel
-*
-*********/
-
-/****s* OpenSM: Service Record Receive Controller/osm_sr_rcv_ctrl_t
-* NAME
-* osm_sr_rcv_ctrl_t
-*
-* DESCRIPTION
-* Service Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_sr_rcv_ctrl
-{
- osm_sr_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_sr_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Service Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Service Record Receiver object
-*********/
-
-/****f* OpenSM: Service Record Receive Controller/osm_sr_rcv_ctrl_construct
-* NAME
-* osm_sr_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Service Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_sr_rcv_ctrl_construct(
- IN osm_sr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Service Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_sr_rcv_ctrl_init, osm_sr_rcv_ctrl_destroy,
-*
-* Calling osm_sr_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_psr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Service Record Receive Controller object, osm_sr_rcv_ctrl_init,
-* osm_sr_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: Service Record Receive Controller/osm_sr_rcv_ctrl_destroy
-* NAME
-* osm_sr_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_sr_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_sr_rcv_ctrl_destroy(
- IN osm_sr_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Service Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_sr_rcv_ctrl_construct or osm_sr_rcv_ctrl_init.
-*
-* SEE ALSO
-* Service Record Receive Controller object, osm_sr_rcv_ctrl_construct,
-* osm_sr_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Service Record Receive Controller/osm_sr_rcv_ctrl_init
-* NAME
-* osm_sr_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_sr_rcv_ctrl_init function initializes a
-* Service Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_sr_rcv_ctrl_init(
- IN osm_sr_rcv_ctrl_t* const p_ctrl,
- IN osm_sr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_sr_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_sr_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* IB_SUCCESS if the osm_sr_rcv_t Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Service Record Receive Controller methods.
-*
-* SEE ALSO
-* Service Record Receive Controller object, osm_sr_rcv_ctrl_construct,
-* osm_sr_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_SRCTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_slvl_record.h b/osm/include/opensm/osm_sa_slvl_record.h
index f4409d1..a5ce9b4 100644
--- a/osm/include/opensm/osm_sa_slvl_record.h
+++ b/osm/include/opensm/osm_sa_slvl_record.h
@@ -100,13 +100,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_slvl_rec_rcv
{
- const osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pool;
-
+ const osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t pool;
} osm_slvl_rec_rcv_t;
/*
* FIELDS
@@ -255,14 +254,14 @@ osm_slvl_rec_rcv_init(
*/
void
osm_slvl_rec_rcv_process(
- IN osm_slvl_rec_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_slvl_rec_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the SLtoVL Map Record Query attribute.
*
diff --git a/osm/include/opensm/osm_sa_slvl_record_ctrl.h b/osm/include/opensm/osm_sa_slvl_record_ctrl.h
deleted file mode 100644
index 6fdf77a..0000000
--- a/osm/include/opensm/osm_sa_slvl_record_ctrl.h
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_sa_slvl_rec_rcv_ctrl_t.
- * This object represents a controller that receives the IBA VL Arbitration
- * record query from SA client.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.3 $
- */
-
-#ifndef _OSM_SLVL_REC_CTRL_H_
-#define _OSM_SLVL_REC_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_slvl_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/SLtoVL Record Receive Controller
-* NAME
-* SLtoVL Record Receive Controller
-*
-* DESCRIPTION
-* The SLtoVL Mapping Record Receive Controller object encapsulates
-* the information needed to handle SLtoVL Mapping record query from SA client.
-*
-* The SLtoVL Mapping Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Eitan Zahavi, Mellanox
-*
-*********/
-
-/****s* OpenSM: SLtoVL Mapping Record Receive Controller/osm_slvl_rec_rcv_ctrl_t
-* NAME
-* osm_slvl_rec_rcv_ctrl_t
-*
-* DESCRIPTION
-* SLtoVL Mapping Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_slvl_rec_rcv_ctrl
-{
- osm_slvl_rec_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_slvl_rec_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the SLtoVL Mapping Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* SLtoVL Mapping Record Receive Controller object
-* SLtoVL Mapping Record Receiver object
-*********/
-
-/****f* OpenSM: SLtoVL Mapping Record Receive Controller/osm_slvl_rec_rcv_ctrl_construct
-* NAME
-* osm_slvl_rec_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a SLtoVL Mapping Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_slvl_rec_rcv_ctrl_construct(
- IN osm_slvl_rec_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a SLtoVL Mapping Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_slvl_rec_rcv_ctrl_init, osm_slvl_rec_rcv_ctrl_destroy
-*
-* Calling osm_slvl_rec_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_slvl_rec_rcv_ctrl_init.
-*
-* SEE ALSO
-* SLtoVL Mapping Record Receive Controller object, osm_slvl_rec_rcv_ctrl_init,
-* osm_slvl_rec_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: SLtoVL Mapping Record Receive Controller/osm_slvl_rec_rcv_ctrl_destroy
-* NAME
-* osm_slvl_rec_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_slvl_rec_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_slvl_rec_rcv_ctrl_destroy(
- IN osm_slvl_rec_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* SLtoVL Mapping Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_slvl_rec_rcv_ctrl_construct or osm_slvl_rec_rcv_ctrl_init.
-*
-* SEE ALSO
-* SLtoVL Mapping Record Receive Controller object, osm_slvl_rec_rcv_ctrl_construct,
-* osm_slvl_rec_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: SLtoVL Mapping Record Receive Controller/osm_slvl_rec_rcv_ctrl_init
-* NAME
-* osm_slvl_rec_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_slvl_rec_rcv_ctrl_init function initializes a
-* SLtoVL Mapping Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_slvl_rec_rcv_ctrl_init(
- IN osm_slvl_rec_rcv_ctrl_t* const p_ctrl,
- IN osm_slvl_rec_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_slvl_rec_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_slvl_rec_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the SLtoVL Mapping Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other SLtoVL Mapping Record Receive Controller methods.
-*
-* SEE ALSO
-* SLtoVL Mapping Record Receive Controller object, osm_slvl_rec_rcv_ctrl_construct,
-* osm_slvl_rec_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_SLVL_REC_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_sminfo_record.h b/osm/include/opensm/osm_sa_sminfo_record.h
index cafc09b..0020c4f 100644
--- a/osm/include/opensm/osm_sa_sminfo_record.h
+++ b/osm/include/opensm/osm_sa_sminfo_record.h
@@ -99,13 +99,13 @@ BEGIN_C_DECLS
*/
typedef struct _osm_smir
{
- osm_subn_t* p_subn;
- osm_stats_t* p_stats;
- osm_sa_resp_t* p_resp;
- osm_mad_pool_t* p_mad_pool;
- osm_log_t* p_log;
- cl_plock_t* p_lock;
- cl_qlock_pool_t pool;
+ osm_subn_t* p_subn;
+ osm_stats_t* p_stats;
+ osm_sa_resp_t* p_resp;
+ osm_mad_pool_t* p_mad_pool;
+ osm_log_t* p_log;
+ cl_plock_t* p_lock;
+ cl_qlock_pool_t pool;
} osm_smir_rcv_t;
/*
* FIELDS
@@ -236,14 +236,14 @@ ib_api_status_t osm_smir_rcv_init(
* SYNOPSIS
*/
void osm_smir_rcv_process(
- IN osm_smir_rcv_t* const p_ctrl,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_smir_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's SMInfoRecord attribute.
*
diff --git a/osm/include/opensm/osm_sa_sminfo_record_ctrl.h b/osm/include/opensm/osm_sa_sminfo_record_ctrl.h
deleted file mode 100644
index d51a947..0000000
--- a/osm/include/opensm/osm_sa_sminfo_record_ctrl.h
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_smir_ctrl_t.
- * This object represents a controller that receives the IBA SMInfo
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_SMIR_CTRL_H_
-#define _OSM_SMIR_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_sminfo_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/SM Info Receive Controller
-* NAME
-* SM Info Receive Controller
-*
-* DESCRIPTION
-* The SM Info Receive Controller object encapsulates
-* the information needed to receive the SMInfo attribute from a node.
-*
-* The SM Info Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Ranjit Pandit, Intel
-*
-*********/
-
-/****s* OpenSM: SM Info Receive Controller/osm_smir_ctrl_t
-* NAME
-* osm_smir_ctrl_t
-*
-* DESCRIPTION
-* SM Info Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_smir_ctrl
-{
- osm_smir_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_smir_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the SM Info Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* SM Info Receive Controller object
-* SM Info Receiver object
-*********/
-
-/****f* OpenSM: SM Info Receive Controller/osm_smir_ctrl_construct
-* NAME
-* osm_smir_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a SM Info Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_smir_ctrl_construct(
- IN osm_smir_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a SM Info Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_smir_ctrl_init, osm_smir_ctrl_destroy
-*
-* Calling osm_smir_ctrl_construct is a prerequisite to calling any other
-* method except osm_smir_ctrl_init.
-*
-* SEE ALSO
-* SM Info Receive Controller object, osm_smir_ctrl_init,
-* osm_smir_ctrl_destroy
-*********/
-
-/****f* OpenSM: SM Info Receive Controller/osm_smir_ctrl_destroy
-* NAME
-* osm_smir_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_smir_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_smir_ctrl_destroy(
- IN osm_smir_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* SM Info Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_smir_ctrl_construct or osm_smir_ctrl_init.
-*
-* SEE ALSO
-* SM Info Receive Controller object, osm_smir_ctrl_construct,
-* osm_smir_ctrl_init
-*********/
-
-/****f* OpenSM: SM Info Receive Controller/osm_smir_ctrl_init
-* NAME
-* osm_smir_ctrl_init
-*
-* DESCRIPTION
-* The osm_smir_ctrl_init function initializes a
-* SM Info Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_smir_ctrl_init(
- IN osm_smir_ctrl_t* const p_ctrl,
- IN osm_smir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_smir_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_smir_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the SM Info Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other SM Info Receive Controller methods.
-*
-* SEE ALSO
-* SM Info Receive Controller object, osm_smir_ctrl_construct,
-* osm_smir_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_SMIR_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_sw_info_record.h b/osm/include/opensm/osm_sa_sw_info_record.h
index c6b421f..674b2f7 100644
--- a/osm/include/opensm/osm_sa_sw_info_record.h
+++ b/osm/include/opensm/osm_sa_sw_info_record.h
@@ -280,14 +280,14 @@ boolean_t osm_sir_rcv_is_inited(
* SYNOPSIS
*/
void osm_sir_rcv_process(
- IN osm_sir_rcv_t* const p_ctrl,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_sir_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's SwitchInfo attribute.
*
diff --git a/osm/include/opensm/osm_sa_sw_info_record_ctrl.h b/osm/include/opensm/osm_sa_sw_info_record_ctrl.h
deleted file mode 100644
index b58654f..0000000
--- a/osm/include/opensm/osm_sa_sw_info_record_ctrl.h
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_sir_rcv_ctrl_t.
- * This object represents a controller that receives the IBA SwitchInfo
- * attribute from a switch node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#ifndef _OSM_SIR_RCV_CTRL_H_
-#define _OSM_SIR_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_sa_sw_info_record.h>
-#include <opensm/osm_log.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Switch Info Receive Controller
-* NAME
-* Switch Info Receive Controller
-*
-* DESCRIPTION
-* The Switch Info Receive Controller object encapsulates the information
-* needed to receive the SwitchInfo attribute from a switch node.
-*
-* The Switch Info Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Hal Rosenstock, Voltaire
-*
-*********/
-
-/****s* OpenSM: Switch Info Receive Controller/osm_sir_rcv_ctrl_t
-* NAME
-* osm_sir_rcv_ctrl_t
-*
-* DESCRIPTION
-* Switch Info Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_sir_rcv_ctrl
-{
- osm_sir_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-} osm_sir_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Switch Info Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Switch Info Receive Controller object
-* Switch Info Receiver object
-*********/
-
-/****f* OpenSM: Switch Info Receive Controller/osm_sir_rcv_ctrl_construct
-* NAME
-* osm_sir_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Switch Info Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_sir_rcv_ctrl_construct(
- IN osm_sir_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Switch Info Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_sir_rcv_ctrl_init, osm_sir_rcv_ctrl_destroy,
-* and osm_sir_rcv_ctrl_is_inited.
-*
-* Calling osm_sir_rcv_ctrl_construct is a prerequisite to calling any
-* other method except osm_sir_rcv_ctrl_init.
-*
-* SEE ALSO
-* Switch Info Receive Controller object, osm_sir_rcv_ctrl_init,
-* osm_sir_rcv_ctrl_destroy, osm_sir_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Switch Info Receive Controller/osm_sir_rcv_ctrl_destroy
-* NAME
-* osm_sir_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_sir_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_sir_rcv_ctrl_destroy(
- IN osm_sir_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* Switch Info Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_sir_rcv_ctrl_construct or osm_sir_rcv_ctrl_init.
-*
-* SEE ALSO
-* Switch Info Receive Controller object, osm_sir_rcv_ctrl_construct,
-* osm_sir_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Switch Info Receive Controller/osm_sir_rcv_ctrl_init
-* NAME
-* osm_sir_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_sir_rcv_ctrl_init function initializes a
-* Switch Info Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_sir_rcv_ctrl_init(
- IN osm_sir_rcv_ctrl_t* const p_ctrl,
- IN osm_sir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_sir_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_sir_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the Switch Info Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Switch Info Receive Controller methods.
-*
-* SEE ALSO
-* Switch Info Receive Controller object, osm_sir_rcv_ctrl_construct,
-* osm_sir_rcv_ctrl_destroy, osm_sir_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Switch Info Receive Controller/osm_sir_rcv_ctrl_is_inited
-* NAME
-* osm_sir_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_sir_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_sir_rcv_ctrl_is_inited(
- IN const osm_sir_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_sir_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_sir_rcv_ctrl_construct or osm_sir_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Switch Info Receive Controller object, osm_sir_rcv_ctrl_construct,
-* osm_sir_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_SIR_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sa_vlarb_record.h b/osm/include/opensm/osm_sa_vlarb_record.h
index a30ebfd..4aad76f 100644
--- a/osm/include/opensm/osm_sa_vlarb_record.h
+++ b/osm/include/opensm/osm_sa_vlarb_record.h
@@ -100,12 +100,12 @@ BEGIN_C_DECLS
*/
typedef struct _osm_vlarb_rec_rcv
{
- const osm_subn_t *p_subn;
- osm_sa_resp_t *p_resp;
- osm_mad_pool_t *p_mad_pool;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
- cl_qlock_pool_t pool;
+ const osm_subn_t *p_subn;
+ osm_sa_resp_t *p_resp;
+ osm_mad_pool_t *p_mad_pool;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
+ cl_qlock_pool_t pool;
} osm_vlarb_rec_rcv_t;
/*
* FIELDS
@@ -254,14 +254,14 @@ osm_vlarb_rec_rcv_init(
*/
void
osm_vlarb_rec_rcv_process(
- IN osm_vlarb_rec_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_rcv
+* context
* [in] Pointer to an osm_vlarb_rec_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the VL Arbitration Record Query attribute.
*
diff --git a/osm/include/opensm/osm_sa_vlarb_record_ctrl.h b/osm/include/opensm/osm_sa_vlarb_record_ctrl.h
deleted file mode 100644
index b61960e..0000000
--- a/osm/include/opensm/osm_sa_vlarb_record_ctrl.h
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Declaration of osm_sa_vlarb_rec_rcv_ctrl_t.
- * This object represents a controller that receives the IBA VL Arbitration
- * record query from SA client.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.3 $
- */
-
-#ifndef _OSM_VLARB_REC_CTRL_H_
-#define _OSM_VLARB_REC_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_sa_vlarb_record.h>
-
-#ifdef __cplusplus
-# define BEGIN_C_DECLS extern "C" {
-# define END_C_DECLS }
-#else /* !__cplusplus */
-# define BEGIN_C_DECLS
-# define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/VLArbitration Record Receive Controller
-* NAME
-* VLArbitration Record Receive Controller
-*
-* DESCRIPTION
-* The VLArbitration Record Receive Controller object encapsulates
-* the information needed to handle VLArbitration record query from SA client.
-*
-* The VLArbitration Record Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Eitan Zahavi, Mellanox
-*
-*********/
-
-/****s* OpenSM: VLArbitration Record Receive Controller/osm_vlarb_rec_rcv_ctrl_t
-* NAME
-* osm_vlarb_rec_rcv_ctrl_t
-*
-* DESCRIPTION
-* VLArbitration Record Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_vlarb_rec_rcv_ctrl
-{
- osm_vlarb_rec_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_vlarb_rec_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the VLArbitration Record Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* VLArbitration Record Receive Controller object
-* VLArbitration Record Receiver object
-*********/
-
-/****f* OpenSM: VLArbitration Record Receive Controller/osm_vlarb_rec_rcv_ctrl_construct
-* NAME
-* osm_vlarb_rec_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a VLArbitration Record Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_vlarb_rec_rcv_ctrl_construct(
- IN osm_vlarb_rec_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a VLArbitration Record Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_vlarb_rec_rcv_ctrl_init, osm_vlarb_rec_rcv_ctrl_destroy
-*
-* Calling osm_vlarb_rec_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_vlarb_rec_rcv_ctrl_init.
-*
-* SEE ALSO
-* VLArbitration Record Receive Controller object, osm_vlarb_rec_rcv_ctrl_init,
-* osm_vlarb_rec_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: VLArbitration Record Receive Controller/osm_vlarb_rec_rcv_ctrl_destroy
-* NAME
-* osm_vlarb_rec_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_vlarb_rec_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_vlarb_rec_rcv_ctrl_destroy(
- IN osm_vlarb_rec_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to the object to destroy.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Performs any necessary cleanup of the specified
-* VLArbitration Record Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_vlarb_rec_rcv_ctrl_construct or osm_vlarb_rec_rcv_ctrl_init.
-*
-* SEE ALSO
-* VLArbitration Record Receive Controller object, osm_vlarb_rec_rcv_ctrl_construct,
-* osm_vlarb_rec_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: VLArbitration Record Receive Controller/osm_vlarb_rec_rcv_ctrl_init
-* NAME
-* osm_vlarb_rec_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_vlarb_rec_rcv_ctrl_init function initializes a
-* VLArbitration Record Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_vlarb_rec_rcv_ctrl_init(
- IN osm_vlarb_rec_rcv_ctrl_t* const p_ctrl,
- IN osm_vlarb_rec_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_vlarb_rec_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_vlarb_rec_rcv_t object.
-*
-* p_log
-* [in] Pointer to the log object.
-*
-* p_disp
-* [in] Pointer to the OpenSM central Dispatcher.
-*
-* RETURN VALUES
-* CL_SUCCESS if the VLArbitration Record Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other VLArbitration Record Receive Controller methods.
-*
-* SEE ALSO
-* VLArbitration Record Receive Controller object, osm_vlarb_rec_rcv_ctrl_construct,
-* osm_vlarb_rec_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_VLARB_REC_CTRL_H_ */
diff --git a/osm/opensm/Makefile.am b/osm/opensm/Makefile.am
index d9e63d4..de77a97 100644
--- a/osm/opensm/Makefile.am
+++ b/osm/opensm/Makefile.am
@@ -41,24 +41,24 @@ opensm_SOURCES = main.c osm_console.c osm_db_files.c \
osm_port_info_rcv.c \
osm_remote_sm.c osm_req.c osm_req_ctrl.c \
osm_resp.c osm_sa.c osm_sa_class_port_info.c \
- osm_sa_class_port_info_ctrl.c osm_sa_informinfo.c \
- osm_sa_informinfo_ctrl.c osm_sa_lft_record.c \
- osm_sa_lft_record_ctrl.c osm_sa_mft_record.c \
- osm_sa_mft_record_ctrl.c osm_sa_link_record.c \
- osm_sa_link_record_ctrl.c osm_sa_mad_ctrl.c \
- osm_sa_mcmember_record.c osm_sa_mcmember_record_ctrl.c \
- osm_sa_node_record.c osm_sa_node_record_ctrl.c \
- osm_sa_path_record.c osm_sa_path_record_ctrl.c \
- osm_sa_pkey_record.c osm_sa_pkey_record_ctrl.c \
- osm_sa_portinfo_record.c osm_sa_portinfo_record_ctrl.c \
- osm_sa_guidinfo_record.c osm_sa_guidinfo_record_ctrl.c \
- osm_sa_multipath_record.c osm_sa_multipath_record_ctrl.c \
+ osm_sa_informinfo.c \
+ osm_sa_lft_record.c \
+ osm_sa_mft_record.c \
+ osm_sa_link_record.c \
+ osm_sa_mad_ctrl.c \
+ osm_sa_mcmember_record.c \
+ osm_sa_node_record.c \
+ osm_sa_path_record.c \
+ osm_sa_pkey_record.c \
+ osm_sa_portinfo_record.c \
+ osm_sa_guidinfo_record.c \
+ osm_sa_multipath_record.c \
osm_sa_response.c osm_sa_service_record.c \
- osm_sa_service_record_ctrl.c osm_sa_slvl_record.c \
- osm_sa_slvl_record_ctrl.c osm_sa_sminfo_record.c \
- osm_sa_sminfo_record_ctrl.c osm_sa_vlarb_record.c \
- osm_sa_vlarb_record_ctrl.c osm_sa_sw_info_record.c \
- osm_sa_sw_info_record_ctrl.c osm_service.c \
+ osm_sa_slvl_record.c \
+ osm_sa_sminfo_record.c \
+ osm_sa_vlarb_record.c \
+ osm_sa_sw_info_record.c \
+ osm_service.c \
osm_slvl_map_rcv.c \
osm_sm.c osm_sminfo_rcv.c \
osm_sm_mad_ctrl.c \
diff --git a/osm/opensm/osm_sa.c b/osm/opensm/osm_sa.c
index 60dffd7..42a38aa 100644
--- a/osm/opensm/osm_sa.c
+++ b/osm/opensm/osm_sa.c
@@ -82,58 +82,25 @@ osm_sa_construct(
p_sa->state = OSM_SA_STATE_INIT;
p_sa->sa_trans_id = OSM_SA_INITIAL_TID_VALUE;
- osm_sa_mad_ctrl_construct( &p_sa->mad_ctrl );
osm_sa_resp_construct( &p_sa->resp );
-
osm_nr_rcv_construct( &p_sa->nr_rcv);
- osm_nr_rcv_ctrl_construct( &p_sa->nr_rcv_ctrl );
-
osm_pir_rcv_construct( &p_sa->pir_rcv );
- osm_pir_rcv_ctrl_construct( &p_sa->pir_rcv_ctrl );
-
osm_gir_rcv_construct( &p_sa->gir_rcv );
- osm_gir_rcv_ctrl_construct( &p_sa->gir_rcv_ctrl );
-
osm_lr_rcv_construct( &p_sa->lr_rcv );
- osm_lr_rcv_ctrl_construct( &p_sa->lr_rcv_ctrl );
-
osm_pr_rcv_construct( &p_sa->pr_rcv );
- osm_pr_rcv_ctrl_construct( &p_sa->pr_rcv_ctrl );
-
#if defined (VENDOR_RMPP_SUPPORT) && defined (DUAL_SIDED_RMPP)
osm_mpr_rcv_construct( &p_sa->mpr_rcv );
- osm_mpr_rcv_ctrl_construct( &p_sa->mpr_rcv_ctrl );
#endif
-
osm_smir_rcv_construct( &p_sa->smir_rcv );
- osm_smir_ctrl_construct( &p_sa->smir_ctrl );
-
osm_mcmr_rcv_construct(&p_sa->mcmr_rcv );
- osm_mcmr_rcv_ctrl_construct(&p_sa->mcmr_rcv_ctlr);
-
osm_sr_rcv_construct( &p_sa->sr_rcv );
- osm_sr_rcv_ctrl_construct( &p_sa->sr_rcv_ctrl );
-
osm_infr_rcv_construct( &p_sa->infr_rcv );
- osm_infr_rcv_ctrl_construct( &p_sa->infr_rcv_ctrl );
-
osm_vlarb_rec_rcv_construct( &p_sa->vlarb_rec_rcv );
- osm_vlarb_rec_rcv_ctrl_construct( &p_sa->vlarb_rec_rcv_ctrl );
-
osm_slvl_rec_rcv_construct( &p_sa->slvl_rec_rcv );
- osm_slvl_rec_rcv_ctrl_construct( &p_sa->slvl_rec_rcv_ctrl );
-
osm_pkey_rec_rcv_construct( &p_sa->pkey_rec_rcv );
- osm_pkey_rec_rcv_ctrl_construct( &p_sa->pkey_rec_rcv_ctrl );
-
osm_lftr_rcv_construct( &p_sa->lftr_rcv );
- osm_lftr_rcv_ctrl_construct( &p_sa->lftr_rcv_ctrl );
-
osm_sir_rcv_construct( &p_sa->sir_rcv );
- osm_sir_rcv_ctrl_construct( &p_sa->sir_rcv_ctrl );
-
osm_mftr_rcv_construct( &p_sa->mftr_rcv );
- osm_mftr_rcv_ctrl_construct( &p_sa->mftr_rcv_ctrl );
}
/**********************************************************************
@@ -149,24 +116,25 @@ osm_sa_shutdown(
status = osm_sa_mad_ctrl_unbind( &p_sa->mad_ctrl );
/* remove any registered dispatcher message */
- osm_nr_rcv_ctrl_destroy( &p_sa->nr_rcv_ctrl );
- osm_pir_rcv_ctrl_destroy( &p_sa->pir_rcv_ctrl );
- osm_gir_rcv_ctrl_destroy( &p_sa->gir_rcv_ctrl );
- osm_lr_rcv_ctrl_destroy( &p_sa->lr_rcv_ctrl );
- osm_pr_rcv_ctrl_destroy( &p_sa->pr_rcv_ctrl );
+ cl_disp_unregister( p_sa->nr_disp_h );
+ cl_disp_unregister( p_sa->pir_disp_h );
+ cl_disp_unregister( p_sa->gir_disp_h );
+ cl_disp_unregister( p_sa->lr_disp_h );
+ cl_disp_unregister( p_sa->pr_disp_h );
#if defined (VENDOR_RMPP_SUPPORT) && defined (DUAL_SIDED_RMPP)
- osm_mpr_rcv_ctrl_destroy( &p_sa->mpr_rcv_ctrl );
+ cl_disp_unregister( p_sa->mpr_disp_h );
#endif
- osm_smir_ctrl_destroy( &p_sa->smir_ctrl );
- osm_mcmr_rcv_ctrl_destroy( &p_sa->mcmr_rcv_ctlr);
- osm_sr_rcv_ctrl_destroy( &p_sa->sr_rcv_ctrl );
- osm_infr_rcv_ctrl_destroy( &p_sa->infr_rcv_ctrl );
- osm_vlarb_rec_rcv_ctrl_destroy( &p_sa->vlarb_rec_rcv_ctrl );
- osm_slvl_rec_rcv_ctrl_destroy( &p_sa->slvl_rec_rcv_ctrl );
- osm_pkey_rec_rcv_ctrl_destroy( &p_sa->pkey_rec_rcv_ctrl );
- osm_lftr_rcv_ctrl_destroy( &p_sa->lftr_rcv_ctrl );
- osm_sir_rcv_ctrl_destroy( &p_sa->sir_rcv_ctrl );
- osm_mftr_rcv_ctrl_destroy( &p_sa->mftr_rcv_ctrl );
+ cl_disp_unregister( p_sa->smir_disp_h );
+ cl_disp_unregister( p_sa->mcmr_disp_h);
+ cl_disp_unregister( p_sa->sr_disp_h );
+ cl_disp_unregister( p_sa->infr_disp_h );
+ cl_disp_unregister( p_sa->infir_disp_h );
+ cl_disp_unregister( p_sa->vlarb_disp_h );
+ cl_disp_unregister( p_sa->slvl_disp_h );
+ cl_disp_unregister( p_sa->pkey_disp_h );
+ cl_disp_unregister( p_sa->lft_disp_h );
+ cl_disp_unregister( p_sa->sir_disp_h );
+ cl_disp_unregister( p_sa->mft_disp_h );
osm_sa_mad_ctrl_destroy( &p_sa->mad_ctrl );
OSM_LOG_EXIT( p_sa->p_log );
@@ -260,14 +228,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_cpi_rcv_ctrl_init(
- &p_sa->cpi_rcv_ctrl,
- &p_sa->cpi_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_nr_rcv_init(
&p_sa->nr_rcv,
&p_sa->resp,
@@ -278,14 +238,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_nr_rcv_ctrl_init(
- &p_sa->nr_rcv_ctrl,
- &p_sa->nr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_pir_rcv_init(
&p_sa->pir_rcv,
&p_sa->resp,
@@ -296,14 +248,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_pir_rcv_ctrl_init(
- &p_sa->pir_rcv_ctrl,
- &p_sa->pir_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_gir_rcv_init(
&p_sa->gir_rcv,
&p_sa->resp,
@@ -314,14 +258,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_gir_rcv_ctrl_init(
- &p_sa->gir_rcv_ctrl,
- &p_sa->gir_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_lr_rcv_init(
&p_sa->lr_rcv,
&p_sa->resp,
@@ -332,14 +268,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_lr_rcv_ctrl_init(
- &p_sa->lr_rcv_ctrl,
- &p_sa->lr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_pr_rcv_init(
&p_sa->pr_rcv,
&p_sa->resp,
@@ -350,14 +278,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_pr_rcv_ctrl_init(
- &p_sa->pr_rcv_ctrl,
- &p_sa->pr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
#if defined (VENDOR_RMPP_SUPPORT) && defined (DUAL_SIDED_RMPP)
status = osm_mpr_rcv_init(
&p_sa->mpr_rcv,
@@ -368,14 +288,6 @@ osm_sa_init(
p_lock );
if( status != IB_SUCCESS )
goto Exit;
-
- status = osm_mpr_rcv_ctrl_init(
- &p_sa->mpr_rcv_ctrl,
- &p_sa->mpr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
#endif
status = osm_smir_rcv_init(
@@ -389,14 +301,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_smir_ctrl_init(
- &p_sa->smir_ctrl,
- &p_sa->smir_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_mcmr_rcv_init(
p_sm,
&p_sa->mcmr_rcv,
@@ -408,14 +312,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_mcmr_rcv_ctrl_init(
- &p_sa->mcmr_rcv_ctlr,
- &p_sa->mcmr_rcv,
- p_log,
- p_disp);
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_sr_rcv_init(
&p_sa->sr_rcv,
&p_sa->resp,
@@ -426,14 +322,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_sr_rcv_ctrl_init(
- &p_sa->sr_rcv_ctrl,
- &p_sa->sr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_infr_rcv_init(
&p_sa->infr_rcv,
&p_sa->resp,
@@ -444,14 +332,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_infr_rcv_ctrl_init(
- &p_sa->infr_rcv_ctrl,
- &p_sa->infr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_vlarb_rec_rcv_init(
&p_sa->vlarb_rec_rcv,
&p_sa->resp,
@@ -462,14 +342,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_vlarb_rec_rcv_ctrl_init(
- &p_sa->vlarb_rec_rcv_ctrl,
- &p_sa->vlarb_rec_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_slvl_rec_rcv_init(
&p_sa->slvl_rec_rcv,
&p_sa->resp,
@@ -480,14 +352,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_slvl_rec_rcv_ctrl_init(
- &p_sa->slvl_rec_rcv_ctrl,
- &p_sa->slvl_rec_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_pkey_rec_rcv_init(
&p_sa->pkey_rec_rcv,
&p_sa->resp,
@@ -498,14 +362,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_pkey_rec_rcv_ctrl_init(
- &p_sa->pkey_rec_rcv_ctrl,
- &p_sa->pkey_rec_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_lftr_rcv_init(
&p_sa->lftr_rcv,
&p_sa->resp,
@@ -516,14 +372,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_lftr_rcv_ctrl_init(
- &p_sa->lftr_rcv_ctrl,
- &p_sa->lftr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_sir_rcv_init(
&p_sa->sir_rcv,
&p_sa->resp,
@@ -534,14 +382,6 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_sir_rcv_ctrl_init(
- &p_sa->sir_rcv_ctrl,
- &p_sa->sir_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_mftr_rcv_init(
&p_sa->mftr_rcv,
&p_sa->resp,
@@ -552,12 +392,99 @@ osm_sa_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_mftr_rcv_ctrl_init(
- &p_sa->mftr_rcv_ctrl,
- &p_sa->mftr_rcv,
- p_log,
- p_disp );
- if( status != IB_SUCCESS )
+ p_sa->cpi_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_CLASS_PORT_INFO,
+ osm_cpi_rcv_process, &p_sa->cpi_rcv);
+ if( p_sa->cpi_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->nr_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_NODE_RECORD,
+ osm_nr_rcv_process, &p_sa->nr_rcv);
+ if( p_sa->nr_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->pir_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_PORTINFO_RECORD,
+ osm_pir_rcv_process, &p_sa->pir_rcv);
+ if( p_sa->pir_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->gir_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_GUIDINFO_RECORD,
+ osm_gir_rcv_process, &p_sa->gir_rcv);
+ if( p_sa->gir_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->lr_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_LINK_RECORD,
+ osm_lr_rcv_process, &p_sa->lr_rcv);
+ if( p_sa->lr_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->pr_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_PATH_RECORD,
+ osm_pr_rcv_process, &p_sa->pr_rcv);
+ if( p_sa->pr_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+#if defined (VENDOR_RMPP_SUPPORT) && defined (DUAL_SIDED_RMPP)
+ p_sa->mpr_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_MULTIPATH_RECORD,
+ osm_mpr_rcv_process, &p_sa->mpr_rcv);
+ if( p_sa->mpr_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+#endif
+
+ p_sa->smir_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_SMINFO_RECORD,
+ osm_smir_rcv_process, &p_sa->smir_rcv);
+ if( p_sa->smir_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->mcmr_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_MCMEMBER_RECORD,
+ osm_mcmr_rcv_process, &p_sa->mcmr_rcv);
+ if( p_sa->mcmr_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->sr_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_SERVICE_RECORD,
+ osm_sr_rcv_process, &p_sa->sr_rcv);
+ if( p_sa->sr_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->infr_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_INFORM_INFO,
+ osm_infr_rcv_process, &p_sa->infr_rcv);
+ if( p_sa->infr_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->infir_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_INFORM_INFO_RECORD,
+ osm_infir_rcv_process, &p_sa->infr_rcv);
+ if( p_sa->infir_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->vlarb_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_VL_ARB_RECORD,
+ osm_vlarb_rec_rcv_process,
+ &p_sa->vlarb_rec_rcv);
+ if( p_sa->vlarb_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->slvl_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_SLVL_TBL_RECORD,
+ osm_slvl_rec_rcv_process,
+ &p_sa->slvl_rec_rcv);
+ if( p_sa->slvl_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->pkey_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_PKEY_TBL_RECORD,
+ osm_pkey_rec_rcv_process,
+ &p_sa->pkey_rec_rcv);
+ if( p_sa->pkey_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->lft_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_LFT_RECORD,
+ osm_lftr_rcv_process, &p_sa->lftr_rcv);
+ if( p_sa->lft_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->sir_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_SWITCH_INFO_RECORD,
+ osm_sir_rcv_process, &p_sa->sir_rcv);
+ if( p_sa->sir_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sa->mft_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_MFT_RECORD,
+ osm_mftr_rcv_process, &p_sa->mftr_rcv);
+ if( p_sa->mft_disp_h == CL_DISP_INVALID_HANDLE )
goto Exit;
Exit:
diff --git a/osm/opensm/osm_sa_class_port_info.c b/osm/opensm/osm_sa_class_port_info.c
index 84fa016..da107ee 100644
--- a/osm/opensm/osm_sa_class_port_info.c
+++ b/osm/opensm/osm_sa_class_port_info.c
@@ -242,9 +242,11 @@ __osm_cpi_rcv_respond(
**********************************************************************/
void
osm_cpi_rcv_process(
- IN osm_cpi_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_cpi_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
const ib_path_rec_t* p_pr;
const ib_sa_mad_t* p_sa_mad;
diff --git a/osm/opensm/osm_sa_class_port_info_ctrl.c b/osm/opensm/osm_sa_class_port_info_ctrl.c
deleted file mode 100644
index 9197c0a..0000000
--- a/osm/opensm/osm_sa_class_port_info_ctrl.c
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_pr_rcv_ctrl_t.
- * This object represents the ClassPortInfo request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.3 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_class_port_info_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_cpi_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_cpi_rcv_process( ((osm_cpi_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_cpi_rcv_ctrl_construct(
- IN osm_cpi_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_cpi_rcv_ctrl_destroy(
- IN osm_cpi_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_cpi_rcv_ctrl_init(
- IN osm_cpi_rcv_ctrl_t* const p_ctrl,
- IN osm_cpi_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_cpi_rcv_ctrl_init );
-
- osm_cpi_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_CLASS_PORT_INFO,
- __osm_cpi_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_cpi_rcv_ctrl_init: ERR 1501: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_sa_guidinfo_record.c b/osm/opensm/osm_sa_guidinfo_record.c
index 5d7c4ba..10fac3c 100644
--- a/osm/opensm/osm_sa_guidinfo_record.c
+++ b/osm/opensm/osm_sa_guidinfo_record.c
@@ -392,9 +392,11 @@ __osm_sa_gir_by_comp_mask_cb(
**********************************************************************/
void
osm_gir_rcv_process(
- IN osm_gir_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_gir_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_guidinfo_record_t* p_rcvd_rec;
cl_qlist_t rec_list;
diff --git a/osm/opensm/osm_sa_guidinfo_record_ctrl.c b/osm/opensm/osm_sa_guidinfo_record_ctrl.c
deleted file mode 100644
index df1a230..0000000
--- a/osm/opensm/osm_sa_guidinfo_record_ctrl.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright (c) 2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_gir_rcv_ctrl_t.
- * This object represents the GUIDInfoRecord request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_guidinfo_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_gir_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_gir_rcv_process( ((osm_gir_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_gir_rcv_ctrl_construct(
- IN osm_gir_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_gir_rcv_ctrl_destroy(
- IN osm_gir_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_gir_rcv_ctrl_init(
- IN osm_gir_rcv_ctrl_t* const p_ctrl,
- IN osm_gir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_gir_rcv_ctrl_init );
-
- osm_gir_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_GUIDINFO_RECORD,
- __osm_gir_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_gir_rcv_ctrl_init: ERR 5201: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_informinfo.c b/osm/opensm/osm_sa_informinfo.c
index e427d5a..340a7f1 100644
--- a/osm/opensm/osm_sa_informinfo.c
+++ b/osm/opensm/osm_sa_informinfo.c
@@ -858,9 +858,11 @@ osm_infr_rcv_process_set_method(
**********************************************************************/
void
osm_infr_rcv_process(
- IN osm_infr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_infr_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_sa_mad_t *p_sa_mad;
OSM_LOG_ENTER( p_rcv->p_log, osm_infr_rcv_process );
@@ -891,9 +893,11 @@ osm_infr_rcv_process(
**********************************************************************/
void
osm_infir_rcv_process(
- IN osm_infr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_infr_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_sa_mad_t *p_sa_mad;
OSM_LOG_ENTER( p_rcv->p_log, osm_infr_rcv_process );
diff --git a/osm/opensm/osm_sa_informinfo_ctrl.c b/osm/opensm/osm_sa_informinfo_ctrl.c
deleted file mode 100644
index 1637155..0000000
--- a/osm/opensm/osm_sa_informinfo_ctrl.c
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Implementation of osm_infr_rcv_ctrl_t.
- * This object represents the InformInfo set request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_informinfo_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-static void
-__osm_infr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_infr_rcv_process( ((osm_infr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-static void
-__osm_infir_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_infir_rcv_process( ((osm_infr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_infr_rcv_ctrl_construct(
- IN osm_infr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
- p_ctrl->h_disp2 = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_infr_rcv_ctrl_destroy(
- IN osm_infr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp2 );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_infr_rcv_ctrl_init(
- IN osm_infr_rcv_ctrl_t* const p_ctrl,
- IN osm_infr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_infr_rcv_ctrl_init );
-
- osm_infr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_INFORM_INFO,
- __osm_infr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_infr_rcv_ctrl_init: ERR 1701: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- p_ctrl->h_disp2 = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_INFORM_INFO_RECORD,
- __osm_infir_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp2 == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_infr_rcv_ctrl_init: ERR 1702: "
- "Dispatcher registration failed\n" );
- cl_disp_unregister( p_ctrl->h_disp );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_lft_record.c b/osm/opensm/osm_sa_lft_record.c
index 46bebf2..b6333e7 100644
--- a/osm/opensm/osm_sa_lft_record.c
+++ b/osm/opensm/osm_sa_lft_record.c
@@ -298,9 +298,11 @@ __osm_lftr_rcv_by_comp_mask(
**********************************************************************/
void
osm_lftr_rcv_process(
- IN osm_lftr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_lftr_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_lft_record_t* p_rcvd_rec;
ib_lft_record_t* p_resp_rec;
diff --git a/osm/opensm/osm_sa_lft_record_ctrl.c b/osm/opensm/osm_sa_lft_record_ctrl.c
deleted file mode 100644
index 250e8e3..0000000
--- a/osm/opensm/osm_sa_lft_record_ctrl.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Implementation of osm_lftr_rcv_ctrl_t.
- * This object represents the LinearForwardingTable request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_lft_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_lftr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_lftr_rcv_process( ((osm_lftr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_lftr_rcv_ctrl_construct(
- IN osm_lftr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_lftr_rcv_ctrl_destroy(
- IN osm_lftr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_lftr_rcv_ctrl_init(
- IN osm_lftr_rcv_ctrl_t* const p_ctrl,
- IN osm_lftr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_lftr_rcv_ctrl_init );
-
- osm_lftr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_LFT_RECORD,
- __osm_lftr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_lftr_rcv_ctrl_init: ERR 4501: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_link_record.c b/osm/opensm/osm_sa_link_record.c
index e9518f4..169e75e 100644
--- a/osm/opensm/osm_sa_link_record.c
+++ b/osm/opensm/osm_sa_link_record.c
@@ -697,9 +697,11 @@ __osm_lr_rcv_respond(
**********************************************************************/
void
osm_lr_rcv_process(
- IN osm_lr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_lr_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
const ib_link_record_t* p_lr;
const ib_sa_mad_t* p_sa_mad;
const osm_port_t* p_src_port;
diff --git a/osm/opensm/osm_sa_link_record_ctrl.c b/osm/opensm/osm_sa_link_record_ctrl.c
deleted file mode 100644
index d95c8e3..0000000
--- a/osm/opensm/osm_sa_link_record_ctrl.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_lr_rcv_ctrl_t.
- * This object represents the link record controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.5 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_link_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_lr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_lr_rcv_process( ((osm_lr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_lr_rcv_ctrl_construct(
- IN osm_lr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_lr_rcv_ctrl_destroy(
- IN osm_lr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_lr_rcv_ctrl_init(
- IN osm_lr_rcv_ctrl_t* const p_ctrl,
- IN osm_lr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_lr_rcv_ctrl_init );
-
- osm_lr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_LINK_RECORD,
- __osm_lr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_lr_rcv_ctrl_init: ERR 1901: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
-
diff --git a/osm/opensm/osm_sa_mcmember_record.c b/osm/opensm/osm_sa_mcmember_record.c
index 819a2da..2c55198 100644
--- a/osm/opensm/osm_sa_mcmember_record.c
+++ b/osm/opensm/osm_sa_mcmember_record.c
@@ -2276,9 +2276,11 @@ __osm_mcmr_query_mgrp(IN osm_mcmr_recv_t* const p_rcv,
**********************************************************************/
void
osm_mcmr_rcv_process(
- IN osm_mcmr_recv_t* const p_rcv,
- const IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_mcmr_recv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_sa_mad_t *p_sa_mad;
ib_net16_t sa_status = IB_SA_MAD_STATUS_REQ_INVALID;
ib_member_rec_t *p_recvd_mcmember_rec;
diff --git a/osm/opensm/osm_sa_mcmember_record_ctrl.c b/osm/opensm/osm_sa_mcmember_record_ctrl.c
deleted file mode 100644
index 75f1d7e..0000000
--- a/osm/opensm/osm_sa_mcmember_record_ctrl.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_mcmr_rcv_ctrl_t.
- * This object represents the Multicast member record controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.5 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <complib/cl_qmap.h>
-#include <complib/cl_passivelock.h>
-#include <iba/ib_types.h>
-#include <opensm/osm_sa_mcmember_record_ctrl.h>
-#include <opensm/osm_sa_mcmember_record.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_log.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_mcmr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_mcmr_rcv_process( ((osm_mcmr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mcmr_rcv_ctrl_construct(
- IN osm_mcmr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mcmr_rcv_ctrl_destroy(
- IN osm_mcmr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_mcmr_rcv_ctrl_init(
- IN osm_mcmr_rcv_ctrl_t* const p_ctrl,
- IN osm_mcmr_recv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_mcmr_rcv_ctrl_init );
-
- osm_mcmr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_MCMEMBER_RECORD,
- __osm_mcmr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_mcmr_rcv_ctrl_init: ERR 1C01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_sa_mft_record.c b/osm/opensm/osm_sa_mft_record.c
index 3d85739..005c9bd 100644
--- a/osm/opensm/osm_sa_mft_record.c
+++ b/osm/opensm/osm_sa_mft_record.c
@@ -330,9 +330,11 @@ __osm_mftr_rcv_by_comp_mask(
**********************************************************************/
void
osm_mftr_rcv_process(
- IN osm_mftr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_mftr_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_mft_record_t* p_rcvd_rec;
ib_mft_record_t* p_resp_rec;
diff --git a/osm/opensm/osm_sa_mft_record_ctrl.c b/osm/opensm/osm_sa_mft_record_ctrl.c
deleted file mode 100644
index cf433a9..0000000
--- a/osm/opensm/osm_sa_mft_record_ctrl.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Implementation of osm_mftr_rcv_ctrl_t.
- * This object represents the MulticastForwardingTable request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_mft_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_mftr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_mftr_rcv_process( ((osm_mftr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mftr_rcv_ctrl_construct(
- IN osm_mftr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mftr_rcv_ctrl_destroy(
- IN osm_mftr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_mftr_rcv_ctrl_init(
- IN osm_mftr_rcv_ctrl_t* const p_ctrl,
- IN osm_mftr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_mftr_rcv_ctrl_init );
-
- osm_mftr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_MFT_RECORD,
- __osm_mftr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_mftr_rcv_ctrl_init: ERR 4A01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_multipath_record.c b/osm/opensm/osm_sa_multipath_record.c
index 2f61fb8..c268f48 100644
--- a/osm/opensm/osm_sa_multipath_record.c
+++ b/osm/opensm/osm_sa_multipath_record.c
@@ -1554,9 +1554,11 @@ __osm_mpr_rcv_respond(
**********************************************************************/
void
osm_mpr_rcv_process(
- IN osm_mpr_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_mpr_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
const ib_multipath_rec_t* p_mpr;
const ib_sa_mad_t* p_sa_mad;
osm_port_t* requester_port;
diff --git a/osm/opensm/osm_sa_multipath_record_ctrl.c b/osm/opensm/osm_sa_multipath_record_ctrl.c
deleted file mode 100644
index cf83a07..0000000
--- a/osm/opensm/osm_sa_multipath_record_ctrl.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Copyright (c) 2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_mpr_rcv_ctrl_t.
- * This object represents the MultiPathRecord request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#if defined (VENDOR_RMPP_SUPPORT) && defined (DUAL_SIDED_RMPP)
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_multipath_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-static void
-__osm_mpr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_mpr_rcv_process( ((osm_mpr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mpr_rcv_ctrl_construct(
- IN osm_mpr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mpr_rcv_ctrl_destroy(
- IN osm_mpr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_mpr_rcv_ctrl_init(
- IN osm_mpr_rcv_ctrl_t* const p_ctrl,
- IN osm_mpr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_mpr_rcv_ctrl_init );
-
- osm_mpr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_MULTIPATH_RECORD,
- __osm_mpr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_mpr_rcv_ctrl_init: ERR 4B01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
-#endif
diff --git a/osm/opensm/osm_sa_node_record.c b/osm/opensm/osm_sa_node_record.c
index e8ea45a..892582e 100644
--- a/osm/opensm/osm_sa_node_record.c
+++ b/osm/opensm/osm_sa_node_record.c
@@ -394,9 +394,11 @@ __osm_nr_rcv_by_comp_mask(
**********************************************************************/
void
osm_nr_rcv_process(
- IN osm_nr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_nr_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_node_record_t* p_rcvd_rec;
ib_node_record_t* p_resp_rec;
diff --git a/osm/opensm/osm_sa_node_record_ctrl.c b/osm/opensm/osm_sa_node_record_ctrl.c
deleted file mode 100644
index f101df7..0000000
--- a/osm/opensm/osm_sa_node_record_ctrl.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_nr_rcv_ctrl_t.
- * This object represents the Node Record controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.5 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_node_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_nr_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_nr_rcv_process( ((osm_nr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_nr_rcv_ctrl_construct(
- IN osm_nr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_nr_rcv_ctrl_destroy(
- IN osm_nr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_nr_rcv_ctrl_init(
- IN osm_nr_rcv_ctrl_t* const p_ctrl,
- IN osm_nr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_nr_rcv_ctrl_init );
-
- osm_nr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_NODE_RECORD,
- __osm_nr_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_nr_rcv_ctrl_init: ERR 1E01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_path_record.c b/osm/opensm/osm_sa_path_record.c
index 7707f52..a0dbb07 100644
--- a/osm/opensm/osm_sa_path_record.c
+++ b/osm/opensm/osm_sa_path_record.c
@@ -1893,9 +1893,11 @@ __osm_pr_rcv_respond(
**********************************************************************/
void
osm_pr_rcv_process(
- IN osm_pr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_pr_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
const ib_path_rec_t* p_pr;
const ib_sa_mad_t* p_sa_mad;
const osm_port_t* p_src_port;
diff --git a/osm/opensm/osm_sa_path_record_ctrl.c b/osm/opensm/osm_sa_path_record_ctrl.c
deleted file mode 100644
index 461b32c..0000000
--- a/osm/opensm/osm_sa_path_record_ctrl.c
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_pr_rcv_ctrl_t.
- * This object represents the PathRecord request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.5 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_path_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-static void
-__osm_pr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_pr_rcv_process( ((osm_pr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pr_rcv_ctrl_construct(
- IN osm_pr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pr_rcv_ctrl_destroy(
- IN osm_pr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_pr_rcv_ctrl_init(
- IN osm_pr_rcv_ctrl_t* const p_ctrl,
- IN osm_pr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_pr_rcv_ctrl_init );
-
- osm_pr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_PATH_RECORD,
- __osm_pr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_pr_rcv_ctrl_init: ERR 2001: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_sa_pkey_record.c b/osm/opensm/osm_sa_pkey_record.c
index 8e56c6c..5eb15df 100644
--- a/osm/opensm/osm_sa_pkey_record.c
+++ b/osm/opensm/osm_sa_pkey_record.c
@@ -308,9 +308,11 @@ __osm_sa_pkey_by_comp_mask_cb(
**********************************************************************/
void
osm_pkey_rec_rcv_process(
- IN osm_pkey_rec_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_pkey_rec_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_pkey_table_record_t* p_rcvd_rec;
const cl_ptr_vector_t* p_tbl;
diff --git a/osm/opensm/osm_sa_pkey_record_ctrl.c b/osm/opensm/osm_sa_pkey_record_ctrl.c
deleted file mode 100644
index e0d1bb7..0000000
--- a/osm/opensm/osm_sa_pkey_record_ctrl.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_pkey_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_pkey_rec_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_pkey_rec_rcv_process( ((osm_pkey_rec_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pkey_rec_rcv_ctrl_construct(
- IN osm_pkey_rec_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pkey_rec_rcv_ctrl_destroy(
- IN osm_pkey_rec_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_pkey_rec_rcv_ctrl_init(
- IN osm_pkey_rec_rcv_ctrl_t* const p_ctrl,
- IN osm_pkey_rec_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_pkey_rec_rcv_ctrl_init );
-
- osm_pkey_rec_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_PKEY_TBL_RECORD,
- __osm_pkey_rec_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_pkey_rec_rcv_ctrl_init: ERR 4701: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_sa_portinfo_record.c b/osm/opensm/osm_sa_portinfo_record.c
index 300d536..5d9b1b2 100644
--- a/osm/opensm/osm_sa_portinfo_record.c
+++ b/osm/opensm/osm_sa_portinfo_record.c
@@ -592,9 +592,11 @@ __osm_sa_pir_by_comp_mask_cb(
**********************************************************************/
void
osm_pir_rcv_process(
- IN osm_pir_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_pir_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_portinfo_record_t* p_rcvd_rec;
const cl_ptr_vector_t* p_tbl;
diff --git a/osm/opensm/osm_sa_portinfo_record_ctrl.c b/osm/opensm/osm_sa_portinfo_record_ctrl.c
deleted file mode 100644
index e2a8208..0000000
--- a/osm/opensm/osm_sa_portinfo_record_ctrl.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_pir_rcv_ctrl_t.
- * This object represents the PortInfoRecord request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.5 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_portinfo_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_pir_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_pir_rcv_process( ((osm_pir_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pir_rcv_ctrl_construct(
- IN osm_pir_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pir_rcv_ctrl_destroy(
- IN osm_pir_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_pir_rcv_ctrl_init(
- IN osm_pir_rcv_ctrl_t* const p_ctrl,
- IN osm_pir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_pir_rcv_ctrl_init );
-
- osm_pir_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_PORTINFO_RECORD,
- __osm_pir_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_pir_rcv_ctrl_init: ERR 2201: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_service_record.c b/osm/opensm/osm_sa_service_record.c
index faa4af7..b23a12d 100644
--- a/osm/opensm/osm_sa_service_record.c
+++ b/osm/opensm/osm_sa_service_record.c
@@ -1051,9 +1051,11 @@ osm_sr_rcv_process_delete_method(
**********************************************************************/
void
osm_sr_rcv_process(
- IN osm_sr_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_sr_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_sa_mad_t * p_sa_mad;
ib_net16_t sa_status = IB_SA_MAD_STATUS_REQ_INVALID;
boolean_t valid;
diff --git a/osm/opensm/osm_sa_service_record_ctrl.c b/osm/opensm/osm_sa_service_record_ctrl.c
deleted file mode 100644
index 5fad783..0000000
--- a/osm/opensm/osm_sa_service_record_ctrl.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_sr_rcv_ctrl_t.
- * This object represents the ServiceRecord request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.5 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_service_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-static void
-__osm_sr_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_sr_rcv_process( ((osm_sr_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_sr_rcv_ctrl_construct(
- IN osm_sr_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_sr_rcv_ctrl_destroy(
- IN osm_sr_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_sr_rcv_ctrl_init(
- IN osm_sr_rcv_ctrl_t* const p_ctrl,
- IN osm_sr_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_sr_rcv_ctrl_init );
-
- osm_sr_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_SERVICE_RECORD,
- __osm_sr_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_sr_rcv_ctrl_init: ERR 2501: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_slvl_record.c b/osm/opensm/osm_sa_slvl_record.c
index b9146b0..d831ffd 100644
--- a/osm/opensm/osm_sa_slvl_record.c
+++ b/osm/opensm/osm_sa_slvl_record.c
@@ -292,9 +292,11 @@ __osm_sa_slvl_by_comp_mask_cb(
**********************************************************************/
void
osm_slvl_rec_rcv_process(
- IN osm_slvl_rec_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_slvl_rec_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_slvl_table_record_t* p_rcvd_rec;
const cl_ptr_vector_t* p_tbl;
diff --git a/osm/opensm/osm_sa_slvl_record_ctrl.c b/osm/opensm/osm_sa_slvl_record_ctrl.c
deleted file mode 100644
index 76fff0e..0000000
--- a/osm/opensm/osm_sa_slvl_record_ctrl.c
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_slvl_rec_rcv_ctrl_t.
- * This object represents the SLtoVL Map Record SA request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_slvl_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_slvl_rec_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_slvl_rec_rcv_process( ((osm_slvl_rec_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_slvl_rec_rcv_ctrl_construct(
- IN osm_slvl_rec_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_slvl_rec_rcv_ctrl_destroy(
- IN osm_slvl_rec_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_slvl_rec_rcv_ctrl_init(
- IN osm_slvl_rec_rcv_ctrl_t* const p_ctrl,
- IN osm_slvl_rec_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_slvl_rec_rcv_ctrl_init );
-
- osm_slvl_rec_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_SLVL_TBL_RECORD,
- __osm_slvl_rec_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_slvl_rec_rcv_ctrl_init: ERR 2701: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_sa_sminfo_record.c b/osm/opensm/osm_sa_sminfo_record.c
index 3f3ae27..5e15f52 100644
--- a/osm/opensm/osm_sa_sminfo_record.c
+++ b/osm/opensm/osm_sa_sminfo_record.c
@@ -257,9 +257,11 @@ __osm_sa_smir_by_comp_mask_cb(
**********************************************************************/
void
osm_smir_rcv_process(
- IN osm_smir_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_smir_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_sminfo_record_t* p_rcvd_rec;
const cl_qmap_t* p_tbl;
diff --git a/osm/opensm/osm_sa_sminfo_record_ctrl.c b/osm/opensm/osm_sa_sminfo_record_ctrl.c
deleted file mode 100644
index 09cc99a..0000000
--- a/osm/opensm/osm_sa_sminfo_record_ctrl.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_smir_ctrl_t.
- * This object represents the SMInfo request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.5 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_sminfo_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_smir_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_smir_rcv_process( ((osm_smir_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_smir_ctrl_construct(
- IN osm_smir_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_smir_ctrl_destroy(
- IN osm_smir_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_smir_ctrl_init(
- IN osm_smir_ctrl_t* const p_ctrl,
- IN osm_smir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_smir_ctrl_init );
-
- osm_smir_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_SMINFO_RECORD,
- __osm_smir_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_smir_ctrl_init: ERR 2901: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_sw_info_record.c b/osm/opensm/osm_sa_sw_info_record.c
index d60f237..da65864 100644
--- a/osm/opensm/osm_sa_sw_info_record.c
+++ b/osm/opensm/osm_sa_sw_info_record.c
@@ -328,9 +328,11 @@ Exit:
**********************************************************************/
void
osm_sir_rcv_process(
- IN osm_sir_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_sir_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_switch_info_record_t* p_rcvd_rec;
ib_switch_info_record_t* p_resp_rec;
diff --git a/osm/opensm/osm_sa_sw_info_record_ctrl.c b/osm/opensm/osm_sa_sw_info_record_ctrl.c
deleted file mode 100644
index daf55cc..0000000
--- a/osm/opensm/osm_sa_sw_info_record_ctrl.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-/*
- * Abstract:
- * Implementation of osm_sir_rcv_ctrl_t.
- * This object represents the SwitchInfo Record controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_sw_info_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_sir_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_sir_rcv_process( ((osm_sir_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_sir_rcv_ctrl_construct(
- IN osm_sir_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_sir_rcv_ctrl_destroy(
- IN osm_sir_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_sir_rcv_ctrl_init(
- IN osm_sir_rcv_ctrl_t* const p_ctrl,
- IN osm_sir_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_sir_rcv_ctrl_init );
-
- osm_sir_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_SWITCH_INFO_RECORD,
- __osm_sir_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_sir_rcv_ctrl_init: ERR 5301: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_sa_vlarb_record.c b/osm/opensm/osm_sa_vlarb_record.c
index d7f341e..f0ff957 100644
--- a/osm/opensm/osm_sa_vlarb_record.c
+++ b/osm/opensm/osm_sa_vlarb_record.c
@@ -312,9 +312,11 @@ __osm_sa_vl_arb_by_comp_mask_cb(
**********************************************************************/
void
osm_vlarb_rec_rcv_process(
- IN osm_vlarb_rec_rcv_t* const p_rcv,
- IN const osm_madw_t* const p_madw )
+ IN void *ctx,
+ IN void *data )
{
+ osm_vlarb_rec_rcv_t *p_rcv = ctx;
+ osm_madw_t *p_madw = data;
const ib_sa_mad_t* p_rcvd_mad;
const ib_vl_arb_table_record_t* p_rcvd_rec;
const cl_ptr_vector_t* p_tbl;
diff --git a/osm/opensm/osm_sa_vlarb_record_ctrl.c b/osm/opensm/osm_sa_vlarb_record_ctrl.c
deleted file mode 100644
index b399276..0000000
--- a/osm/opensm/osm_sa_vlarb_record_ctrl.c
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses. You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-
-
-/*
- * Abstract:
- * Implementation of osm_vlarb_rec_rcv_ctrl_t.
- * This object represents the VL Arbitration Record SA request controller object.
- * This object is part of the opensm family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_sa_vlarb_record_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_vlarb_rec_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_vlarb_rec_rcv_process( ((osm_vlarb_rec_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_vlarb_rec_rcv_ctrl_construct(
- IN osm_vlarb_rec_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_vlarb_rec_rcv_ctrl_destroy(
- IN osm_vlarb_rec_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_vlarb_rec_rcv_ctrl_init(
- IN osm_vlarb_rec_rcv_ctrl_t* const p_ctrl,
- IN osm_vlarb_rec_rcv_t* const p_rcv,
- IN osm_log_t* const p_log,
- IN cl_dispatcher_t* const p_disp )
-{
- ib_api_status_t status = IB_SUCCESS;
-
- OSM_LOG_ENTER( p_log, osm_vlarb_rec_rcv_ctrl_init );
-
- osm_vlarb_rec_rcv_ctrl_construct( p_ctrl );
- p_ctrl->p_log = p_log;
- p_ctrl->p_rcv = p_rcv;
- p_ctrl->p_disp = p_disp;
-
- p_ctrl->h_disp = cl_disp_register(
- p_disp,
- OSM_MSG_MAD_VL_ARB_RECORD,
- __osm_vlarb_rec_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_vlarb_rec_rcv_ctrl_init: ERR 2B01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_state_mgr.c b/osm/opensm/osm_state_mgr.c
index 4f43a0d..16297c9 100644
--- a/osm/opensm/osm_state_mgr.c
+++ b/osm/opensm/osm_state_mgr.c
@@ -66,6 +66,7 @@
#include <opensm/osm_pkey_mgr.h>
#include <vendor/osm_vendor_api.h>
#include <opensm/osm_sm_state_mgr.h>
+#include <opensm/osm_inform.h>
#include <opensm/osm_opensm.h>
#define SUBNET_LIST_FILENAME "/osm-subnet.lst"
--
1.4.4.2.gfc82d
More information about the general
mailing list