1dat_srq_query(3DAT)Direct Access Transport Library Functionsdat_srq_query(3DAT)
2
3
4

NAME

6       dat_srq_query - provide parameters of the shared receive queue
7

SYNOPSIS

9       cc [ flag... ] file... -ldat [ library... ]
10       #include <dat/udat.h>
11
12       DAT_RETURN
13           dat_srq_query (
14           IN      DAT_SRQ_HANDLE      srq_handle,
15           IN      DAT_SRQ_PARAM_MASK  srq_param_mask,
16           OUT     DAT_SRQ_PARAM       *srq_param
17           )
18
19

PARAMETERS

21       srq_handle        A handle for an instance of the SRQ.
22
23
24       srq_param_mask    The mask for SRQ parameters.
25
26
27       srq_param         A  pointer to a Consumer-allocated structure that the
28                         Provider fills with SRQ parameters.
29
30

DESCRIPTION

32       The dat_srq_query() function provides to the Consumer  SRQ  parameters.
33       The  Consumer passes a pointer to the Consumer-allocated structures for
34       SRQ parameters that the Provider fills.
35
36
37       The srq_param_mask argument allows Consumers to specify  which  parame‐
38       ters   to   query.  The  Provider  returns  values  for  the  requested
39       srq_param_mask parameters. The Provider can return values for any other
40       parameters.
41
42
43       In  addition to the elements in SRQ attribute, dat_srq_query() provides
44       additional information in the srq_param structure if Consumer  requests
45       it  with  srq_param_mask  settings.  The  two that are related to entry
46       counts on SRQ are the number of Receive  buffers  (available_dto_count)
47       available  for  EPs  to  dequeue and the number of occupied SRQ entries
48       (outstanding_dto_count) not available for new Recv buffer postings.
49

RETURN VALUES

51       DAT_SUCCESS              The operation was successful.
52
53
54       DAT_INVALID_PARAMETER    The srq_param_mask argument is invalid.
55
56
57       DAT_INVALID_HANDLE       The srq_handle argument is an invalid DAT han‐
58                                dle.
59
60

USAGE

62       The  Provider  might  not  be able to provide the number of outstanding
63       Recv of SRQ or available Recvs of SRQ. The Provider attribute indicates
64       if  the  Provider  does  not support the query for one or these values.
65       Even when the Provider supports the query for one or both of these val‐
66       ues,  it  might  not  be  able to provide this value at this moment. In
67       either case, the return value for the attribute that cannot be provided
68       will be DAT_VALUE_UNKNOWN.
69
70
71       Example:  Consumer created SRQ with 10 entries and associated 1 EP with
72       it. 3 Recv buffers have been posted to it. The query will report:
73
74         max_recv_dtos=10,
75         available_dto_count=3,
76         outstanding_dto_count=3.
77
78
79
80
81       After a Send message arrival the query will report:
82
83         max_recv_dtos=10,
84         available_dto_count=2,
85         outstanding_dto_count=3.
86
87
88
89
90       After Consumer dequeues Recv completion the query will report:
91
92         max_recv_dtos=10,
93         available_dto_count=2,
94         outstanding_dto_count=2.
95
96
97
98
99       In general, each EP associated with SRQ can have  multiple  buffers  in
100       progress  of  receiving  messages  as  well completed Recv on EVDs. The
101       watermark setting helps to control how many Recv buffers posted to  SRQ
102       an Endpoint can own.
103
104
105       If  the Provider cannot support the query for the number of outstanding
106       Recv of SRQ or available Recvs  of  SRQ,  the  value  return  for  that
107       attribute should be DAT_VALUE_UNKNOWN.
108

ATTRIBUTES

110       See attributes(5) for descriptions of the following attributes:
111
112
113
114
115       ┌─────────────────────────────┬─────────────────────────────┐
116       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
117       ├─────────────────────────────┼─────────────────────────────┤
118       │Interface Stability          │Standard: uDAPL, 1.2         │
119       ├─────────────────────────────┼─────────────────────────────┤
120       │MT-Level                     │Unsafe                       │
121       └─────────────────────────────┴─────────────────────────────┘
122

SEE ALSO

124       dat_srq_create(3DAT),    dat_srq_free(3DAT),   dat_srq_post_recv(3DAT),
125       dat_srq_resize(3DAT), dat_srq_set_lw(3DAT), libdat(3LIB), attributes(5)
126
127
128
129SunOS 5.11                        16 Jul 2004              dat_srq_query(3DAT)
Impressum