Generated from osm_sa.h with ROBODoc vunknown on Wed Aug 07 15:31:49 2002
TABLE OF CONTENTS
- OpenSM/SA
- OpenSM: SA/osm_sa_state_t
- OpenSM: SM/osm_sa_t
- OpenSM: SA/osm_sa_construct
- OpenSM: SA/osm_sa_destroy
- OpenSM: SA/osm_sa_init
- OpenSM: SA/osm_sa_is_inited
- OpenSM: SA/osm_sa_sweep
- OpenSM: SA/osm_sa_bind
NAME
SA
DESCRIPTION
The SM object encapsulates the information needed by the
OpenSM to instantiate a subnet manager. The OpenSM allocates
one SM object per subnet manager.
The SM object is thread safe.
This object should be treated as opaque and should
be manipulated only through the provided functions.
AUTHOR
Ranjit Pandit, Intel
NAME
osm_sa_state_t
DESCRIPTION
Enumerates the possible states of SM object.
SYNOPSIS
typedef enum _osm_sa_state
{
OSM_SA_STATE_INIT = 0,
OSM_SA_STATE_READY
} osm_sa_state_t;
NAME
osm_sa_t
DESCRIPTION
Subnet Manager structure.
This object should be treated as opaque and should
be manipulated only through the provided functions.
SYNOPSIS
typedef struct _osm_sa
{
//osm_thread_state_t thread_state;
osm_sa_state_t state;
//cl_event_t signal;
osm_subn_t *p_subn;
osm_vendor_t *p_vendor;
osm_log_t *p_log;
osm_mad_pool_t *p_mad_pool;
cl_dispatcher_t *p_disp;
cl_plock_t *p_lock;
atomic32_t sa_trans_id;
osm_sa_mad_ctrl_t mad_ctrl;
osm_sa_resp_t resp;
osm_nr_t nr;
osm_nr_ctrl_t nr_ctrl;
//osm_pir_rcv_t pir_rcv;
//osm_pir_rcv_ctrl_t pir_rcv_ctrl;
//osm_sr_rcv_t sr_rcv;
//osm_sr_rcv_ctrl_t sr_rcv_ctrl;
//osm_pr_rcv_t pr_rcv;
//osm_pr_rcv_ctrl_t pr_rcv_ctrl;
//osm_mcmr_rcv_t mcmr_rcv;
//osm_mcmr_rcv_ctrl_t mcmr_rcv_ctrl;
Commented pending implementation...
osm_sminfo_t sm_info;
} osm_sa_t;
FIELDS
p_subn
Pointer to the Subnet object for this subnet.
p_vendor
Pointer to the vendor specific interfaces object.
p_log
Pointer to the log object.
p_mad_pool
Pointer to the MAD pool.
p_vl15
Pointer to the VL15 interface.
gen_req
Generic MAD attribute requester.
gen_req_ctrl
Controller for the generic requester.
nd_rcv_ctrl
Node Description Receive Controller.
ni_rcv_ctrl
Node Info Receive Controller.
pi_rcv_ctrl
Port Info Receive Controller.
si_rcv_ctrl
Switch Info Receive Controller.
nd_rcv_ctrl
Node Description Receive Controller.
mad_ctrl
MAD Controller.
smi_get_ctrl
SM Info Get Controller.
p_disp
Pointer to the Dispatcher.
p_lock
Pointer to the serializing lock.
SEE ALSO
SM object
NAME
osm_sa_construct
DESCRIPTION
This function constructs an SA object.
SYNOPSIS
void osm_sa_construct(
IN osm_sa_t* const p_sa );
PARAMETERS
p_sa
[in] Pointer to a SA object to construct.
RETURN VALUE
This function does not return a value.
NOTES
Allows calling osm_sa_init, osm_sa_destroy, and osm_sa_is_inited.
Calling osm_sa_construct is a prerequisite to calling any other
method except osm_sa_init.
SEE ALSO
SA object, osm_sa_init, osm_sa_destroy, osm_sa_is_inited
NAME
osm_sa_destroy
DESCRIPTION
The osm_sa_destroy function destroys an SA, releasing
all resources.
SYNOPSIS
void osm_sa_destroy(
IN osm_sa_t* const p_sa );
PARAMETERS
p_sa
[in] Pointer to a SA object to destroy.
RETURN VALUE
This function does not return a value.
NOTES
Performs any necessary cleanup of the specified SA object.
Further operations should not be attempted on the destroyed object.
This function should only be called after a call to osm_sa_construct or
osm_sa_init.
SEE ALSO
SA object, osm_sa_construct, osm_sa_init
NAME
osm_sa_init
DESCRIPTION
The osm_sa_init function initializes a SA object for use.
SYNOPSIS
ib_api_status_t osm_sa_init(
IN osm_sa_t* const p_sa,
IN osm_subn_t* const p_subn,
IN osm_vendor_t* const p_vendor,
IN osm_mad_pool_t* const p_mad_pool,
IN osm_log_t* const p_log,
IN osm_stats_t* const p_stats,
IN cl_dispatcher_t* const p_disp,
IN cl_plock_t* const p_lock );
PARAMETERS
p_sa
[in] Pointer to an osm_sa_t object to initialize.
p_subn
[in] Pointer to the Subnet object for this subnet.
p_vendor
[in] Pointer to the vendor specific interfaces object.
p_mad_pool
[in] Pointer to the MAD pool.
p_vl15
[in] Pointer to the VL15 interface.
p_log
[in] Pointer to the log object.
p_stats
[in] Pointer to the statistics object.
p_disp
[in] Pointer to the OpenSM central Dispatcher.
p_lock
[in] Pointer to the OpenSM serializing lock.
RETURN VALUES
CL_SUCCESS if the SA object was initialized successfully.
NOTES
Allows calling other SA methods.
SEE ALSO
SA object, osm_sa_construct, osm_sa_destroy,
osm_sa_is_inited
NAME
osm_sa_is_inited
DESCRIPTION
Indicates if the object has been initialized with osm_sa_init.
SYNOPSIS
boolean_t osm_sa_is_inited(
IN const osm_sa_t* const p_sa );
PARAMETERS
p_sa
[in] Pointer to an osm_sa_t object.
RETURN VALUES
TRUE if the object was initialized successfully,
FALSE otherwise.
NOTES
The osm_sa_construct or osm_sa_init must be called before using
this function.
SEE ALSO
SA object, osm_sa_construct, osm_sa_init
NAME
osm_sa_sweep
DESCRIPTION
Initiates a subnet sweep.
SYNOPSIS
void
osm_sa_sweep(
IN osm_sa_t* const p_sa );
PARAMETERS
p_sa
[in] Pointer to an osm_sa_t object.
RETURN VALUES
CL_SUCCESS if the sweep completed successfully.
NOTES
SEE ALSO
SA object
NAME
osm_sa_bind
DESCRIPTION
Binds the sm object to a port guid.
SYNOPSIS
ib_api_status_t
osm_sa_bind(
IN osm_sa_t* const p_sa,
IN const ib_net64_t port_guid );
PARAMETERS
p_sa
[in] Pointer to an osm_sa_t object to bind.
port_guid
[in] Local port GUID with which to bind.
RETURN VALUES
None
NOTES
A given SA object can only be bound to one port at a time.
SEE ALSO