8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / man / man3dat / dat_srq_query.3dat
blob1603c06dbb5e8f3d879ba62e1dadf583080a30fe
1 '\" te
2 .\" This manual page is derived from the DAT/uDAPL 1.2 specification.
3 .\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
4 .\" 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.
5 .\" 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.
6 .\" 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]
7 .TH DAT_SRQ_QUERY 3DAT "Jul 16, 2004"
8 .SH NAME
9 dat_srq_query \- provide parameters of the shared receive queue
10 .SH SYNOPSIS
11 .LP
12 .nf
13 cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-ldat\fR [ \fIlibrary\fR\&.\|.\|. ]
14 #include <\fBdat/udat.h\fR>
16 DAT_RETURN
17     dat_srq_query (
18     IN      DAT_SRQ_HANDLE      srq_handle,
19     IN      DAT_SRQ_PARAM_MASK  srq_param_mask,
20     OUT     DAT_SRQ_PARAM       *srq_param
21     )
22 .fi
24 .SH PARAMETERS
25 .sp
26 .ne 2
27 .na
28 \fB\fIsrq_handle\fR\fR
29 .ad
30 .RS 18n
31 A handle for an instance of the SRQ.
32 .RE
34 .sp
35 .ne 2
36 .na
37 \fB\fIsrq_param_mask\fR\fR
38 .ad
39 .RS 18n
40 The mask for SRQ parameters.
41 .RE
43 .sp
44 .ne 2
45 .na
46 \fB\fIsrq_param\fR\fR
47 .ad
48 .RS 18n
49 A pointer to a Consumer-allocated structure that the Provider fills with SRQ
50 parameters.
51 .RE
53 .SH DESCRIPTION
54 .sp
55 .LP
56 The \fBdat_srq_query()\fR function provides to the Consumer SRQ parameters. The
57 Consumer passes a pointer to the Consumer-allocated structures for SRQ
58 parameters that the Provider fills.
59 .sp
60 .LP
61 The \fIsrq_param_mask\fR argument allows Consumers to specify which parameters
62 to query. The Provider returns values for the requested \fIsrq_param_mask\fR
63 parameters. The Provider can return values for any other parameters.
64 .sp
65 .LP
66 In addition to the elements in SRQ attribute, \fBdat_srq_query()\fR provides
67 additional information in the \fBsrq_param\fR structure if Consumer requests it
68 with \fIsrq_param_mask\fR settings. The two that are related to entry counts on
69 SRQ are the number of Receive buffers (\fIavailable_dto_count\fR) available for
70 EPs to dequeue and the number of occupied SRQ entries
71 (\fIoutstanding_dto_count\fR) not available for new Recv buffer postings.
72 .SH RETURN VALUES
73 .sp
74 .ne 2
75 .na
76 \fB\fBDAT_SUCCESS\fR\fR
77 .ad
78 .RS 25n
79 The operation was successful.
80 .RE
82 .sp
83 .ne 2
84 .na
85 \fB\fBDAT_INVALID_PARAMETER\fR\fR
86 .ad
87 .RS 25n
88 The \fIsrq_param_mask\fR argument is invalid.
89 .RE
91 .sp
92 .ne 2
93 .na
94 \fB\fBDAT_INVALID_HANDLE\fR\fR
95 .ad
96 .RS 25n
97 The \fIsrq_handle\fR argument is an invalid DAT handle.
98 .RE
100 .SH USAGE
103 The Provider might not be able to provide the number of outstanding Recv of SRQ
104 or available Recvs of SRQ. The Provider attribute indicates if the Provider
105 does not support the query for one or these values. Even when the Provider
106 supports the query for one or both of these values, it might not be able to
107 provide this value at this moment. In either case, the return value for the
108 attribute that cannot be provided will be \fBDAT_VALUE_UNKNOWN\fR.
111 Example: Consumer created SRQ with 10 entries and associated 1 EP with it. 3
112 Recv buffers have been posted to it. The query will report:
114 .in +2
116 max_recv_dtos=10,
117 available_dto_count=3,
118 outstanding_dto_count=3.
120 .in -2
125 After a Send message arrival the query will report:
127 .in +2
129 max_recv_dtos=10,
130 available_dto_count=2,
131 outstanding_dto_count=3.
133 .in -2
138 After Consumer dequeues Recv completion the query will report:
140 .in +2
142 max_recv_dtos=10,
143 available_dto_count=2,
144 outstanding_dto_count=2.
146 .in -2
151 In general, each EP associated with SRQ can have multiple buffers in progress
152 of receiving messages as well completed Recv on EVDs. The watermark setting
153 helps to control how many Recv buffers posted to SRQ an Endpoint can own.
156 If the Provider cannot support the query for the number of outstanding Recv of
157 SRQ or available Recvs of SRQ, the value return for that attribute should be
158 \fBDAT_VALUE_UNKNOWN\fR.
159 .SH ATTRIBUTES
162 See \fBattributes\fR(5) for descriptions of the following attributes:
167 box;
168 c | c
169 l | l .
170 ATTRIBUTE TYPE  ATTRIBUTE VALUE
172 Interface Stability     Standard: uDAPL, 1.2
174 MT-Level        Unsafe
177 .SH SEE ALSO
180 \fBdat_srq_create\fR(3DAT), \fBdat_srq_free\fR(3DAT),
181 \fBdat_srq_post_recv\fR(3DAT), \fBdat_srq_resize\fR(3DAT),
182 \fBdat_srq_set_lw\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)