[openib-general] [PATCH 1/2] opensm: cleanup sm related _ctrl layer
Sasha Khapyorsky
sashak at voltaire.com
Fri Jan 19 18:56:51 PST 2007
This cleanups sm related _ctrl layer.
Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>
---
osm/include/Makefile.am | 11 --
osm/include/opensm/osm_lin_fwd_rcv.h | 15 +-
osm/include/opensm/osm_lin_fwd_rcv_ctrl.h | 233 ------------------------
osm/include/opensm/osm_mcast_fwd_rcv.h | 15 +-
osm/include/opensm/osm_mcast_fwd_rcv_ctrl.h | 235 ------------------------
osm/include/opensm/osm_node_desc_rcv.h | 15 +-
osm/include/opensm/osm_node_desc_rcv_ctrl.h | 232 ------------------------
osm/include/opensm/osm_node_info_rcv.h | 19 +-
osm/include/opensm/osm_node_info_rcv_ctrl.h | 261 ---------------------------
osm/include/opensm/osm_pkey_rcv.h | 17 +-
osm/include/opensm/osm_pkey_rcv_ctrl.h | 248 -------------------------
osm/include/opensm/osm_port_info_rcv.h | 8 +-
osm/include/opensm/osm_port_info_rcv_ctrl.h | 261 ---------------------------
osm/include/opensm/osm_slvl_map_rcv.h | 17 +-
osm/include/opensm/osm_slvl_map_rcv_ctrl.h | 261 ---------------------------
osm/include/opensm/osm_sm.h | 44 +++---
osm/include/opensm/osm_sminfo_rcv.h | 21 +--
osm/include/opensm/osm_sminfo_rcv_ctrl.h | 232 ------------------------
osm/include/opensm/osm_sw_info_rcv.h | 19 +-
osm/include/opensm/osm_sw_info_rcv_ctrl.h | 261 ---------------------------
osm/include/opensm/osm_trap_rcv.h | 22 ++--
osm/include/opensm/osm_trap_rcv_ctrl.h | 232 ------------------------
osm/include/opensm/osm_vl_arb_rcv.h | 17 +-
osm/include/opensm/osm_vl_arb_rcv_ctrl.h | 261 ---------------------------
osm/opensm/Makefile.am | 22 ++--
osm/opensm/osm_lin_fwd_rcv.c | 6 +-
osm/opensm/osm_lin_fwd_rcv_ctrl.c | 125 -------------
osm/opensm/osm_mcast_fwd_rcv.c | 6 +-
osm/opensm/osm_mcast_fwd_rcv_ctrl.c | 125 -------------
osm/opensm/osm_node_desc_rcv.c | 6 +-
osm/opensm/osm_node_desc_rcv_ctrl.c | 127 -------------
osm/opensm/osm_node_info_rcv.c | 6 +-
osm/opensm/osm_node_info_rcv_ctrl.c | 127 -------------
osm/opensm/osm_pkey_rcv.c | 6 +-
osm/opensm/osm_pkey_rcv_ctrl.c | 116 ------------
osm/opensm/osm_port_info_rcv.c | 6 +-
osm/opensm/osm_port_info_rcv_ctrl.c | 128 -------------
osm/opensm/osm_slvl_map_rcv.c | 6 +-
osm/opensm/osm_slvl_map_rcv_ctrl.c | 127 -------------
osm/opensm/osm_sm.c | 141 +++++++--------
osm/opensm/osm_sminfo_rcv.c | 6 +-
osm/opensm/osm_sminfo_rcv_ctrl.c | 127 -------------
osm/opensm/osm_sw_info_rcv.c | 6 +-
osm/opensm/osm_sw_info_rcv_ctrl.c | 126 -------------
osm/opensm/osm_trap_rcv.c | 6 +-
osm/opensm/osm_trap_rcv_ctrl.c | 126 -------------
osm/opensm/osm_vl_arb_rcv.c | 6 +-
osm/opensm/osm_vl_arb_rcv_ctrl.c | 127 -------------
48 files changed, 230 insertions(+), 4337 deletions(-)
diff --git a/osm/include/Makefile.am b/osm/include/Makefile.am
index d6bdd84..bc23723 100644
--- a/osm/include/Makefile.am
+++ b/osm/include/Makefile.am
@@ -11,7 +11,6 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_sa_path_record.h \
$(srcdir)/opensm/osm_lid_mgr.h \
$(srcdir)/opensm/osm_vl_arb_rcv.h \
- $(srcdir)/opensm/osm_lin_fwd_rcv_ctrl.h \
$(srcdir)/opensm/osm_pkey_rcv.h \
$(srcdir)/opensm/osm_port.h \
$(srcdir)/opensm/osm_sm_state_mgr.h \
@@ -23,15 +22,12 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_subnet.h \
$(srcdir)/opensm/osm_sweep_fail_ctrl.h \
$(srcdir)/opensm/osm_matrix.h \
- $(srcdir)/opensm/osm_trap_rcv_ctrl.h \
$(srcdir)/opensm/osm_sa_mcmember_record_ctrl.h \
$(srcdir)/opensm/osm_sa_service_record_ctrl.h \
- $(srcdir)/opensm/osm_pkey_rcv_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_slvl_map_rcv_ctrl.h \
$(srcdir)/opensm/osm_sa_pkey_record_ctrl.h \
$(srcdir)/opensm/osm_helper.h \
$(srcdir)/opensm/osm_sa_portinfo_record.h \
@@ -45,7 +41,6 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_req.h \
$(srcdir)/opensm/osm_mcm_info.h \
$(srcdir)/opensm/osm_mtl_bind.h \
- $(srcdir)/opensm/osm_sminfo_rcv_ctrl.h \
$(srcdir)/opensm/osm_sa_pkey_record.h \
$(srcdir)/opensm/osm_sa_lft_record_ctrl.h \
$(srcdir)/opensm/osm_sa_mft_record_ctrl.h \
@@ -58,7 +53,6 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_sa_slvl_record.h \
$(srcdir)/opensm/osm_opensm.h \
$(srcdir)/opensm/osm_sa.h \
- $(srcdir)/opensm/osm_vl_arb_rcv_ctrl.h \
$(srcdir)/opensm/osm_port_profile.h \
$(srcdir)/opensm/osm_sminfo_rcv.h \
$(srcdir)/opensm/osm_multicast.h \
@@ -82,9 +76,7 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_mad_pool.h \
$(srcdir)/opensm/osm_remote_sm.h \
$(srcdir)/opensm/osm_sa_class_port_info_ctrl.h \
- $(srcdir)/opensm/osm_node_info_rcv_ctrl.h \
$(srcdir)/opensm/osm_link_mgr.h \
- $(srcdir)/opensm/osm_mcast_fwd_rcv_ctrl.h \
$(srcdir)/opensm/osm_msgdef.h \
$(srcdir)/opensm/osm_sa_node_record.h \
$(srcdir)/opensm/st.h \
@@ -93,19 +85,16 @@ EXTRA_DIST = \
$(srcdir)/opensm/osm_pkey_mgr.h \
$(srcdir)/opensm/osm_sa_mad_ctrl.h \
$(srcdir)/opensm/osm_req_ctrl.h \
- $(srcdir)/opensm/osm_sw_info_rcv.h \
$(srcdir)/opensm/osm_sa_link_record.h \
$(srcdir)/opensm/osm_mcm_port.h \
$(srcdir)/opensm/osm_log.h \
$(srcdir)/opensm/osm_mcast_fwd_rcv.h \
- $(srcdir)/opensm/osm_node_desc_rcv_ctrl.h \
$(srcdir)/opensm/osm_fwd_tbl.h \
$(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_port_info_rcv_ctrl.h \
$(srcdir)/opensm/osm_node_desc_rcv.h \
$(srcdir)/opensm/osm_stats.h \
$(srcdir)/opensm/osm_sa_path_record_ctrl.h \
diff --git a/osm/include/opensm/osm_lin_fwd_rcv.h b/osm/include/opensm/osm_lin_fwd_rcv.h
index 77b4e4a..4fe5b90 100644
--- a/osm/include/opensm/osm_lin_fwd_rcv.h
+++ b/osm/include/opensm/osm_lin_fwd_rcv.h
@@ -96,10 +96,9 @@ BEGIN_C_DECLS
*/
typedef struct _osm_lft_rcv
{
- osm_subn_t *p_subn;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
} osm_lft_rcv_t;
/*
* FIELDS
@@ -229,14 +228,14 @@ ib_api_status_t osm_lft_rcv_init(
* SYNOPSIS
*/
void osm_lft_rcv_process(
- IN const osm_lft_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_lft_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's LFT attribute.
*
diff --git a/osm/include/opensm/osm_lin_fwd_rcv_ctrl.h b/osm/include/opensm/osm_lin_fwd_rcv_ctrl.h
deleted file mode 100644
index a9c6192..0000000
--- a/osm/include/opensm/osm_lin_fwd_rcv_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_lft_rcv_ctrl_t.
- * This object represents a controller that receives the IBA
- * LFT attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_LFT_RCV_CTRL_H_
-#define _OSM_LFT_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_lin_fwd_rcv.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/LFT Receive Controller
-* NAME
-* LFT Receive Controller
-*
-* DESCRIPTION
-* The LFT Receive Controller object
-* encapsulates the information
-* needed to receive the NodeDescription attribute from a node.
-*
-* The LFT Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: LFT Receive Controller/osm_lft_rcv_ctrl_t
-* NAME
-* osm_lft_rcv_ctrl_t
-*
-* DESCRIPTION
-* LFT Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_lft_rcv_ctrl
-{
- osm_lft_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_lft_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the LFT Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* LFT Receive Controller object
-*********/
-
-/****f* OpenSM: LFT Receive Controller/osm_lft_rcv_ctrl_construct
-* NAME
-* osm_lft_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a LFT Receive Controller object.
-*
-* SYNOPSIS
-*/
-void
-osm_lft_rcv_ctrl_construct(
- IN osm_lft_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a LFT Receive Controller object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_lft_rcv_ctrl_init, osm_lft_rcv_ctrl_destroy
-*
-* Calling osm_lft_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_lft_rcv_ctrl_init.
-*
-* SEE ALSO
-* LFT Receive Controller object, osm_lft_rcv_ctrl_init,
-* osm_lft_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: LFT Receive Controller/osm_lft_rcv_ctrl_destroy
-* NAME
-* osm_lft_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_lft_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void
-osm_lft_rcv_ctrl_destroy(
- IN osm_lft_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
-* LFT Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_lft_rcv_ctrl_construct or osm_lft_rcv_ctrl_init.
-*
-* SEE ALSO
-* LFT Receive Controller object, osm_lft_rcv_ctrl_construct,
-* osm_lft_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: LFT Receive Controller/osm_lft_rcv_ctrl_init
-* NAME
-* osm_lft_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_lft_rcv_ctrl_init function initializes a
-* LFT Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t
-osm_lft_rcv_ctrl_init(
- IN osm_lft_rcv_ctrl_t* const p_ctrl,
- IN osm_lft_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_lft_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_lft_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 LFT Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other LFT Receive Controller methods.
-*
-* SEE ALSO
-* LFT Receive Controller object, osm_lft_rcv_ctrl_construct,
-* osm_lft_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* OSM_LFT_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_mcast_fwd_rcv.h b/osm/include/opensm/osm_mcast_fwd_rcv.h
index c18a748..3a2de28 100644
--- a/osm/include/opensm/osm_mcast_fwd_rcv.h
+++ b/osm/include/opensm/osm_mcast_fwd_rcv.h
@@ -96,10 +96,9 @@ BEGIN_C_DECLS
*/
typedef struct _osm_mft_rcv
{
- osm_subn_t *p_subn;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
} osm_mft_rcv_t;
/*
* FIELDS
@@ -233,14 +232,14 @@ osm_mft_rcv_init(
*/
void
osm_mft_rcv_process(
- IN const osm_mft_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_mft_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's MFT attribute.
*
diff --git a/osm/include/opensm/osm_mcast_fwd_rcv_ctrl.h b/osm/include/opensm/osm_mcast_fwd_rcv_ctrl.h
deleted file mode 100644
index f64a0c8..0000000
--- a/osm/include/opensm/osm_mcast_fwd_rcv_ctrl.h
+++ /dev/null
@@ -1,235 +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_mft_rcv_ctrl_t.
- * This object represents a controller that receives the IBA
- * Multicast Forwarding Table attribute from a node (specifically, a
- * switch).
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_MFT_RCV_CTRL_H_
-#define _OSM_MFT_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_mcast_fwd_rcv.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/MFT Receive Controller
-* NAME
-* MFT Receive Controller
-*
-* DESCRIPTION
-* The MFT Receive Controller object
-* encapsulates the information
-* needed to receive the Multicast Forwarding Table
-* attribute from a node.
-*
-* The MFT Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: MFT Receive Controller/osm_mft_rcv_ctrl_t
-* NAME
-* osm_mft_rcv_ctrl_t
-*
-* DESCRIPTION
-* MFT Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_mft_rcv_ctrl
-{
- osm_mft_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_mft_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the MFT Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* MFT Receive Controller object
-*********/
-
-/****f* OpenSM: MFT Receive Controller/osm_mft_rcv_ctrl_construct
-* NAME
-* osm_mft_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a MFT Receive Controller object.
-*
-* SYNOPSIS
-*/
-void
-osm_mft_rcv_ctrl_construct(
- IN osm_mft_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a MFT Receive Controller object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_mft_rcv_ctrl_init, osm_mft_rcv_ctrl_destroy
-*
-* Calling osm_mft_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_mft_rcv_ctrl_init.
-*
-* SEE ALSO
-* MFT Receive Controller object, osm_mft_rcv_ctrl_init,
-* osm_mft_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: MFT Receive Controller/osm_mft_rcv_ctrl_destroy
-* NAME
-* osm_mft_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_mft_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void
-osm_mft_rcv_ctrl_destroy(
- IN osm_mft_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
-* MFT Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_mft_rcv_ctrl_construct or osm_mft_rcv_ctrl_init.
-*
-* SEE ALSO
-* MFT Receive Controller object, osm_mft_rcv_ctrl_construct,
-* osm_mft_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: MFT Receive Controller/osm_mft_rcv_ctrl_init
-* NAME
-* osm_mft_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_mft_rcv_ctrl_init function initializes a
-* MFT Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t
-osm_mft_rcv_ctrl_init(
- IN osm_mft_rcv_ctrl_t* const p_ctrl,
- IN osm_mft_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_mft_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_mft_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 MFT Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other MFT Receive Controller methods.
-*
-* SEE ALSO
-* MFT Receive Controller object, osm_mft_rcv_ctrl_construct,
-* osm_mft_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* OSM_MFT_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_node_desc_rcv.h b/osm/include/opensm/osm_node_desc_rcv.h
index 8803dc9..b228d58 100644
--- a/osm/include/opensm/osm_node_desc_rcv.h
+++ b/osm/include/opensm/osm_node_desc_rcv.h
@@ -97,10 +97,9 @@ BEGIN_C_DECLS
*/
typedef struct _osm_nd_rcv
{
- osm_subn_t *p_subn;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
} osm_nd_rcv_t;
/*
* FIELDS
@@ -230,14 +229,14 @@ ib_api_status_t osm_nd_rcv_init(
* SYNOPSIS
*/
void osm_nd_rcv_process(
- IN const osm_nd_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_nd_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's NodeInfo attribute.
*
diff --git a/osm/include/opensm/osm_node_desc_rcv_ctrl.h b/osm/include/opensm/osm_node_desc_rcv_ctrl.h
deleted file mode 100644
index a3c612b..0000000
--- a/osm/include/opensm/osm_node_desc_rcv_ctrl.h
+++ /dev/null
@@ -1,232 +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_nd_rcv_ctrl_t.
- * This object represents a controller that receives the IBA NodeDescription
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_ND_RCV_CTRL_H_
-#define _OSM_ND_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_node_desc_rcv.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/Node Description Receive Controller
-* NAME
-* Node Description Receive Controller
-*
-* DESCRIPTION
-* The Node Description Receive Controller object encapsulates the information
-* needed to receive the NodeDescription attribute from a node.
-*
-* The Node Description Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: Node Description Receive Controller/osm_nd_rcv_ctrl_t
-* NAME
-* osm_nd_rcv_ctrl_t
-*
-* DESCRIPTION
-* Node Description Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_nd_rcv_ctrl
-{
- osm_nd_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_nd_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Node Description 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 Description Receive Controller object
-*********/
-
-/****f* OpenSM: Node Description Receive Controller/osm_nd_rcv_ctrl_construct
-* NAME
-* osm_nd_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Node Description Receive Controller object.
-*
-* SYNOPSIS
-*/
-void
-osm_nd_rcv_ctrl_construct(
- IN osm_nd_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Node Description Receive Controller object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_nd_rcv_ctrl_init, osm_nd_rcv_ctrl_destroy
-*
-* Calling osm_nd_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_nd_rcv_ctrl_init.
-*
-* SEE ALSO
-* Node Description Receive Controller object, osm_nd_rcv_ctrl_init,
-* osm_nd_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: Node Description Receive Controller/osm_nd_rcv_ctrl_destroy
-* NAME
-* osm_nd_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_nd_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void
-osm_nd_rcv_ctrl_destroy(
- IN osm_nd_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 Description Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_nd_rcv_ctrl_construct or osm_nd_rcv_ctrl_init.
-*
-* SEE ALSO
-* Node Description Receive Controller object, osm_nd_rcv_ctrl_construct,
-* osm_nd_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Node Description Receive Controller/osm_nd_rcv_ctrl_init
-* NAME
-* osm_nd_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_nd_rcv_ctrl_init function initializes a
-* Node Description Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t
-osm_nd_rcv_ctrl_init(
- IN osm_nd_rcv_ctrl_t* const p_ctrl,
- IN osm_nd_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_nd_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_nd_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 Description Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Node Description Receive Controller methods.
-*
-* SEE ALSO
-* Node Description Receive Controller object, osm_nd_rcv_ctrl_construct,
-* osm_nd_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* OSM_ND_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_node_info_rcv.h b/osm/include/opensm/osm_node_info_rcv.h
index 88d14a8..cae2f7f 100644
--- a/osm/include/opensm/osm_node_info_rcv.h
+++ b/osm/include/opensm/osm_node_info_rcv.h
@@ -100,12 +100,11 @@ BEGIN_C_DECLS
*/
typedef struct _osm_ni_rcv
{
- osm_subn_t *p_subn;
- osm_req_t *p_gen_req;
- osm_log_t *p_log;
- osm_state_mgr_t *p_state_mgr;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_req_t *p_gen_req;
+ osm_log_t *p_log;
+ osm_state_mgr_t *p_state_mgr;
+ cl_plock_t *p_lock;
} osm_ni_rcv_t;
/*
* FIELDS
@@ -279,14 +278,14 @@ boolean_t osm_ni_rcv_is_inited(
* SYNOPSIS
*/
void osm_ni_rcv_process(
- IN const osm_ni_rcv_t* const p_ctrl,
- IN osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_ni_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's NodeInfo attribute.
*
diff --git a/osm/include/opensm/osm_node_info_rcv_ctrl.h b/osm/include/opensm/osm_node_info_rcv_ctrl.h
deleted file mode 100644
index 2765a8e..0000000
--- a/osm/include/opensm/osm_node_info_rcv_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_ni_rcv_ctrl_t.
- * This object represents a controller that receives the IBA NodeInfo
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_NI_RCV_CTRL_H_
-#define _OSM_NI_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_node_info_rcv.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 Info Receive Controller
-* NAME
-* Node Info Receive Controller
-*
-* DESCRIPTION
-* The Node Info Receive Controller object encapsulates
-* the information needed to receive the NodeInfo attribute from a node.
-*
-* The Node Info Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: Node Info Receive Controller/osm_ni_rcv_ctrl_t
-* NAME
-* osm_ni_rcv_ctrl_t
-*
-* DESCRIPTION
-* Node Info Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_ni_rcv_ctrl
-{
- osm_ni_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_ni_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Node 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
-* Node Info Receive Controller object
-* Node Info Receiver object
-*********/
-
-/****f* OpenSM: Node Info Receive Controller/osm_ni_rcv_ctrl_construct
-* NAME
-* osm_ni_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Node Info Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_ni_rcv_ctrl_construct(
- IN osm_ni_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Node Info Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_ni_rcv_ctrl_init, osm_ni_rcv_ctrl_destroy,
-* and osm_ni_rcv_ctrl_is_inited.
-*
-* Calling osm_ni_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_ni_rcv_ctrl_init.
-*
-* SEE ALSO
-* Node Info Receive Controller object, osm_ni_rcv_ctrl_init,
-* osm_ni_rcv_ctrl_destroy, osm_ni_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Node Info Receive Controller/osm_ni_rcv_ctrl_destroy
-* NAME
-* osm_ni_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_ni_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_ni_rcv_ctrl_destroy(
- IN osm_ni_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 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_ni_rcv_ctrl_construct or osm_ni_rcv_ctrl_init.
-*
-* SEE ALSO
-* Node Info Receive Controller object, osm_ni_rcv_ctrl_construct,
-* osm_ni_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Node Info Receive Controller/osm_ni_rcv_ctrl_init
-* NAME
-* osm_ni_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_ni_rcv_ctrl_init function initializes a
-* Node Info Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_ni_rcv_ctrl_init(
- IN osm_ni_rcv_ctrl_t* const p_ctrl,
- IN osm_ni_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_ni_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_ni_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 Info Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Node Info Receive Controller methods.
-*
-* SEE ALSO
-* Node Info Receive Controller object, osm_ni_rcv_ctrl_construct,
-* osm_ni_rcv_ctrl_destroy, osm_ni_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Node Info Receive Controller/osm_ni_rcv_ctrl_is_inited
-* NAME
-* osm_ni_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_ni_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_ni_rcv_ctrl_is_inited(
- IN const osm_ni_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_ni_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_ni_rcv_ctrl_construct or osm_ni_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Node Info Receive Controller object, osm_ni_rcv_ctrl_construct,
-* osm_ni_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_NI_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_pkey_rcv.h b/osm/include/opensm/osm_pkey_rcv.h
index 6f973be..20829b2 100644
--- a/osm/include/opensm/osm_pkey_rcv.h
+++ b/osm/include/opensm/osm_pkey_rcv.h
@@ -86,11 +86,10 @@ BEGIN_C_DECLS
*/
typedef struct _osm_pkey_rcv
{
- osm_subn_t *p_subn;
- osm_req_t *p_req;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_req_t *p_req;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
} osm_pkey_rcv_t;
/*
* FIELDS
@@ -227,14 +226,14 @@ ib_api_status_t osm_pkey_rcv_init(
* SYNOPSIS
*/
void osm_pkey_rcv_process(
- IN const osm_pkey_rcv_t* const p_ctrl,
- IN osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_pkey_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's SLtoVL attribute.
*
diff --git a/osm/include/opensm/osm_pkey_rcv_ctrl.h b/osm/include/opensm/osm_pkey_rcv_ctrl.h
deleted file mode 100644
index af51ce8..0000000
--- a/osm/include/opensm/osm_pkey_rcv_ctrl.h
+++ /dev/null
@@ -1,248 +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_RCV_CTRL_H_
-#define _OSM_PKEY_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_pkey_rcv.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 Table Receive Controller
-* NAME
-* P_Key Receive Controller
-*
-* DESCRIPTION
-* The P_Key Receive Controller object encapsulates
-* the information needed to get or set P_Key table of a port.
-*
-* The P_Key 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 Receive Controller/osm_pkey_rcv_ctrl_t
-* NAME
-* osm_pkey_rcv_ctrl_t
-*
-* DESCRIPTION
-* P_Key Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_pkey_rcv_ctrl
-{
- osm_pkey_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_pkey_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the P_Key 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 Receive Controller object
-* P_Key Receiver object
-*********/
-
-/****f* OpenSM: P_Key Receive Controller/osm_pkey_rcv_ctrl_construct
-* NAME
-* osm_pkey_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a P_Key Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_pkey_rcv_ctrl_construct(
- IN osm_pkey_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a P_Key Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_pkey_rcv_ctrl_init, osm_pkey_rcv_ctrl_destroy,
-* and osm_pkey_rcv_ctrl_is_inited.
-*
-* Calling osm_pkey_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_pkey_rcv_ctrl_init.
-*
-* SEE ALSO
-* P_Key Receive Controller object, osm_pkey_rcv_ctrl_init,
-* osm_pkey_rcv_ctrl_destroy, osm_pkey_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: P_Key Receive Controller/osm_pkey_rcv_ctrl_destroy
-* NAME
-* osm_pkey_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_pkey_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_pkey_rcv_ctrl_destroy(
- IN osm_pkey_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 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_rcv_ctrl_construct or osm_pkey_rcv_ctrl_init.
-*
-* SEE ALSO
-* P_Key Receive Controller object, osm_pkey_rcv_ctrl_construct,
-* osm_pkey_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: P_Key Receive Controller/osm_pkey_rcv_ctrl_init
-* NAME
-* osm_pkey_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_pkey_rcv_ctrl_init function initializes a
-* P_Key Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_pkey_rcv_ctrl_init(
- IN osm_pkey_rcv_ctrl_t* const p_ctrl,
- IN osm_pkey_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_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_pkey_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 Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other P_Key Receive Controller methods.
-*
-* SEE ALSO
-* P_Key Receive Controller object, osm_pkey_rcv_ctrl_construct,
-* osm_pkey_rcv_ctrl_destroy, osm_pkey_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: P_Key Receive Controller/osm_pkey_rcv_ctrl_is_inited
-* NAME
-* osm_pkey_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_pkey_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_pkey_rcv_ctrl_is_inited(
- IN const osm_pkey_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_pkey_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_pkey_rcv_ctrl_construct or osm_pkey_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* P_Key Receive Controller object, osm_pkey_rcv_ctrl_construct,
-* osm_pkey_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_PKEY_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_port_info_rcv.h b/osm/include/opensm/osm_port_info_rcv.h
index 834d21e..35f399c 100644
--- a/osm/include/opensm/osm_port_info_rcv.h
+++ b/osm/include/opensm/osm_port_info_rcv.h
@@ -248,14 +248,14 @@ ib_api_status_t osm_pi_rcv_init(
* SYNOPSIS
*/
void osm_pi_rcv_process(
- IN const osm_pi_rcv_t* const p_ctrl,
- IN osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_pi_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's PortInfo attribute.
*
diff --git a/osm/include/opensm/osm_port_info_rcv_ctrl.h b/osm/include/opensm/osm_port_info_rcv_ctrl.h
deleted file mode 100644
index 8337bf7..0000000
--- a/osm/include/opensm/osm_port_info_rcv_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_pi_rcv_ctrl_t.
- * This object represents a controller that receives the IBA NodeInfo
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_PI_RCV_CTRL_H_
-#define _OSM_PI_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_port_info_rcv.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/Port Info Receive Controller
-* NAME
-* Port Info Receive Controller
-*
-* DESCRIPTION
-* The Port Info Receive Controller object encapsulates
-* the information needed to receive the NodeInfo attribute from a node.
-*
-* The Port Info Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: Port Info Receive Controller/osm_pi_rcv_ctrl_t
-* NAME
-* osm_pi_rcv_ctrl_t
-*
-* DESCRIPTION
-* Port Info Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_pi_rcv_ctrl
-{
- osm_pi_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_pi_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Port 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
-* Port Info Receive Controller object
-* Port Info Receiver object
-*********/
-
-/****f* OpenSM: Port Info Receive Controller/osm_pi_rcv_ctrl_construct
-* NAME
-* osm_pi_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Port Info Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_pi_rcv_ctrl_construct(
- IN osm_pi_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Port Info Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_pi_rcv_ctrl_init, osm_pi_rcv_ctrl_destroy,
-* and osm_pi_rcv_ctrl_is_inited.
-*
-* Calling osm_pi_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_pi_rcv_ctrl_init.
-*
-* SEE ALSO
-* Port Info Receive Controller object, osm_pi_rcv_ctrl_init,
-* osm_pi_rcv_ctrl_destroy, osm_pi_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Port Info Receive Controller/osm_pi_rcv_ctrl_destroy
-* NAME
-* osm_pi_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_pi_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_pi_rcv_ctrl_destroy(
- IN osm_pi_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
-* 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_pi_rcv_ctrl_construct or osm_pi_rcv_ctrl_init.
-*
-* SEE ALSO
-* Port Info Receive Controller object, osm_pi_rcv_ctrl_construct,
-* osm_pi_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Port Info Receive Controller/osm_pi_rcv_ctrl_init
-* NAME
-* osm_pi_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_pi_rcv_ctrl_init function initializes a
-* Port Info Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_pi_rcv_ctrl_init(
- IN osm_pi_rcv_ctrl_t* const p_ctrl,
- IN osm_pi_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_pi_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_pi_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 Port Info Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Port Info Receive Controller methods.
-*
-* SEE ALSO
-* Port Info Receive Controller object, osm_pi_rcv_ctrl_construct,
-* osm_pi_rcv_ctrl_destroy, osm_pi_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Port Info Receive Controller/osm_pi_rcv_ctrl_is_inited
-* NAME
-* osm_pi_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_pi_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_pi_rcv_ctrl_is_inited(
- IN const osm_pi_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_pi_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_pi_rcv_ctrl_construct or osm_pi_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Port Info Receive Controller object, osm_pi_rcv_ctrl_construct,
-* osm_pi_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_PI_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_slvl_map_rcv.h b/osm/include/opensm/osm_slvl_map_rcv.h
index 40e1a93..6a1e440 100644
--- a/osm/include/opensm/osm_slvl_map_rcv.h
+++ b/osm/include/opensm/osm_slvl_map_rcv.h
@@ -98,11 +98,10 @@ BEGIN_C_DECLS
*/
typedef struct _osm_slvl_rcv
{
- osm_subn_t *p_subn;
- osm_req_t *p_req;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_req_t *p_req;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
} osm_slvl_rcv_t;
/*
* FIELDS
@@ -239,14 +238,14 @@ ib_api_status_t osm_slvl_rcv_init(
* SYNOPSIS
*/
void osm_slvl_rcv_process(
- IN const osm_slvl_rcv_t* const p_ctrl,
- IN osm_madw_t* const p_madw );
+ IN void* context,
+ IN void* p_data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_slvl_rcv_t object.
*
-* p_madw
+* p_data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's SLtoVL attribute.
*
diff --git a/osm/include/opensm/osm_slvl_map_rcv_ctrl.h b/osm/include/opensm/osm_slvl_map_rcv_ctrl.h
deleted file mode 100644
index 51cf084..0000000
--- a/osm/include/opensm/osm_slvl_map_rcv_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_pi_rcv_ctrl_t.
- * This object represents a controller that receives the IBA NodeInfo
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.3 $
- */
-
-#ifndef _OSM_SLVL_RCV_CTRL_H_
-#define _OSM_SLVL_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_slvl_map_rcv.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 Map Table Receive Controller
-* NAME
-* Slvl Map Receive Controller
-*
-* DESCRIPTION
-* The Slvl Map Receive Controller object encapsulates
-* the information needed to get or set SLtoVL Map of a port.
-*
-* The Slvl Map 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: Slvl Map Receive Controller/osm_slvl_rcv_ctrl_t
-* NAME
-* osm_slvl_rcv_ctrl_t
-*
-* DESCRIPTION
-* Slvl Map Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_slvl_rcv_ctrl
-{
- osm_slvl_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_slvl_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Slvl Map Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Slvl Map Receive Controller object
-* Slvl Map Receiver object
-*********/
-
-/****f* OpenSM: Slvl Map Receive Controller/osm_slvl_rcv_ctrl_construct
-* NAME
-* osm_slvl_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Slvl Map Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_slvl_rcv_ctrl_construct(
- IN osm_slvl_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Slvl Map Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_slvl_rcv_ctrl_init, osm_slvl_rcv_ctrl_destroy,
-* and osm_slvl_rcv_ctrl_is_inited.
-*
-* Calling osm_slvl_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_slvl_rcv_ctrl_init.
-*
-* SEE ALSO
-* Slvl Map Receive Controller object, osm_slvl_rcv_ctrl_init,
-* osm_slvl_rcv_ctrl_destroy, osm_slvl_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Slvl Map Receive Controller/osm_slvl_rcv_ctrl_destroy
-* NAME
-* osm_slvl_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_slvl_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_slvl_rcv_ctrl_destroy(
- IN osm_slvl_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
-* Slvl Map 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_rcv_ctrl_construct or osm_slvl_rcv_ctrl_init.
-*
-* SEE ALSO
-* Slvl Map Receive Controller object, osm_slvl_rcv_ctrl_construct,
-* osm_slvl_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Slvl Map Receive Controller/osm_slvl_rcv_ctrl_init
-* NAME
-* osm_slvl_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_slvl_rcv_ctrl_init function initializes a
-* Slvl Map Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_slvl_rcv_ctrl_init(
- IN osm_slvl_rcv_ctrl_t* const p_ctrl,
- IN osm_slvl_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_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_slvl_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 Slvl Map Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Slvl Map Receive Controller methods.
-*
-* SEE ALSO
-* Slvl Map Receive Controller object, osm_slvl_rcv_ctrl_construct,
-* osm_slvl_rcv_ctrl_destroy, osm_slvl_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Slvl Map Receive Controller/osm_slvl_rcv_ctrl_is_inited
-* NAME
-* osm_slvl_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_slvl_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_slvl_rcv_ctrl_is_inited(
- IN const osm_slvl_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_slvl_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_slvl_rcv_ctrl_construct or osm_slvl_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Slvl Map Receive Controller object, osm_slvl_rcv_ctrl_construct,
-* osm_slvl_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_SLVL_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sm.h b/osm/include/opensm/osm_sm.h
index ea93144..a3894d8 100644
--- a/osm/include/opensm/osm_sm.h
+++ b/osm/include/opensm/osm_sm.h
@@ -62,25 +62,25 @@
#include <opensm/osm_resp.h>
#include <opensm/osm_log.h>
#include <opensm/osm_req_ctrl.h>
-#include <opensm/osm_node_info_rcv_ctrl.h>
-#include <opensm/osm_port_info_rcv_ctrl.h>
-#include <opensm/osm_sw_info_rcv_ctrl.h>
-#include <opensm/osm_node_desc_rcv_ctrl.h>
+#include <opensm/osm_node_info_rcv.h>
+#include <opensm/osm_port_info_rcv.h>
+#include <opensm/osm_sw_info_rcv.h>
+#include <opensm/osm_node_desc_rcv.h>
#include <opensm/osm_sm_mad_ctrl.h>
#include <opensm/osm_state_mgr_ctrl.h>
#include <opensm/osm_lid_mgr.h>
#include <opensm/osm_ucast_mgr.h>
#include <opensm/osm_link_mgr.h>
#include <opensm/osm_drop_mgr.h>
-#include <opensm/osm_lin_fwd_rcv_ctrl.h>
-#include <opensm/osm_mcast_fwd_rcv_ctrl.h>
+#include <opensm/osm_lin_fwd_rcv.h>
+#include <opensm/osm_mcast_fwd_rcv.h>
#include <opensm/osm_sweep_fail_ctrl.h>
-#include <opensm/osm_sminfo_rcv_ctrl.h>
-#include <opensm/osm_trap_rcv_ctrl.h>
+#include <opensm/osm_sminfo_rcv.h>
+#include <opensm/osm_trap_rcv.h>
#include <opensm/osm_sm_state_mgr.h>
-#include <opensm/osm_slvl_map_rcv_ctrl.h>
-#include <opensm/osm_vl_arb_rcv_ctrl.h>
-#include <opensm/osm_pkey_rcv_ctrl.h>
+#include <opensm/osm_slvl_map_rcv.h>
+#include <opensm/osm_vl_arb_rcv.h>
+#include <opensm/osm_pkey_rcv.h>
#include <opensm/osm_port.h>
#include <opensm/osm_mcast_mgr.h>
#include <opensm/osm_db.h>
@@ -145,14 +145,10 @@ typedef struct _osm_sm
osm_req_ctrl_t req_ctrl;
osm_resp_t resp;
osm_ni_rcv_t ni_rcv;
- osm_ni_rcv_ctrl_t ni_rcv_ctrl;
osm_pi_rcv_t pi_rcv;
- osm_pi_rcv_ctrl_t pi_rcv_ctrl;
osm_nd_rcv_t nd_rcv;
- osm_nd_rcv_ctrl_t nd_rcv_ctrl;
osm_sm_mad_ctrl_t mad_ctrl;
osm_si_rcv_t si_rcv;
- osm_si_rcv_ctrl_t si_rcv_ctrl;
osm_state_mgr_ctrl_t state_mgr_ctrl;
osm_lid_mgr_t lid_mgr;
osm_ucast_mgr_t ucast_mgr;
@@ -160,22 +156,26 @@ typedef struct _osm_sm
osm_state_mgr_t state_mgr;
osm_drop_mgr_t drop_mgr;
osm_lft_rcv_t lft_rcv;
- osm_lft_rcv_ctrl_t lft_rcv_ctrl;
osm_mft_rcv_t mft_rcv;
- osm_mft_rcv_ctrl_t mft_rcv_ctrl;
osm_sweep_fail_ctrl_t sweep_fail_ctrl;
osm_sminfo_rcv_t sm_info_rcv;
- osm_sminfo_rcv_ctrl_t sm_info_rcv_ctrl;
osm_trap_rcv_t trap_rcv;
- osm_trap_rcv_ctrl_t trap_rcv_ctrl;
osm_sm_state_mgr_t sm_state_mgr;
osm_mcast_mgr_t mcast_mgr;
osm_slvl_rcv_t slvl_rcv;
- osm_slvl_rcv_ctrl_t slvl_rcv_ctrl;
osm_vla_rcv_t vla_rcv;
- osm_vla_rcv_ctrl_t vla_rcv_ctrl;
osm_pkey_rcv_t pkey_rcv;
- osm_pkey_rcv_ctrl_t pkey_rcv_ctrl;
+ cl_disp_reg_handle_t ni_disp_h;
+ cl_disp_reg_handle_t pi_disp_h;
+ cl_disp_reg_handle_t nd_disp_h;
+ cl_disp_reg_handle_t si_disp_h;
+ cl_disp_reg_handle_t lft_disp_h;
+ cl_disp_reg_handle_t mft_disp_h;
+ cl_disp_reg_handle_t sm_info_disp_h;
+ cl_disp_reg_handle_t trap_disp_h;
+ cl_disp_reg_handle_t slvl_disp_h;
+ cl_disp_reg_handle_t vla_disp_h;
+ cl_disp_reg_handle_t pkey_disp_h;
} osm_sm_t;
/*
* FIELDS
diff --git a/osm/include/opensm/osm_sminfo_rcv.h b/osm/include/opensm/osm_sminfo_rcv.h
index eba5ebe..0d9ffc0 100644
--- a/osm/include/opensm/osm_sminfo_rcv.h
+++ b/osm/include/opensm/osm_sminfo_rcv.h
@@ -100,14 +100,13 @@ BEGIN_C_DECLS
*/
typedef struct _osm_sminfo_rcv
{
- osm_subn_t *p_subn;
- osm_stats_t *p_stats;
- osm_log_t *p_log;
- osm_resp_t *p_resp;
+ osm_subn_t *p_subn;
+ osm_stats_t *p_stats;
+ osm_log_t *p_log;
+ osm_resp_t *p_resp;
osm_state_mgr_t *p_state_mgr;
- struct _osm_sm_state_mgr *p_sm_state_mgr;
- cl_plock_t *p_lock;
-
+ struct _osm_sm_state_mgr *p_sm_state_mgr;
+ cl_plock_t *p_lock;
} osm_sminfo_rcv_t;
/*
* FIELDS
@@ -265,14 +264,14 @@ ib_api_status_t osm_sminfo_rcv_init(
* SYNOPSIS
*/
void osm_sminfo_rcv_process(
- IN const osm_sminfo_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_sminfo_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's SMInfo attribute.
*
diff --git a/osm/include/opensm/osm_sminfo_rcv_ctrl.h b/osm/include/opensm/osm_sminfo_rcv_ctrl.h
deleted file mode 100644
index 511440f..0000000
--- a/osm/include/opensm/osm_sminfo_rcv_ctrl.h
+++ /dev/null
@@ -1,232 +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_sminfo_rcv_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_SMINFO_RCV_CTRL_H_
-#define _OSM_SMINFO_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_sminfo_rcv.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/SMInfo Receive Controller
-* NAME
-* SMInfo Receive Controller
-*
-* DESCRIPTION
-* The SMInfo Receive Controller object encapsulates the information
-* needed to receive the SMInfo attribute from a node.
-*
-* The SMInfo Receive Controller object is thread safe.
-*
-* This object should be treated as opaque and should be
-* manipulated only through the provided functions.
-*
-* AUTHOR
-* Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: SMInfo Receive Controller/osm_sminfo_rcv_ctrl_t
-* NAME
-* osm_sminfo_rcv_ctrl_t
-*
-* DESCRIPTION
-* SMInfo Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_sminfo_rcv_ctrl
-{
- osm_sminfo_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_sminfo_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the SMInfo Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* SMInfo Receive Controller object
-*********/
-
-/****f* OpenSM: SMInfo Receive Controller/osm_sminfo_rcv_ctrl_construct
-* NAME
-* osm_sminfo_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a SMInfo Receive Controller object.
-*
-* SYNOPSIS
-*/
-void
-osm_sminfo_rcv_ctrl_construct(
- IN osm_sminfo_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a SMInfo Receive Controller object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_sminfo_rcv_ctrl_init, osm_sminfo_rcv_ctrl_destroy
-*
-* Calling osm_sminfo_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_sminfo_rcv_ctrl_init.
-*
-* SEE ALSO
-* SMInfo Receive Controller object, osm_sminfo_rcv_ctrl_init,
-* osm_sminfo_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: SMInfo Receive Controller/osm_sminfo_rcv_ctrl_destroy
-* NAME
-* osm_sminfo_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_sminfo_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void
-osm_sminfo_rcv_ctrl_destroy(
- IN osm_sminfo_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
-* SMInfo Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_sminfo_rcv_ctrl_construct or osm_sminfo_rcv_ctrl_init.
-*
-* SEE ALSO
-* SMInfo Receive Controller object, osm_sminfo_rcv_ctrl_construct,
-* osm_sminfo_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: SMInfo Receive Controller/osm_sminfo_rcv_ctrl_init
-* NAME
-* osm_sminfo_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_sminfo_rcv_ctrl_init function initializes a
-* SMInfo Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t
-osm_sminfo_rcv_ctrl_init(
- IN osm_sminfo_rcv_ctrl_t* const p_ctrl,
- IN osm_sminfo_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_sminfo_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_sminfo_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 SMInfo Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other SMInfo Receive Controller methods.
-*
-* SEE ALSO
-* SMInfo Receive Controller object, osm_sminfo_rcv_ctrl_construct,
-* osm_sminfo_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* OSM_SMINFO_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_sw_info_rcv.h b/osm/include/opensm/osm_sw_info_rcv.h
index d58a832..41b4238 100644
--- a/osm/include/opensm/osm_sw_info_rcv.h
+++ b/osm/include/opensm/osm_sw_info_rcv.h
@@ -99,12 +99,11 @@ BEGIN_C_DECLS
*/
typedef struct _osm_si_rcv
{
- osm_subn_t *p_subn;
- osm_log_t *p_log;
- osm_req_t *p_req;
- osm_state_mgr_t *p_state_mgr;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_log_t *p_log;
+ osm_req_t *p_req;
+ osm_state_mgr_t *p_state_mgr;
+ cl_plock_t *p_lock;
} osm_si_rcv_t;
/*
* FIELDS
@@ -278,14 +277,14 @@ boolean_t osm_si_rcv_is_inited(
* SYNOPSIS
*/
void osm_si_rcv_process(
- IN const osm_si_rcv_t* const p_ctrl,
- IN osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_si_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_sw_info_rcv_ctrl.h b/osm/include/opensm/osm_sw_info_rcv_ctrl.h
deleted file mode 100644
index 3483bf5..0000000
--- a/osm/include/opensm/osm_sw_info_rcv_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_si_rcv_ctrl_t.
- * This object represents a controller that receives the IBA SwitchInfo
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.4 $
- */
-
-#ifndef _OSM_SI_RCV_CTRL_H_
-#define _OSM_SI_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_sw_info_rcv.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 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
-* Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: Switch Info Receive Controller/osm_si_rcv_ctrl_t
-* NAME
-* osm_si_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_si_rcv_ctrl
-{
- osm_si_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_si_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_si_rcv_ctrl_construct
-* NAME
-* osm_si_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Switch Info Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_si_rcv_ctrl_construct(
- IN osm_si_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_si_rcv_ctrl_init, osm_si_rcv_ctrl_destroy,
-* and osm_si_rcv_ctrl_is_inited.
-*
-* Calling osm_si_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_si_rcv_ctrl_init.
-*
-* SEE ALSO
-* Switch Info Receive Controller object, osm_si_rcv_ctrl_init,
-* osm_si_rcv_ctrl_destroy, osm_si_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Switch Info Receive Controller/osm_si_rcv_ctrl_destroy
-* NAME
-* osm_si_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_si_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_si_rcv_ctrl_destroy(
- IN osm_si_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_si_rcv_ctrl_construct or osm_si_rcv_ctrl_init.
-*
-* SEE ALSO
-* Switch Info Receive Controller object, osm_si_rcv_ctrl_construct,
-* osm_si_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Switch Info Receive Controller/osm_si_rcv_ctrl_init
-* NAME
-* osm_si_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_si_rcv_ctrl_init function initializes a
-* Switch Info Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_si_rcv_ctrl_init(
- IN osm_si_rcv_ctrl_t* const p_ctrl,
- IN osm_si_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_si_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_si_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_si_rcv_ctrl_construct,
-* osm_si_rcv_ctrl_destroy, osm_si_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: Switch Info Receive Controller/osm_si_rcv_ctrl_is_inited
-* NAME
-* osm_si_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_si_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_si_rcv_ctrl_is_inited(
- IN const osm_si_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_si_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_si_rcv_ctrl_construct or osm_si_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* Switch Info Receive Controller object, osm_si_rcv_ctrl_construct,
-* osm_si_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_SI_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_trap_rcv.h b/osm/include/opensm/osm_trap_rcv.h
index 813ee43..cc565db 100644
--- a/osm/include/opensm/osm_trap_rcv.h
+++ b/osm/include/opensm/osm_trap_rcv.h
@@ -101,13 +101,13 @@ BEGIN_C_DECLS
*/
typedef struct _osm_trap_rcv
{
- osm_subn_t *p_subn;
- osm_stats_t *p_stats;
- osm_log_t *p_log;
- osm_resp_t *p_resp;
- osm_state_mgr_t *p_state_mgr;
- cl_plock_t *p_lock;
- cl_event_wheel_t trap_aging_tracker;
+ osm_subn_t *p_subn;
+ osm_stats_t *p_stats;
+ osm_log_t *p_log;
+ osm_resp_t *p_resp;
+ osm_state_mgr_t *p_state_mgr;
+ cl_plock_t *p_lock;
+ cl_event_wheel_t trap_aging_tracker;
} osm_trap_rcv_t;
/*
* FIELDS
@@ -263,14 +263,14 @@ ib_api_status_t osm_trap_rcv_init(
* SYNOPSIS
*/
void osm_trap_rcv_process(
- IN osm_trap_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_trap_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's Trap attribute.
*
diff --git a/osm/include/opensm/osm_trap_rcv_ctrl.h b/osm/include/opensm/osm_trap_rcv_ctrl.h
deleted file mode 100644
index be31c62..0000000
--- a/osm/include/opensm/osm_trap_rcv_ctrl.h
+++ /dev/null
@@ -1,232 +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_trap_rcv_ctrl_t.
- * This object represents a controller that receives the IBA Trap
- * attribute from a node.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.2 $
- */
-
-#ifndef _OSM_TRAP_RCV_CTRL_H_
-#define _OSM_TRAP_RCV_CTRL_H_
-
-#include <complib/cl_dispatcher.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_trap_rcv.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
-
-/***** OpenSM/Trap Receive Controller
-* NAME
-* Trap Receive Controller
-*
-* DESCRIPTION
-* The Trap Receive Controller object encapsulates the information
-* needed to receive the Trap attribute from a node.
-*
-* The Trap 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: Trap Receive Controller/osm_trap_rcv_ctrl_t
-* NAME
-* osm_trap_rcv_ctrl_t
-*
-* DESCRIPTION
-* Trap Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_trap_rcv_ctrl
-{
- osm_trap_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_trap_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the Trap Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* Trap Receive Controller object
-*********/
-
-/****f* OpenSM: Trap Receive Controller/osm_trap_rcv_ctrl_construct
-* NAME
-* osm_trap_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a Trap Receive Controller object.
-*
-* SYNOPSIS
-*/
-void
-osm_trap_rcv_ctrl_construct(
- IN osm_trap_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a Trap Receive Controller object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_trap_rcv_ctrl_init, osm_trap_rcv_ctrl_destroy
-*
-* Calling osm_trap_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_trap_rcv_ctrl_init.
-*
-* SEE ALSO
-* Trap Receive Controller object, osm_trap_rcv_ctrl_init,
-* osm_trap_rcv_ctrl_destroy
-*********/
-
-/****f* OpenSM: Trap Receive Controller/osm_trap_rcv_ctrl_destroy
-* NAME
-* osm_trap_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_trap_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void
-osm_trap_rcv_ctrl_destroy(
- IN osm_trap_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
-* Trap Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_trap_rcv_ctrl_construct or osm_trap_rcv_ctrl_init.
-*
-* SEE ALSO
-* Trap Receive Controller object, osm_trap_rcv_ctrl_construct,
-* osm_trap_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: Trap Receive Controller/osm_trap_rcv_ctrl_init
-* NAME
-* osm_trap_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_trap_rcv_ctrl_init function initializes a
-* Trap Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t
-osm_trap_rcv_ctrl_init(
- IN osm_trap_rcv_ctrl_t* const p_ctrl,
- IN osm_trap_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_trap_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_trap_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 Trap Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other Trap Receive Controller methods.
-*
-* SEE ALSO
-* Trap Receive Controller object, osm_trap_rcv_ctrl_construct,
-* osm_trap_rcv_ctrl_destroy
-*********/
-
-END_C_DECLS
-
-#endif /* OSM_TRAP_RCV_CTRL_H_ */
diff --git a/osm/include/opensm/osm_vl_arb_rcv.h b/osm/include/opensm/osm_vl_arb_rcv.h
index 428dffc..4027a2d 100644
--- a/osm/include/opensm/osm_vl_arb_rcv.h
+++ b/osm/include/opensm/osm_vl_arb_rcv.h
@@ -98,11 +98,10 @@ BEGIN_C_DECLS
*/
typedef struct _osm_vla_rcv
{
- osm_subn_t *p_subn;
- osm_req_t *p_req;
- osm_log_t *p_log;
- cl_plock_t *p_lock;
-
+ osm_subn_t *p_subn;
+ osm_req_t *p_req;
+ osm_log_t *p_log;
+ cl_plock_t *p_lock;
} osm_vla_rcv_t;
/*
* FIELDS
@@ -239,14 +238,14 @@ ib_api_status_t osm_vla_rcv_init(
* SYNOPSIS
*/
void osm_vla_rcv_process(
- IN const osm_vla_rcv_t* const p_ctrl,
- IN osm_madw_t* const p_madw );
+ IN void *context,
+ IN void *data );
/*
* PARAMETERS
-* p_ctrl
+* context
* [in] Pointer to an osm_vla_rcv_t object.
*
-* p_madw
+* data
* [in] Pointer to the MAD Wrapper containing the MAD
* that contains the node's SLtoVL attribute.
*
diff --git a/osm/include/opensm/osm_vl_arb_rcv_ctrl.h b/osm/include/opensm/osm_vl_arb_rcv_ctrl.h
deleted file mode 100644
index d005b47..0000000
--- a/osm/include/opensm/osm_vl_arb_rcv_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_vla_rcv_ctrl_t.
- * This object represents a controller that set or get resp the
- * IBA VL Arbitration Table attribute from a port.
- * This object is part of the OpenSM family of objects.
- *
- * Environment:
- * Linux User Mode
- *
- * $Revision: 1.3 $
- */
-
-#ifndef _OSM_VLA_RCV_CTRL_H_
-#define _OSM_VLA_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_vl_arb_rcv.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/VL Arbitration Table Receive Controller
-* NAME
-* VL Arbitration Receive Controller
-*
-* DESCRIPTION
-* The VL Arbitration Receive Controller object encapsulates
-* the information needed to get or set VL Arbitration of a port.
-*
-* The VL Arbitration 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: VL Arbitration Receive Controller/osm_vla_rcv_ctrl_t
-* NAME
-* osm_vla_rcv_ctrl_t
-*
-* DESCRIPTION
-* VL Arbitration Receive Controller structure.
-*
-* This object should be treated as opaque and should
-* be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_vla_rcv_ctrl
-{
- osm_vla_rcv_t *p_rcv;
- osm_log_t *p_log;
- cl_dispatcher_t *p_disp;
- cl_disp_reg_handle_t h_disp;
-
-} osm_vla_rcv_ctrl_t;
-/*
-* FIELDS
-* p_rcv
-* Pointer to the VL Arbitration Receiver object.
-*
-* p_log
-* Pointer to the log object.
-*
-* p_disp
-* Pointer to the Dispatcher.
-*
-* h_disp
-* Handle returned from dispatcher registration.
-*
-* SEE ALSO
-* VL Arbitration Receive Controller object
-* VL Arbitration Receiver object
-*********/
-
-/****f* OpenSM: VL Arbitration Receive Controller/osm_vla_rcv_ctrl_construct
-* NAME
-* osm_vla_rcv_ctrl_construct
-*
-* DESCRIPTION
-* This function constructs a VL Arbitration Receive Controller object.
-*
-* SYNOPSIS
-*/
-void osm_vla_rcv_ctrl_construct(
- IN osm_vla_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to a VL Arbitration Receive Controller
-* object to construct.
-*
-* RETURN VALUE
-* This function does not return a value.
-*
-* NOTES
-* Allows calling osm_vla_rcv_ctrl_init, osm_vla_rcv_ctrl_destroy,
-* and osm_vla_rcv_ctrl_is_inited.
-*
-* Calling osm_vla_rcv_ctrl_construct is a prerequisite to calling any other
-* method except osm_vla_rcv_ctrl_init.
-*
-* SEE ALSO
-* VL Arbitration Receive Controller object, osm_vla_rcv_ctrl_init,
-* osm_vla_rcv_ctrl_destroy, osm_vla_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: VL Arbitration Receive Controller/osm_vla_rcv_ctrl_destroy
-* NAME
-* osm_vla_rcv_ctrl_destroy
-*
-* DESCRIPTION
-* The osm_vla_rcv_ctrl_destroy function destroys the object, releasing
-* all resources.
-*
-* SYNOPSIS
-*/
-void osm_vla_rcv_ctrl_destroy(
- IN osm_vla_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
-* VL Arbitration Receive Controller object.
-* Further operations should not be attempted on the destroyed object.
-* This function should only be called after a call to
-* osm_vla_rcv_ctrl_construct or osm_vla_rcv_ctrl_init.
-*
-* SEE ALSO
-* VL Arbitration Receive Controller object, osm_vla_rcv_ctrl_construct,
-* osm_vla_rcv_ctrl_init
-*********/
-
-/****f* OpenSM: VL Arbitration Receive Controller/osm_vla_rcv_ctrl_init
-* NAME
-* osm_vla_rcv_ctrl_init
-*
-* DESCRIPTION
-* The osm_vla_rcv_ctrl_init function initializes a
-* VL Arbitration Receive Controller object for use.
-*
-* SYNOPSIS
-*/
-ib_api_status_t osm_vla_rcv_ctrl_init(
- IN osm_vla_rcv_ctrl_t* const p_ctrl,
- IN osm_vla_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_vla_rcv_ctrl_t object to initialize.
-*
-* p_rcv
-* [in] Pointer to an osm_vla_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 VL Arbitration Receive Controller object was initialized
-* successfully.
-*
-* NOTES
-* Allows calling other VL Arbitration Receive Controller methods.
-*
-* SEE ALSO
-* VL Arbitration Receive Controller object, osm_vla_rcv_ctrl_construct,
-* osm_vla_rcv_ctrl_destroy, osm_vla_rcv_ctrl_is_inited
-*********/
-
-/****f* OpenSM: VL Arbitration Receive Controller/osm_vla_rcv_ctrl_is_inited
-* NAME
-* osm_vla_rcv_ctrl_is_inited
-*
-* DESCRIPTION
-* Indicates if the object has been initialized with osm_vla_rcv_ctrl_init.
-*
-* SYNOPSIS
-*/
-boolean_t osm_vla_rcv_ctrl_is_inited(
- IN const osm_vla_rcv_ctrl_t* const p_ctrl );
-/*
-* PARAMETERS
-* p_ctrl
-* [in] Pointer to an osm_vla_rcv_ctrl_t object.
-*
-* RETURN VALUES
-* TRUE if the object was initialized successfully,
-* FALSE otherwise.
-*
-* NOTES
-* The osm_vla_rcv_ctrl_construct or osm_vla_rcv_ctrl_init must be
-* called before using this function.
-*
-* SEE ALSO
-* VL Arbitration Receive Controller object, osm_vla_rcv_ctrl_construct,
-* osm_vla_rcv_ctrl_init
-*********/
-
-END_C_DECLS
-
-#endif /* _OSM_VLA_RCV_CTRL_H_ */
diff --git a/osm/opensm/Makefile.am b/osm/opensm/Makefile.am
index dd6dbae..d9e63d4 100644
--- a/osm/opensm/Makefile.am
+++ b/osm/opensm/Makefile.am
@@ -30,15 +30,15 @@ bin_PROGRAMS = opensm
opensm_SOURCES = main.c osm_console.c osm_db_files.c \
osm_db_pack.c osm_drop_mgr.c osm_fwd_tbl.c \
osm_inform.c osm_lid_mgr.c osm_lin_fwd_rcv.c \
- osm_lin_fwd_rcv_ctrl.c osm_lin_fwd_tbl.c osm_link_mgr.c \
- osm_matrix.c osm_mcast_fwd_rcv.c osm_mcast_fwd_rcv_ctrl.c \
+ osm_lin_fwd_tbl.c osm_link_mgr.c \
+ osm_matrix.c osm_mcast_fwd_rcv.c \
osm_mcast_mgr.c osm_mcast_tbl.c osm_mcm_info.c \
osm_mcm_port.c osm_mtree.c osm_multicast.c osm_node.c \
- osm_node_desc_rcv.c osm_node_desc_rcv_ctrl.c \
- osm_node_info_rcv.c osm_node_info_rcv_ctrl.c \
+ osm_node_desc_rcv.c \
+ osm_node_info_rcv.c \
osm_opensm.c osm_pkey.c osm_pkey_mgr.c osm_pkey_rcv.c \
- osm_pkey_rcv_ctrl.c osm_port.c \
- osm_port_info_rcv.c osm_port_info_rcv_ctrl.c \
+ osm_port.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 \
@@ -59,19 +59,19 @@ opensm_SOURCES = main.c osm_console.c osm_db_files.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_slvl_map_rcv.c osm_slvl_map_rcv_ctrl.c \
+ osm_slvl_map_rcv.c \
osm_sm.c osm_sminfo_rcv.c \
- osm_sminfo_rcv_ctrl.c osm_sm_mad_ctrl.c \
+ osm_sm_mad_ctrl.c \
osm_sm_state_mgr.c osm_state_mgr.c \
osm_state_mgr_ctrl.c osm_subnet.c \
osm_sweep_fail_ctrl.c osm_sw_info_rcv.c \
- osm_sw_info_rcv_ctrl.c osm_switch.c \
+ osm_switch.c \
osm_prtn.c osm_prtn_config.c osm_qos.c osm_router.c \
- osm_trap_rcv.c osm_trap_rcv_ctrl.c \
+ osm_trap_rcv.c \
osm_ucast_mgr.c osm_ucast_updn.c \
osm_ucast_file.c osm_ucast_ftree.c \
osm_vl15intf.c osm_vl_arb_rcv.c \
- osm_vl_arb_rcv_ctrl.c st.c
+ st.c
if OSMV_OPENIB
opensm_CFLAGS = -Wall $(OSMV_CFLAGS) -fno-strict-aliasing -DVENDOR_RMPP_SUPPORT -DDUAL_SIDED_RMPP $(DBGFLAGS) -D_XOPEN_SOURCE=600 -D_BSD_SOURCE=1
opensm_CXXFLAGS = -Wall $(OSMV_CFLAGS) -DVENDOR_RMPP_SUPPORT -DDUAL_SIDED_RMPP $(DBGFLAGS) -D_XOPEN_SOURCE=600 -D_BSD_SOURCE=1
diff --git a/osm/opensm/osm_lin_fwd_rcv.c b/osm/opensm/osm_lin_fwd_rcv.c
index 9750bf0..eda10d8 100644
--- a/osm/opensm/osm_lin_fwd_rcv.c
+++ b/osm/opensm/osm_lin_fwd_rcv.c
@@ -104,9 +104,11 @@ osm_lft_rcv_init(
**********************************************************************/
void
osm_lft_rcv_process(
- IN const osm_lft_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_lft_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_smp_t *p_smp;
uint32_t block_num;
osm_switch_t *p_sw;
diff --git a/osm/opensm/osm_lin_fwd_rcv_ctrl.c b/osm/opensm/osm_lin_fwd_rcv_ctrl.c
deleted file mode 100644
index 6d8b664..0000000
--- a/osm/opensm/osm_lin_fwd_rcv_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_lft_rcv_ctrl_t.
- * This object represents the LFT Receive 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_lin_fwd_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_lft_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_lft_rcv_process( ((osm_lft_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_lft_rcv_ctrl_construct(
- IN osm_lft_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_lft_rcv_ctrl_destroy(
- IN osm_lft_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_lft_rcv_ctrl_init(
- IN osm_lft_rcv_ctrl_t* const p_ctrl,
- IN osm_lft_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_lft_rcv_ctrl_init );
-
- osm_lft_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,
- __osm_lft_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_lft_rcv_ctrl_init: ERR 1601: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_mcast_fwd_rcv.c b/osm/opensm/osm_mcast_fwd_rcv.c
index 39b33c2..19a4788 100644
--- a/osm/opensm/osm_mcast_fwd_rcv.c
+++ b/osm/opensm/osm_mcast_fwd_rcv.c
@@ -109,9 +109,11 @@ osm_mft_rcv_init(
**********************************************************************/
void
osm_mft_rcv_process(
- IN const osm_mft_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_mft_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_smp_t *p_smp;
uint32_t block_num;
uint8_t position;
diff --git a/osm/opensm/osm_mcast_fwd_rcv_ctrl.c b/osm/opensm/osm_mcast_fwd_rcv_ctrl.c
deleted file mode 100644
index be0a3e8..0000000
--- a/osm/opensm/osm_mcast_fwd_rcv_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_mft_rcv_ctrl_t.
- * This object represents the LFT Receive 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_mcast_fwd_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_mft_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_mft_rcv_process( ((osm_mft_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mft_rcv_ctrl_construct(
- IN osm_mft_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_mft_rcv_ctrl_destroy(
- IN osm_mft_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_mft_rcv_ctrl_init(
- IN osm_mft_rcv_ctrl_t* const p_ctrl,
- IN osm_mft_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_mft_rcv_ctrl_init );
-
- osm_mft_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,
- __osm_mft_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_mft_rcv_ctrl_init: ERR 0901: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_node_desc_rcv.c b/osm/opensm/osm_node_desc_rcv.c
index d759a50..13c5a93 100644
--- a/osm/opensm/osm_node_desc_rcv.c
+++ b/osm/opensm/osm_node_desc_rcv.c
@@ -138,9 +138,11 @@ osm_nd_rcv_init(
**********************************************************************/
void
osm_nd_rcv_process(
- IN const osm_nd_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_nd_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
cl_qmap_t *p_guid_tbl;
ib_node_desc_t *p_nd;
ib_smp_t *p_smp;
diff --git a/osm/opensm/osm_node_desc_rcv_ctrl.c b/osm/opensm/osm_node_desc_rcv_ctrl.c
deleted file mode 100644
index 693bf5c..0000000
--- a/osm/opensm/osm_node_desc_rcv_ctrl.c
+++ /dev/null
@@ -1,127 +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_nd_rcv_ctrl_t.
- * This object represents the NodeDescription 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_node_desc_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_nd_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_nd_rcv_process( ((osm_nd_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_nd_rcv_ctrl_construct(
- IN osm_nd_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_nd_rcv_ctrl_destroy(
- IN osm_nd_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_nd_rcv_ctrl_init(
- IN osm_nd_rcv_ctrl_t* const p_ctrl,
- IN osm_nd_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_nd_rcv_ctrl_init );
-
- osm_nd_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_DESC,
- __osm_nd_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_nd_rcv_ctrl_init: ERR 0C01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_node_info_rcv.c b/osm/opensm/osm_node_info_rcv.c
index bc093ea..5cbd3b7 100644
--- a/osm/opensm/osm_node_info_rcv.c
+++ b/osm/opensm/osm_node_info_rcv.c
@@ -1016,9 +1016,11 @@ osm_ni_rcv_init(
**********************************************************************/
void
osm_ni_rcv_process(
- IN const osm_ni_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_ni_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
cl_qmap_t *p_guid_tbl;
ib_node_info_t *p_ni;
ib_smp_t *p_smp;
diff --git a/osm/opensm/osm_node_info_rcv_ctrl.c b/osm/opensm/osm_node_info_rcv_ctrl.c
deleted file mode 100644
index 3548d77..0000000
--- a/osm/opensm/osm_node_info_rcv_ctrl.c
+++ /dev/null
@@ -1,127 +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_ni_rcv_ctrl_t.
- * This object represents the NodeInfo 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_node_info_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_ni_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_ni_rcv_process( ((osm_ni_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_ni_rcv_ctrl_construct(
- IN osm_ni_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_ni_rcv_ctrl_destroy(
- IN osm_ni_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_ni_rcv_ctrl_init(
- IN osm_ni_rcv_ctrl_t* const p_ctrl,
- IN osm_ni_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_ni_rcv_ctrl_init );
-
- osm_ni_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_INFO,
- __osm_ni_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_ni_rcv_ctrl_init: ERR 0E01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_pkey_rcv.c b/osm/opensm/osm_pkey_rcv.c
index 3dd569e..76af9fc 100644
--- a/osm/opensm/osm_pkey_rcv.c
+++ b/osm/opensm/osm_pkey_rcv.c
@@ -109,9 +109,11 @@ osm_pkey_rcv_init(
*/
void
osm_pkey_rcv_process(
- IN const osm_pkey_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_pkey_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
cl_qmap_t *p_guid_tbl;
ib_pkey_table_t *p_pkey_tbl;
ib_smp_t *p_smp;
diff --git a/osm/opensm/osm_pkey_rcv_ctrl.c b/osm/opensm/osm_pkey_rcv_ctrl.c
deleted file mode 100644
index 1d7323a..0000000
--- a/osm/opensm/osm_pkey_rcv_ctrl.c
+++ /dev/null
@@ -1,116 +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.
- *
- */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#include <string.h>
-#include <opensm/osm_pkey_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-static void
-__osm_pkey_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_pkey_rcv_process( ((osm_pkey_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pkey_rcv_ctrl_construct(
- IN osm_pkey_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pkey_rcv_ctrl_destroy(
- IN osm_pkey_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_pkey_rcv_ctrl_init(
- IN osm_pkey_rcv_ctrl_t* const p_ctrl,
- IN osm_pkey_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_rcv_ctrl_init );
-
- osm_pkey_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,
- __osm_pkey_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_pkey_rcv_ctrl_init: ERR 4901: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_port_info_rcv.c b/osm/opensm/osm_port_info_rcv.c
index ced745d..66141e1 100644
--- a/osm/opensm/osm_port_info_rcv.c
+++ b/osm/opensm/osm_port_info_rcv.c
@@ -652,9 +652,11 @@ osm_pi_rcv_process_set(
**********************************************************************/
void
osm_pi_rcv_process(
- IN const osm_pi_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_pi_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
cl_qmap_t *p_guid_tbl;
ib_port_info_t *p_pi;
ib_smp_t *p_smp;
diff --git a/osm/opensm/osm_port_info_rcv_ctrl.c b/osm/opensm/osm_port_info_rcv_ctrl.c
deleted file mode 100644
index a3f9a23..0000000
--- a/osm/opensm/osm_port_info_rcv_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_pi_rcv_ctrl_t.
- * This object represents the PortInfo 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_port_info_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_pi_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_pi_rcv_process( ((osm_pi_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pi_rcv_ctrl_construct(
- IN osm_pi_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_pi_rcv_ctrl_destroy(
- IN osm_pi_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_pi_rcv_ctrl_init(
- IN osm_pi_rcv_ctrl_t* const p_ctrl,
- IN osm_pi_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_pi_rcv_ctrl_init );
-
- osm_pi_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_PORT_INFO,
- __osm_pi_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_pi_rcv_ctrl_init: ERR 1001: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_slvl_map_rcv.c b/osm/opensm/osm_slvl_map_rcv.c
index 899f677..3fa3a7e 100644
--- a/osm/opensm/osm_slvl_map_rcv.c
+++ b/osm/opensm/osm_slvl_map_rcv.c
@@ -121,9 +121,11 @@ osm_slvl_rcv_init(
*/
void
osm_slvl_rcv_process(
- IN const osm_slvl_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *p_data )
{
+ osm_slvl_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = p_data;
cl_qmap_t *p_guid_tbl;
ib_slvl_table_t *p_slvl_tbl;
ib_smp_t *p_smp;
diff --git a/osm/opensm/osm_slvl_map_rcv_ctrl.c b/osm/opensm/osm_slvl_map_rcv_ctrl.c
deleted file mode 100644
index 4d21a3d..0000000
--- a/osm/opensm/osm_slvl_map_rcv_ctrl.c
+++ /dev/null
@@ -1,127 +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_rcv_ctrl_t.
- * This object represents the SLtoVL 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_slvl_map_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_slvl_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_slvl_rcv_process( ((osm_slvl_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_slvl_rcv_ctrl_construct(
- IN osm_slvl_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_slvl_rcv_ctrl_destroy(
- IN osm_slvl_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_slvl_rcv_ctrl_init(
- IN osm_slvl_rcv_ctrl_t* const p_ctrl,
- IN osm_slvl_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_rcv_ctrl_init );
-
- osm_slvl_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,
- __osm_slvl_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_slvl_rcv_ctrl_init: ERR 2D01: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_sm.c b/osm/opensm/osm_sm.c
index 71fd847..a2b531f 100644
--- a/osm/opensm/osm_sm.c
+++ b/osm/opensm/osm_sm.c
@@ -140,14 +140,10 @@ osm_sm_construct(
osm_req_ctrl_construct( &p_sm->req_ctrl );
osm_resp_construct( &p_sm->resp );
osm_ni_rcv_construct( &p_sm->ni_rcv );
- osm_ni_rcv_ctrl_construct( &p_sm->ni_rcv_ctrl );
osm_pi_rcv_construct( &p_sm->pi_rcv );
- osm_pi_rcv_ctrl_construct( &p_sm->pi_rcv_ctrl );
osm_nd_rcv_construct( &p_sm->nd_rcv );
- osm_nd_rcv_ctrl_construct( &p_sm->nd_rcv_ctrl );
osm_sm_mad_ctrl_construct( &p_sm->mad_ctrl );
osm_si_rcv_construct( &p_sm->si_rcv );
- osm_si_rcv_ctrl_construct( &p_sm->si_rcv_ctrl );
osm_lid_mgr_construct( &p_sm->lid_mgr );
osm_ucast_mgr_construct( &p_sm->ucast_mgr );
osm_link_mgr_construct( &p_sm->link_mgr );
@@ -155,21 +151,14 @@ osm_sm_construct(
osm_state_mgr_ctrl_construct( &p_sm->state_mgr_ctrl );
osm_drop_mgr_construct( &p_sm->drop_mgr );
osm_lft_rcv_construct( &p_sm->lft_rcv );
- osm_lft_rcv_ctrl_construct( &p_sm->lft_rcv_ctrl );
osm_mft_rcv_construct( &p_sm->mft_rcv );
- osm_mft_rcv_ctrl_construct( &p_sm->mft_rcv_ctrl );
osm_sweep_fail_ctrl_construct( &p_sm->sweep_fail_ctrl );
osm_sminfo_rcv_construct( &p_sm->sm_info_rcv );
- osm_sminfo_rcv_ctrl_construct( &p_sm->sm_info_rcv_ctrl );
osm_trap_rcv_construct( &p_sm->trap_rcv );
- osm_trap_rcv_ctrl_construct( &p_sm->trap_rcv_ctrl );
osm_sm_state_mgr_construct( &p_sm->sm_state_mgr );
osm_slvl_rcv_construct( &p_sm->slvl_rcv );
- osm_slvl_rcv_ctrl_construct( &p_sm->slvl_rcv_ctrl );
osm_vla_rcv_construct( &p_sm->vla_rcv );
- osm_vla_rcv_ctrl_construct( &p_sm->vla_rcv_ctrl );
osm_pkey_rcv_construct( &p_sm->pkey_rcv );
- osm_pkey_rcv_ctrl_construct( &p_sm->pkey_rcv_ctrl );
osm_mcast_mgr_construct( &p_sm->mcast_mgr );
}
@@ -206,18 +195,18 @@ osm_sm_shutdown(
* dispatcher are complete.
*/
osm_sm_mad_ctrl_destroy( &p_sm->mad_ctrl );
- osm_trap_rcv_ctrl_destroy( &p_sm->trap_rcv_ctrl );
- osm_sminfo_rcv_ctrl_destroy( &p_sm->sm_info_rcv_ctrl );
osm_req_ctrl_destroy( &p_sm->req_ctrl );
- osm_ni_rcv_ctrl_destroy( &p_sm->ni_rcv_ctrl );
- osm_pi_rcv_ctrl_destroy( &p_sm->pi_rcv_ctrl );
- osm_si_rcv_ctrl_destroy( &p_sm->si_rcv_ctrl );
- osm_nd_rcv_ctrl_destroy( &p_sm->nd_rcv_ctrl );
- osm_lft_rcv_ctrl_destroy( &p_sm->lft_rcv_ctrl );
- osm_mft_rcv_ctrl_destroy( &p_sm->mft_rcv_ctrl );
- osm_slvl_rcv_ctrl_destroy( &p_sm->slvl_rcv_ctrl );
- osm_vla_rcv_ctrl_destroy( &p_sm->vla_rcv_ctrl );
- osm_pkey_rcv_ctrl_destroy( &p_sm->pkey_rcv_ctrl );
+ cl_disp_unregister(p_sm->ni_disp_h);
+ cl_disp_unregister(p_sm->pi_disp_h);
+ cl_disp_unregister(p_sm->si_disp_h);
+ cl_disp_unregister(p_sm->nd_disp_h);
+ cl_disp_unregister(p_sm->lft_disp_h);
+ cl_disp_unregister(p_sm->mft_disp_h);
+ cl_disp_unregister(p_sm->sm_info_disp_h);
+ cl_disp_unregister(p_sm->trap_disp_h);
+ cl_disp_unregister(p_sm->slvl_disp_h);
+ cl_disp_unregister(p_sm->vla_disp_h);
+ cl_disp_unregister(p_sm->pkey_disp_h);
osm_sweep_fail_ctrl_destroy( &p_sm->sweep_fail_ctrl );
osm_state_mgr_ctrl_destroy( &p_sm->state_mgr_ctrl );
@@ -323,22 +312,12 @@ osm_sm_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_ni_rcv_ctrl_init( &p_sm->ni_rcv_ctrl,
- &p_sm->ni_rcv, p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_pi_rcv_init( &p_sm->pi_rcv,
&p_sm->req,
p_subn, p_log, &p_sm->state_mgr, p_lock );
if( status != IB_SUCCESS )
goto Exit;
- status = osm_pi_rcv_ctrl_init( &p_sm->pi_rcv_ctrl,
- &p_sm->pi_rcv, p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_si_rcv_init( &p_sm->si_rcv,
p_sm->p_subn,
p_sm->p_log,
@@ -347,20 +326,10 @@ osm_sm_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_si_rcv_ctrl_init( &p_sm->si_rcv_ctrl,
- &p_sm->si_rcv, p_sm->p_log, p_sm->p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_nd_rcv_init( &p_sm->nd_rcv, p_subn, p_log, p_lock );
if( status != IB_SUCCESS )
goto Exit;
- status = osm_nd_rcv_ctrl_init( &p_sm->nd_rcv_ctrl,
- &p_sm->nd_rcv, p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_lid_mgr_init( &p_sm->lid_mgr,
&p_sm->req,
p_sm->p_subn,
@@ -414,20 +383,10 @@ osm_sm_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_lft_rcv_ctrl_init( &p_sm->lft_rcv_ctrl,
- &p_sm->lft_rcv, p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_mft_rcv_init( &p_sm->mft_rcv, p_subn, p_log, p_lock );
if( status != IB_SUCCESS )
goto Exit;
- status = osm_mft_rcv_ctrl_init( &p_sm->mft_rcv_ctrl,
- &p_sm->mft_rcv, p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_sweep_fail_ctrl_init( &p_sm->sweep_fail_ctrl,
p_log, &p_sm->state_mgr, p_disp );
if( status != IB_SUCCESS )
@@ -443,12 +402,6 @@ osm_sm_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_sminfo_rcv_ctrl_init( &p_sm->sm_info_rcv_ctrl,
- &p_sm->sm_info_rcv,
- p_sm->p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_trap_rcv_init( &p_sm->trap_rcv,
p_subn,
p_stats,
@@ -456,11 +409,6 @@ osm_sm_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_trap_rcv_ctrl_init( &p_sm->trap_rcv_ctrl,
- &p_sm->trap_rcv, p_sm->p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_sm_state_mgr_init( &p_sm->sm_state_mgr,
&p_sm->state_mgr,
p_sm->p_subn, &p_sm->req, p_sm->p_log );
@@ -477,29 +425,70 @@ osm_sm_init(
if( status != IB_SUCCESS )
goto Exit;
- status = osm_slvl_rcv_ctrl_init( &p_sm->slvl_rcv_ctrl,
- &p_sm->slvl_rcv, p_sm->p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_vla_rcv_init( &p_sm->vla_rcv,
&p_sm->req, p_subn, p_log, p_lock );
if( status != IB_SUCCESS )
goto Exit;
- status = osm_vla_rcv_ctrl_init( &p_sm->vla_rcv_ctrl,
- &p_sm->vla_rcv, p_sm->p_log, p_disp );
- if( status != IB_SUCCESS )
- goto Exit;
-
status = osm_pkey_rcv_init( &p_sm->pkey_rcv,
&p_sm->req, p_subn, p_log, p_lock );
if( status != IB_SUCCESS )
goto Exit;
- status = osm_pkey_rcv_ctrl_init( &p_sm->pkey_rcv_ctrl,
- &p_sm->pkey_rcv, p_sm->p_log, p_disp );
- if( status != IB_SUCCESS )
+ p_sm->ni_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_NODE_INFO,
+ osm_ni_rcv_process, &p_sm->ni_rcv);
+ if( p_sm->ni_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->pi_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_PORT_INFO,
+ osm_pi_rcv_process, &p_sm->pi_rcv);
+ if( p_sm->pi_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->si_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_SWITCH_INFO,
+ osm_si_rcv_process, &p_sm->si_rcv);
+ if( p_sm->si_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->nd_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_NODE_DESC,
+ osm_nd_rcv_process, &p_sm->nd_rcv);
+ if( p_sm->nd_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->lft_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_LFT,
+ osm_lft_rcv_process, &p_sm->lft_rcv);
+ if( p_sm->lft_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->mft_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_MFT,
+ osm_mft_rcv_process, &p_sm->mft_rcv);
+ if( p_sm->mft_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->sm_info_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_SM_INFO,
+ osm_sminfo_rcv_process,
+ &p_sm->sm_info_rcv);
+ if( p_sm->sm_info_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->trap_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_NOTICE,
+ osm_trap_rcv_process, &p_sm->trap_rcv);
+ if( p_sm->trap_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->slvl_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_SLVL,
+ osm_slvl_rcv_process, &p_sm->slvl_rcv);
+ if( p_sm->slvl_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->vla_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_VL_ARB,
+ osm_vla_rcv_process, &p_sm->vla_rcv);
+ if( p_sm->vla_disp_h == CL_DISP_INVALID_HANDLE )
+ goto Exit;
+
+ p_sm->pkey_disp_h = cl_disp_register(p_disp, OSM_MSG_MAD_PKEY,
+ osm_pkey_rcv_process, &p_sm->pkey_rcv);
+ if( p_sm->pkey_disp_h == CL_DISP_INVALID_HANDLE )
goto Exit;
/*
diff --git a/osm/opensm/osm_sminfo_rcv.c b/osm/opensm/osm_sminfo_rcv.c
index 27d55e4..51b588e 100644
--- a/osm/opensm/osm_sminfo_rcv.c
+++ b/osm/opensm/osm_sminfo_rcv.c
@@ -717,9 +717,11 @@ __osm_sminfo_rcv_process_set_response(
**********************************************************************/
void
osm_sminfo_rcv_process(
- IN const osm_sminfo_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_sminfo_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_smp_t *p_smp;
osm_smi_context_t *p_smi_context;
diff --git a/osm/opensm/osm_sminfo_rcv_ctrl.c b/osm/opensm/osm_sminfo_rcv_ctrl.c
deleted file mode 100644
index 593b2ae..0000000
--- a/osm/opensm/osm_sminfo_rcv_ctrl.c
+++ /dev/null
@@ -1,127 +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_sminfo_rcv_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_sminfo_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_sminfo_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_sminfo_rcv_process( ((osm_sminfo_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_sminfo_rcv_ctrl_construct(
- IN osm_sminfo_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_sminfo_rcv_ctrl_destroy(
- IN osm_sminfo_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_sminfo_rcv_ctrl_init(
- IN osm_sminfo_rcv_ctrl_t* const p_ctrl,
- IN osm_sminfo_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_sminfo_rcv_ctrl_init );
-
- osm_sminfo_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_SM_INFO,
- __osm_sminfo_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_sminfo_rcv_ctrl_init: ERR 3001: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_sw_info_rcv.c b/osm/opensm/osm_sw_info_rcv.c
index 6647d16..fe3fe9f 100644
--- a/osm/opensm/osm_sw_info_rcv.c
+++ b/osm/opensm/osm_sw_info_rcv.c
@@ -581,9 +581,11 @@ osm_si_rcv_init(
**********************************************************************/
void
osm_si_rcv_process(
- IN const osm_si_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_si_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
cl_qmap_t *p_node_guid_tbl;
ib_switch_info_t *p_si;
ib_smp_t *p_smp;
diff --git a/osm/opensm/osm_sw_info_rcv_ctrl.c b/osm/opensm/osm_sw_info_rcv_ctrl.c
deleted file mode 100644
index 4287ba6..0000000
--- a/osm/opensm/osm_sw_info_rcv_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_si_rcv_ctrl_t.
- * This object represents the SwitchInfo 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_sw_info_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_si_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_si_rcv_process( ((osm_si_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_si_rcv_ctrl_construct(
- IN osm_si_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_si_rcv_ctrl_destroy(
- IN osm_si_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_si_rcv_ctrl_init(
- IN osm_si_rcv_ctrl_t* const p_ctrl,
- IN osm_si_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_si_rcv_ctrl_init );
-
- osm_si_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,
- __osm_si_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_si_rcv_ctrl_init: ERR 3701: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
diff --git a/osm/opensm/osm_trap_rcv.c b/osm/opensm/osm_trap_rcv.c
index 164d96a..f994844 100644
--- a/osm/opensm/osm_trap_rcv.c
+++ b/osm/opensm/osm_trap_rcv.c
@@ -742,9 +742,11 @@ __osm_trap_rcv_process_response(
**********************************************************************/
void
osm_trap_rcv_process(
- IN osm_trap_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_trap_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
ib_smp_t *p_smp;
OSM_LOG_ENTER( p_rcv->p_log, osm_trap_rcv_process );
diff --git a/osm/opensm/osm_trap_rcv_ctrl.c b/osm/opensm/osm_trap_rcv_ctrl.c
deleted file mode 100644
index c0a475a..0000000
--- a/osm/opensm/osm_trap_rcv_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_trap_rcv_ctrl_t.
- * This object represents the Trap 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_trap_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_trap_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_trap_rcv_process( ((osm_trap_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_trap_rcv_ctrl_construct(
- IN osm_trap_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_trap_rcv_ctrl_destroy(
- IN osm_trap_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_trap_rcv_ctrl_init(
- IN osm_trap_rcv_ctrl_t* const p_ctrl,
- IN osm_trap_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_trap_rcv_ctrl_init );
-
- osm_trap_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_NOTICE,
- __osm_trap_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_trap_rcv_ctrl_init: ERR 3901: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
diff --git a/osm/opensm/osm_vl_arb_rcv.c b/osm/opensm/osm_vl_arb_rcv.c
index 0ebfe7e..930360a 100644
--- a/osm/opensm/osm_vl_arb_rcv.c
+++ b/osm/opensm/osm_vl_arb_rcv.c
@@ -121,9 +121,11 @@ osm_vla_rcv_init(
*/
void
osm_vla_rcv_process(
- IN const osm_vla_rcv_t* const p_rcv,
- IN osm_madw_t* const p_madw )
+ IN void *context,
+ IN void *data )
{
+ osm_vla_rcv_t *p_rcv = context;
+ osm_madw_t *p_madw = data;
cl_qmap_t *p_guid_tbl;
ib_vl_arb_table_t *p_vla_tbl;
ib_smp_t *p_smp;
diff --git a/osm/opensm/osm_vl_arb_rcv_ctrl.c b/osm/opensm/osm_vl_arb_rcv_ctrl.c
deleted file mode 100644
index fe23856..0000000
--- a/osm/opensm/osm_vl_arb_rcv_ctrl.c
+++ /dev/null
@@ -1,127 +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_vla_rcv_ctrl_t.
- * This object represents the Vl Arbitration 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_vl_arb_rcv_ctrl.h>
-#include <opensm/osm_msgdef.h>
-
-/**********************************************************************
- **********************************************************************/
-void
-__osm_vla_rcv_ctrl_disp_callback(
- IN void *context,
- IN void *p_data )
-{
- /* ignore return status when invoked via the dispatcher */
- osm_vla_rcv_process( ((osm_vla_rcv_ctrl_t*)context)->p_rcv,
- (osm_madw_t*)p_data );
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_vla_rcv_ctrl_construct(
- IN osm_vla_rcv_ctrl_t* const p_ctrl )
-{
- memset( p_ctrl, 0, sizeof(*p_ctrl) );
- p_ctrl->h_disp = CL_DISP_INVALID_HANDLE;
-}
-
-/**********************************************************************
- **********************************************************************/
-void
-osm_vla_rcv_ctrl_destroy(
- IN osm_vla_rcv_ctrl_t* const p_ctrl )
-{
- CL_ASSERT( p_ctrl );
- cl_disp_unregister( p_ctrl->h_disp );
-}
-
-/**********************************************************************
- **********************************************************************/
-ib_api_status_t
-osm_vla_rcv_ctrl_init(
- IN osm_vla_rcv_ctrl_t* const p_ctrl,
- IN osm_vla_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_vla_rcv_ctrl_init );
-
- osm_vla_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,
- __osm_vla_rcv_ctrl_disp_callback,
- p_ctrl );
-
- if( p_ctrl->h_disp == CL_DISP_INVALID_HANDLE )
- {
- osm_log( p_log, OSM_LOG_ERROR,
- "osm_vla_rcv_ctrl_init: ERR 4001: "
- "Dispatcher registration failed\n" );
- status = IB_INSUFFICIENT_RESOURCES;
- goto Exit;
- }
-
- Exit:
- OSM_LOG_EXIT( p_log );
- return( status );
-}
-
--
1.4.4.2.gfc82d
More information about the general
mailing list