DAT_EP_MODIFY(3DAT) Direct Access Transport Library Functions
NAME
dat_ep_modify - change parameters of an Endpoint
SYNOPSIS
cc [
flag... ]
file...
-ldat [
library... ]
#include <
dat/udat.h>
DAT_RETURN
dat_ep_modify (
IN DAT_EP_HANDLE ep_handle,
IN DAT_EP_PARAM_MASK ep_param_mask,
IN DAT_EP_PARAM *ep_param
)
PARAMETERS
ep_handle Handle for an instance of the Endpoint.
ep_param_mask Mask for Endpoint parameters.
ep_param Pointer to the Consumer-allocated structure that
contains Consumer-requested Endpoint parameters.
DESCRIPTION
The
dat_ep_modify() function provides the Consumer a way to change
parameters of an Endpoint.
The
ep_param_mask parameter allows Consumers to specify which
parameters to modify. Providers modify values for
ep_param_mask requested parameters only.
Not all the parameters of the Endpoint can be modified. Some can be
modified only when the Endpoint is in a specific state. The following
list specifies which parameters can be modified and when they can be
modified.
Interface Adapter Cannot be modified.
Endpoint belongs to an open instance of IA and that association
cannot be changed.
Endpoint State Cannot be modified.
State of Endpoint cannot be changed by a
dat_ep_modify() operation.
Local IA Address Cannot be modified.
Local IA Address cannot be changed by a
dat_ep_modify() operation.
Local Port Qualifier Cannot be modified.
Local port qualifier cannot be changed by a
dat_ep_modify() operation.
Remote IA Address Cannot be modified.
Remote IA Address cannot be changed by a
dat_ep_modify() operation.
Remote Port Qualifier Cannot be modified.
Remote port qualifier cannot be changed by a
dat_ep_modify() operation
Protection Zone Can be modified when in Quiescent, Unconnected, and Tentative
Connection Pending states.
Protection Zone can be changed only when the Endpoint is in
quiescent state. The only Endpoint states that isare quiescent
isare
DAT_EP_STATE_UNCONNECTED and
DAT_EP_STATE_TENTATIVE_CONNECTION_PENDING. Consumers should be
aware that any Receive DTOs currently posted to the Endpoint that
do not match the new Protection Zone fail with a
DAT_PROTECTION_VIOLATION return.
In DTO Event Dispatcher Can be modified when in Unconnected, Reserved, Passive Connection
Request Pending, and Tentative Connection Pending states.
Event Dispatcher for incoming DTOs (Receive) can be changed only
prior to a request for a connection for an Active side or prior
to accepting a Connection Request for a Passive side.
Out DTO Event Dispatcher Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Event Dispatcher for outgoing DTOs (Send, RDMA Read, and RDMA
Write) can be changed only prior to a request for a connection
for an Active side or prior to accepting a Connection Request for
a Passive side.
Connection Event Dispatcher Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Event Dispatcher for the Endpoint Connection events can be
changed only prior to a request for a connection for an Active
side or accepting a Connection Request for a Passive side.
Service Type Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Service Type can be changed only prior to a request for a
connection for an Active side or accepting a Connection Request
for a Passive side.
Maximum Message Size Can be modified when in Unconnected, Reserved, Passive Connection
Request Pending, and Tentative Connection Pending states.
Maximum Message Size can be changed only prior to a request for a
connection for an Active side or accepting a Connection Request
for a Passive side.
Maximum RDMA Size Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Maximum RDMA Size can be changed only prior to a request for a
connection for an Active side or accepting a Connection Request
for a Passive side.
Quality of Service Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
QoS can be changed only prior to a request for a connection for
an Active side or accepting a Connection Request for a Passive
side.
Recv Completion Flags Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Recv Completion Flags specifies what DTO flags the Endpoint
should support for Receive DTO operations. The value can be
DAT_COMPLETION_NOTIFICATION_SUPPRESS_FLAG,
DAT_COMPLETION_SOLICITED_WAIT_FLAG, or
DAT_COMPLETION_EVD_THRESHOLD_FLAG. Recv posting does not support
DAT_COMPLETION_SUPPRESS_FLAG or
DAT_COMPLETION_BARRIER_FENCE_FLAG dat_completion_flags values that are only applicable to Request
postings. Recv Completion Flags can be changed only prior to a
request for a connection for an Active side or accepting a
Connection Request for a Passive side, but before posting of any
Recvs.
Request Completion Flags Can be modified when in Unconnected, Reserved, Passive Connection
Request Pending, and Tentative Connection Pending states.
Request Completion Flags specifies what DTO flags the Endpoint
should support for Send, RDMA Read, RDMA Write, and RMR Bind
operations. The value can be:
DAT_COMPLETION_UNSIGNALLED_FLAG or
DAT_COMPLETION_EVD_THRESHOLD_FLAG. Request postings always
support
DAT_COMPLETION_SUPPRESS_FLAG,
DAT_COMPLETION_SOLICITED_WAIT_FLAG, or
DAT_COMPLETION_BARRIER_FENCE_FLAG completion_flags values.
Request Completion Flags can be changed only prior to a request
for a connection for an Active side or accepting a Connection
Request for a Passive side.
Maximum Recv DTO Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Maximum Recv DTO specifies the maximum number of outstanding
Consumer-submitted Receive DTOs that a Consumer expects at any
time at the Endpoint. Maximum Recv DTO can be changed only prior
to a request for a connection for an Active side or accepting a
Connection Request for a Passive side.
Maximum Request DTO Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Maximum Request DTO specifies the maximum number of outstanding
Consumer-submitted send and RDMA DTOs and RMR Binds that a
Consumer expects at any time at the Endpoint. Maximum Out DTO can
be changed only prior to a request for a connection for an Active
side or accepting a Connection Request for a Passive side.
Maximum Recv IOV Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Maximum Recv IOV specifies the maximum number of elements in IOV
that a Consumer specifies for posting a Receive DTO for the
Endpoint. Maximum Recv IOV can be changed only prior to a request
for a connection for an Active side or accepting a Connection
Request for a Passive side.
Maximum Request IOV Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Maximum Request IOV specifies the maximum number of elements in
IOV that a Consumer specifies for posting a Send, RDMA Read, or
RDMA Write DTO for the Endpoint. Maximum Request IOV can be
changed only prior to a request for a connection for an Active
side or accepting a Connection Request for a Passive side.
Maximum outstanding RDMA Read as target Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Maximum number of outstanding RDMA Reads for which the Endpoint
is the target.
Maximum outstanding RDMA Read as originator Can be modified when in Unconnected, Reserved, Passive Connection
Pending, and Tentative Connection Pending states.
Maximum number of outstanding RDMA Reads for which the Endpoint
is the originator.
Num transport-specific attributes Can be modified when in Quiescent (unconnected) state.
Number of transport-specific attributes to be modified.
Transport-specific endpoint attributes Can be modified when in Quiescent (unconnected) state.
Transport-specific attributes can be modified only in the
transport-defined Endpoint state. The only guaranteed safe state
in which to modify transport-specific Endpoint attributes is the
quiescent state
DAT_EP_STATE_UNCONNECTED.
Num provider-specific attributes Can be modified when in Quiescent (unconnected) state.
Number of Provider-specific attributes to be modified.
Provider-specific endpoint attributes Can be modified when in Quiescent (unconnected) state.
Provider-specific attributes can be modified only in the
Provider-defined Endpoint state. The only guaranteed safe state
in which to modify Provider-specific Endpoint attributes is the
quiescent state
DAT_EP_STATE_UNCONNECTED.
RETURN VALUES
DAT_SUCCESS The operation was successful.
DAT_INVALID_HANDLE The
ep_handle parameter is invalid.
DAT_INVALID_PARAMETER The
ep_param_mask parameter is invalid, or
one of the requested Endpoint parameters or
attributes was invalid, not supported, or
cannot be modified.
DAT_INVALID_STATE Parameter in an invalid state. The Endpoint
was not in the state that allows one of the
parameters or attributes to be modified.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+---------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+---------------------------+
|Interface Stability | Standard: uDAPL, 1.1, 1.2 |
+--------------------+---------------------------+
|MT-Level | Unsafe |
+--------------------+---------------------------+
SEE ALSO
libdat(3LIB),
attributes(7) July 16, 2004 DAT_EP_MODIFY(3DAT)