Merge commit 'dc97a43d4a70c8773a619f11b95b07a787f6f5b7' into merges
[unleashed.git] / share / man / man3rsm / rsm_get_interconnect_topology.3rsm
blob51198965b51ef88b6b27d74c29bc7711d3cff128
1 '\" te
2 .\"  Copyright (c) 2001 by Sun Microsystems, Inc.  All rights reserved.
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH RSM_GET_INTERCONNECT_TOPOLOGY 3RSM "Jun 8, 2001"
7 .SH NAME
8 rsm_get_interconnect_topology, rsm_free_interconnect_topology \- get or free
9 interconnect topology
10 .SH SYNOPSIS
11 .LP
12 .nf
13 cc [ \fIflag\fR... ] \fIfile\fR... -lrsm [ \fIlibrary\fR... ]
14 #include <rsmapi.h>
16 \fBint\fR \fBrsm_get_interconnect_topology\fR(\fBrsm_topology_t **\fR\fItopology_data\fR);
17 .fi
19 .LP
20 .nf
21 \fBvoid\fR \fBrsm_free_interconnect_topology\fR(\fBrsm_topology_t *\fR\fItopology_data\fR);
22 .fi
24 .SH DESCRIPTION
25 .sp
26 .LP
27 The rsm_get_interconnect_topology(3RSM) and
28 \fBrsm_free_interconnect_topology\fR(3RSM) functions provide for access to the
29 interconnect controller and connection data. The key interconnect data required
30 for export and import operations includes the respective cluster nodeids and
31 the controller names. To facilitate applications in the establishment of proper
32 and efficient export and import policies, a delineation of the interconnect
33 topology is provided by this interface. The data provided includes local
34 nodeid, local controller name, its hardware address, and remote connection
35 specification for each local controller.  An application component exporting
36 memory can thus find the set of existing local controllers and correctly assign
37 controllers for the creation and publishing of segments. Exported segments may
38 also be efficiently distributed over the set of controllers consistent with the
39 hardware interconnect and application software. An application component which
40 is to import memory must be informed of the segment id(s) and controller(s)
41 used in the exporting of memory, this needs to be done using some out-of-band
42 mechanism. The topology data structures are defined in the <\fBrsmapi.h\fR>
43 header.
44 .sp
45 .LP
46 The \fBrsm_get_interconnect_topology()\fR returns a pointer to the topology
47 data in a location specified by the \fItopology_data\fR argument.
48 .sp
49 .LP
50 The  \fBrsm_free_interconnect_topology()\fR frees the resources allocated by
51 \fBrsm_get_interconnect_topology()\fR.
52 .SH RETURN VALUES
53 .sp
54 .LP
55 Upon successful completion, \fBrsm_get_interconnect_topology()\fR returns 0.
56 Otherwise, an error value is returned to indicate the error.
57 .SH ERRORS
58 .sp
59 .LP
60 The \fBrsm_get_interconnect_topology()\fR function can return the following
61 errors:
62 .sp
63 .ne 2
64 .na
65 \fB\fBRSMERR_BAD_TOPOLOGY_PTR\fR \fR
66 .ad
67 .RS 28n
68 Invalid topology pointer.
69 .RE
71 .sp
72 .ne 2
73 .na
74 \fB\fBRSMERR_INSUFFICIENT_MEM\fR \fR
75 .ad
76 .RS 28n
77 Insufficient memory.
78 .RE
80 .sp
81 .ne 2
82 .na
83 \fB\fBRSMERR_BAD_ADDR\fR \fR
84 .ad
85 .RS 28n
86 Bad address.
87 .RE
89 .SH ATTRIBUTES
90 .sp
91 .LP
92 See \fBattributes\fR(5) for descriptions of the following attributes:
93 .sp
95 .sp
96 .TS
97 box;
98 c | c
99 l | l .
100 ATTRIBUTE TYPE  ATTRIBUTE VALUE
102 Interface Stability     Evolving
104 MT-Level        MT-Safe
107 .SH SEE ALSO
110 \fBattributes\fR(5)