INDEndpoint::Invalidate Method

Invalidates a local memory window. Any in-progress transfers referencing the memory window will fail.

Syntax

HRESULT Invalidate(
  [in]  ND_RESULT *pResult,
  [in]  INDMemoryWindow *pMw,
  [in]  DWORD Flags
);

Parameters

  • pResult [in]
    An ND_RESULT structure which will receive the status of the request. The status is set to one of the following status codes:

    ND_SUCCESS

    ND_CANCELED

    ND_INVALID_REQUEST

    ND_FAILURE

    ND_INVALIDATION_ERROR

pMw [in]

An INDMemoryWindow interface of the memory window to invalidate. Invalidating the window lets the window be bound again to a different region of registered memory.

Flags [in]

The following flags control the behavior of the operation. You can specify one or both of the following flags:

Value Meaning
ND_OP_FLAG_SILENT_SUCCESS 0x00000001

The successful completion of the request does not generate a completion in the outbound completion queue. However, requests that fail will generate a completion in the completion queue.

ND_OP_FLAG_READ_FENCE 0x00000002

All prior Read requests must be complete before the hardware begins processing the request.

 

Return Value

When you implement this method, you should return the following return values. If you return others, try to use well-known values to aid in debugging issues.

Return code Description
ND_SUCCESS

The operation succeeded. Completion status will be returned through the outbound completion queue associated with this endpoint.

ND_CONNECTION_INVALID

The endpoint is not connected.

ND_NO_MORE_ENTRIES

The request would have exceeded the number of outbound requests allowed on the endpoint. The nOutboundEntries parameter of the INDConnector::CreateEndpoint method specifies the limit.

 

Remarks

An endpoint can call this method after receiving notification from a peer that it is done with the memory window. However, typically, the peer calls the INDEndpoint::SendAndInvalidate method to notify you and to invalidate the window itself.

Invalidating a memory window prevents further access to the window. Further references to the memory window in an RDMA Read or Write would result in a fatal error on the endpoint and the connection will be terminated.

Requirements

Product

Microsoft Message Passing Interface (MS-MPI)

Header

Ndspi.h

See Also

INDEndpoint

 

 

Send comments about this topic to Microsoft

Build date: 7/2/2010