Main Page | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

vipl.h File Reference

#include "gm.h"

Go to the source code of this file.

Data Structures

struct  VIP_NET_ADDRESS
struct  VIP_NIC_ATTRIBUTES
union  VIP_PVOID64
struct  VIP_CONTROL_SEGMENT
struct  VIP_ADDRESS_SEGMENT
struct  VIP_DATA_SEGMENT
union  VIP_DESCRIPTOR_SEGMENT
struct  VIP_DESCRIPTOR
struct  VIP_VI_ATTRIBUTES
struct  VIP_MEM_ATTRIBUTES
struct  VIP_AUTODISCOVERY_LIST
struct  VIP_ERROR_DESCRIPTOR

Defines

#define IN
#define OUT
#define VIP_FALSE   (0)
#define VIP_TRUE   (1)
#define VIP_INFINITE   (~(VIP_ULONG) 0)
#define VIP_SMI_AUTODISCOVERY   ((VIP_ULONG) 1)
#define VIP_DESCRIPTOR_ALIGNMENT   64
#define VIP_SERVICE_UNRELIABLE   0x01
#define VIP_SERVICE_RELIABLE_DELIVERY   0x02
#define VIP_SERVICE_RELIABLE_RECEPTION   0x04
#define VIP_CONTROL_OP_SENDRECV   0x0000
#define VIP_CONTROL_OP_RDMAWRITE   0x0001
#define VIP_CONTROL_OP_RDMAREAD   0x0002
#define VIP_CONTROL_OP_RESERVED   0x0003
#define VIP_CONTROL_OP_MASK   0x0003
#define VIP_CONTROL_IMMEDIATE   0x0004
#define VIP_CONTROL_QFENCE   0x0008
#define VIP_CONTROL_RESERVED   0xFFF0
#define VIP_STATUS_DONE   0x00000001
#define VIP_STATUS_FORMAT_ERROR   0x00000002
#define VIP_STATUS_PROTECTION_ERROR   0x00000004
#define VIP_STATUS_LENGTH_ERROR   0x00000008
#define VIP_STATUS_PARTIAL_ERROR   0x00000010
#define VIP_STATUS_DESC_FLUSHED_ERROR   0x00000020
#define VIP_STATUS_TRANSPORT_ERROR   0x00000040
#define VIP_STATUS_RDMA_PROT_ERROR   0x00000080
#define VIP_STATUS_REMOTE_DESC_ERROR   0x00000100
#define VIP_STATUS_ERROR_MASK   0x000001FE
#define VIP_STATUS_OP_SEND   0x00000000
#define VIP_STATUS_OP_RECEIVE   0x00010000
#define VIP_STATUS_OP_RDMA_WRITE   0x00020000
#define VIP_STATUS_OP_REMOTE_RDMA_WRITE   0x00030000
#define VIP_STATUS_OP_RDMA_READ   0x00040000
#define VIP_STATUS_OP_MASK   0x00070000
#define VIP_STATUS_IMMEDIATE   0x00080000
#define VIP_STATUS_RESERVED   0xFFF0FE00
#define VIP_ENTRY_POINT

Typedefs

typedef void * VIP_PVOID
typedef int VIP_BOOLEAN
typedef char VIP_CHAR
typedef unsigned char VIP_UCHAR
typedef unsigned short VIP_USHORT
typedef unsigned long VIP_ULONG
typedef gm_u8_t VIP_UINT8
typedef gm_u16_t VIP_UINT16
typedef gm_u32_t VIP_UINT32
typedef gm_u64_t VIP_UINT64
typedef VIP_PVOID VIP_NIC_HANDLE
typedef VIP_PVOID VIP_VI_HANDLE
typedef VIP_PVOID VIP_PROTECTION_HANDLE
typedef VIP_PVOID VIP_CONN_HANDLE
typedef VIP_PVOID VIP_CQ_HANDLE
typedef VIP_UINT32 VIP_MEM_HANDLE
typedef VIP_PVOID VIP_QOS
typedef VIP_NET_ADDRESS VIP_NET_ADDRESS
typedef VIP_USHORT VIP_RELIABILITY_LEVEL
typedef VIP_NIC_ATTRIBUTES VIP_NIC_ATTRIBUTES
typedef VIP_PVOID64 VIP_PVOID64
typedef VIP_CONTROL_SEGMENT VIP_CONTROL_SEGMENT
typedef VIP_ADDRESS_SEGMENT VIP_ADDRESS_SEGMENT
typedef VIP_DATA_SEGMENT VIP_DATA_SEGMENT
typedef VIP_DESCRIPTOR_SEGMENT VIP_DESCRIPTOR_SEGMENT
typedef VIP_DESCRIPTOR VIP_DESCRIPTOR
typedef enum VIP_VI_STATE VIP_VI_STATE
typedef VIP_VI_ATTRIBUTES VIP_VI_ATTRIBUTES
typedef VIP_MEM_ATTRIBUTES VIP_MEM_ATTRIBUTES
typedef enum VIP_ERROR_CODE VIP_ERROR_CODE
typedef enum VIP_RESOURCE_CODE VIP_RESOURCE_CODE
typedef VIP_ERROR_DESCRIPTOR VIP_ERROR_DESCRIPTOR
typedef enum VIP_RETURN VIP_RETURN

Enumerations

enum  VIP_VI_STATE {
  VIP_STATE_IDLE,
  VIP_STATE_CONNECTED,
  VIP_STATE_CONNECT_PENDING,
  VIP_STATE_ERROR
}
enum  VIP_ERROR_CODE {
  VIP_ERROR_POST_DESC,
  VIP_ERROR_CONN_LOST,
  VIP_ERROR_RECVQ_EMPTY,
  VIP_ERROR_VI_OVERRUN,
  VIP_ERROR_RDMAW_PROT,
  VIP_ERROR_RDMAW_DATA,
  VIP_ERROR_RDMAW_ABORT,
  VIP_ERROR_RDMAR_PROT,
  VIP_ERROR_COMP_PROT,
  VIP_ERROR_RDMA_TRANSPORT,
  VIP_ERROR_CATASTROPHIC
}
enum  VIP_RESOURCE_CODE {
  VIP_RESOURCE_NIC,
  VIP_RESOURCE_VI,
  VIP_RESOURCE_CQ,
  VIP_RESOURCE_DESCRIPTOR
}
enum  VIP_RETURN {
  VIP_SUCCESS,
  VIP_NOT_DONE,
  VIP_INVALID_PARAMETER,
  VIP_ERROR_RESOURCE,
  VIP_TIMEOUT,
  VIP_REJECT,
  VIP_INVALID_RELIABILITY_LEVEL,
  VIP_INVALID_MTU,
  VIP_INVALID_QOS,
  VIP_INVALID_PTAG,
  VIP_INVALID_RDMAREAD,
  VIP_DESCRIPTOR_ERROR,
  VIP_INVALID_STATE,
  VIP_ERROR_NAMESERVICE,
  VIP_NO_MATCH,
  VIP_NOT_REACHABLE
}

Functions

VIP_ENTRY_POINT VIP_RETURN VipOpenNic (IN const VIP_CHAR *DeviceName, OUT VIP_NIC_HANDLE *NicHandle)
VIP_ENTRY_POINT VIP_RETURN VipCloseNic (IN VIP_NIC_HANDLE NicHandle)
VIP_ENTRY_POINT VIP_RETURN VipCreateVi (IN VIP_NIC_HANDLE NicHandle, IN VIP_VI_ATTRIBUTES *ViAttribs, IN VIP_CQ_HANDLE SendCQHandle, IN VIP_CQ_HANDLE RecvCQHandle, OUT VIP_VI_HANDLE *ViHandle)
VIP_ENTRY_POINT VIP_RETURN VipDestroyVi (IN VIP_VI_HANDLE ViHandle)
VIP_ENTRY_POINT VIP_RETURN VipConnectWait (IN VIP_NIC_HANDLE NicHandle, IN VIP_NET_ADDRESS *LocalAddr, IN VIP_ULONG Timeout, OUT VIP_NET_ADDRESS *RemoteAddr, OUT VIP_VI_ATTRIBUTES *RemoteViAttribs, OUT VIP_CONN_HANDLE *ConnHandle)
VIP_ENTRY_POINT VIP_RETURN VipConnectAccept (IN VIP_CONN_HANDLE ConnHandle, IN VIP_VI_HANDLE ViHandle)
VIP_ENTRY_POINT VIP_RETURN VipConnectReject (IN VIP_CONN_HANDLE ConnHandle)
VIP_ENTRY_POINT VIP_RETURN VipConnectRequest (IN VIP_VI_HANDLE ViHandle, IN VIP_NET_ADDRESS *LocalAddr, IN VIP_NET_ADDRESS *RemoteAddr, IN VIP_ULONG Timeout, OUT VIP_VI_ATTRIBUTES *RemoteViAttribs)
VIP_ENTRY_POINT VIP_RETURN VipDisconnect (IN VIP_VI_HANDLE ViHandle)
VIP_ENTRY_POINT VIP_RETURN VipCreatePtag (IN VIP_NIC_HANDLE NicHandle, OUT VIP_PROTECTION_HANDLE *Ptag)
VIP_ENTRY_POINT VIP_RETURN VipDestroyPtag (IN VIP_NIC_HANDLE NicHandle, IN VIP_PROTECTION_HANDLE Ptag)
VIP_ENTRY_POINT VIP_RETURN VipRegisterMem (IN VIP_NIC_HANDLE NicHandle, IN VIP_PVOID VirtualAddress, IN VIP_ULONG Length, IN VIP_MEM_ATTRIBUTES *MemAttribs, OUT VIP_MEM_HANDLE *MemoryHandle)
VIP_ENTRY_POINT VIP_RETURN VipDeregisterMem (IN VIP_NIC_HANDLE NicHandle, IN VIP_PVOID VirtualAddress, IN VIP_MEM_HANDLE MemoryHandle)
VIP_ENTRY_POINT VIP_RETURN VipPostSend (IN VIP_VI_HANDLE ViHandle, IN VIP_DESCRIPTOR *DescriptorPtr, IN VIP_MEM_HANDLE MemoryHandle)
VIP_ENTRY_POINT VIP_RETURN VipSendDone (IN VIP_VI_HANDLE ViHandle, OUT VIP_DESCRIPTOR **DescriptorPtr)
VIP_ENTRY_POINT VIP_RETURN VipSendWait (IN VIP_VI_HANDLE ViHandle, IN VIP_ULONG Timeout, OUT VIP_DESCRIPTOR **DescriptorPtr)
VIP_ENTRY_POINT VIP_RETURN VipPostRecv (IN VIP_VI_HANDLE ViHandle, IN VIP_DESCRIPTOR *DescriptorPtr, IN VIP_MEM_HANDLE MemoryHandle)
VIP_ENTRY_POINT VIP_RETURN VipRecvDone (IN VIP_VI_HANDLE ViHandle, OUT VIP_DESCRIPTOR **DescriptorPtr)
VIP_ENTRY_POINT VIP_RETURN VipRecvWait (IN VIP_VI_HANDLE ViHandle, IN VIP_ULONG Timeout, OUT VIP_DESCRIPTOR **DescriptorPtr)
VIP_ENTRY_POINT VIP_RETURN VipCQDone (IN VIP_CQ_HANDLE CQHandle, OUT VIP_VI_HANDLE *ViHandle, OUT VIP_BOOLEAN *RecvQueue)
VIP_ENTRY_POINT VIP_RETURN VipCQWait (IN VIP_CQ_HANDLE CQHandle, IN VIP_ULONG Timeout, OUT VIP_VI_HANDLE *ViHandle, OUT VIP_BOOLEAN *RecvQueue)
VIP_ENTRY_POINT VIP_RETURN VipSendNotify (IN VIP_VI_HANDLE ViHandle, IN VIP_PVOID Context, IN void(*Handler)(IN VIP_PVOID Context, IN VIP_NIC_HANDLE NicHandle, IN VIP_VI_HANDLE ViHandle, IN VIP_DESCRIPTOR *DescriptorPtr))
VIP_ENTRY_POINT VIP_RETURN VipRecvNotify (IN VIP_VI_HANDLE ViHandle, IN VIP_PVOID Context, IN void(*Handler)(IN VIP_PVOID Context, IN VIP_NIC_HANDLE NicHandle, IN VIP_VI_HANDLE ViHandle, IN VIP_DESCRIPTOR *DescriptorPtr))
VIP_ENTRY_POINT VIP_RETURN VipCQNotify (IN VIP_CQ_HANDLE CQHandle, IN VIP_PVOID Context, IN void(*Handler)(IN VIP_PVOID Context, IN VIP_NIC_HANDLE NicHandle, IN VIP_VI_HANDLE ViHandle, IN VIP_BOOLEAN RecvQueue))
VIP_ENTRY_POINT VIP_RETURN VipCreateCQ (IN VIP_NIC_HANDLE NicHandle, IN VIP_ULONG EntryCount, OUT VIP_CQ_HANDLE *CQHandle)
VIP_ENTRY_POINT VIP_RETURN VipDestroyCQ (IN VIP_CQ_HANDLE CQHandle)
VIP_ENTRY_POINT VIP_RETURN VipResizeCQ (IN VIP_CQ_HANDLE CQHandle, IN VIP_ULONG EntryCount)
VIP_ENTRY_POINT VIP_RETURN VipQueryNic (IN VIP_NIC_HANDLE NicHandle, OUT VIP_NIC_ATTRIBUTES *NicAttribs)
VIP_ENTRY_POINT VIP_RETURN VipSetViAttributes (IN VIP_VI_HANDLE ViHandle, IN VIP_VI_ATTRIBUTES *ViAttribs)
VIP_ENTRY_POINT VIP_RETURN VipQueryVi (IN VIP_VI_HANDLE ViHandle, OUT VIP_VI_STATE *State, OUT VIP_VI_ATTRIBUTES *ViAttribs, OUT VIP_BOOLEAN *ViSendQEmpty, OUT VIP_BOOLEAN *ViRecvQEmpty)
VIP_ENTRY_POINT VIP_RETURN VipSetMemAttributes (IN VIP_NIC_HANDLE NicHandle, IN VIP_PVOID Address, IN VIP_MEM_HANDLE MemHandle, IN VIP_MEM_ATTRIBUTES *MemAttribs)
VIP_ENTRY_POINT VIP_RETURN VipQueryMem (IN VIP_NIC_HANDLE NicHandle, IN VIP_PVOID Address, IN VIP_MEM_HANDLE MemHandle, OUT VIP_MEM_ATTRIBUTES *MemAttribs)
VIP_ENTRY_POINT VIP_RETURN VipQuerySystemManagementInfo (IN VIP_NIC_HANDLE NicHandle, IN VIP_ULONG InfoType, OUT VIP_PVOID SysManInfo)
VIP_ENTRY_POINT VIP_RETURN VipErrorCallback (IN VIP_NIC_HANDLE NicHandle, IN VIP_PVOID Context, IN void(*Handler)(IN VIP_PVOID Context, IN VIP_ERROR_DESCRIPTOR *ErrorDesc))
VIP_ENTRY_POINT VIP_RETURN VipConnectPeerRequest (IN VIP_VI_HANDLE ViHandle, IN VIP_NET_ADDRESS *LocalAddr, IN VIP_NET_ADDRESS *RemoteAddr, IN VIP_ULONG Timeout)
VIP_ENTRY_POINT VIP_RETURN VipConnectPeerDone (IN VIP_VI_HANDLE ViHandle, OUT VIP_VI_ATTRIBUTES *RemoteViAttribs)
VIP_ENTRY_POINT VIP_RETURN VipConnectPeerWait (IN VIP_VI_HANDLE ViHandle, OUT VIP_VI_ATTRIBUTES *RemoteViAttribs)
VIP_ENTRY_POINT VIP_RETURN VipNSInit (IN VIP_NIC_HANDLE NicHandle, IN VIP_PVOID NSInitInfo)
VIP_ENTRY_POINT VIP_RETURN VipNSGetHostByName (IN VIP_NIC_HANDLE NicHandle, IN VIP_CHAR *Name, OUT VIP_NET_ADDRESS *Address, IN VIP_ULONG NameIndex)
VIP_ENTRY_POINT VIP_RETURN VipNSGetHostByAddr (IN VIP_NIC_HANDLE NicHandle, IN VIP_NET_ADDRESS *Address, OUT VIP_CHAR *Name, IN OUT VIP_ULONG *NameLen)
VIP_ENTRY_POINT VIP_RETURN VipNSShutdown (IN VIP_NIC_HANDLE NicHandle)


Detailed Description

The main official VIA include file.

Definition in file vipl.h.


Define Documentation

#define IN
 

Fake define to designate an INput argument.

Definition at line 27 of file vipl.h.

#define OUT
 

Fake define to designate an OUTput argument.

Definition at line 29 of file vipl.h.

#define VIP_FALSE   (0)
 

VIA boolean False preset.

See also:
VIP_BOOLEAN

Definition at line 32 of file vipl.h.

Referenced by vip_handle_3way_ok(), vip_handle_conn_req(), vip_handle_matching_message(), vip_handle_put_ok(), vip_handle_put_req(), vip_handle_report(), vip_is_conn_notified(), vip_is_first_cq_entry_notified(), vip_is_first_desc_notified(), vip_notify_desc_completion(), vip_plumber_periodic(), vip_process_send_desc(), vip_remove_conn_waiting_list(), vip_resume_callback(), vip_send_conn_request(), vip_sent_callback(), vip_vi_transition_to_error_state(), vip_wait_for_notification(), VipConnectPeerRequest(), VipConnectRequest(), VipCQDone(), VipCQNotify(), VipCQWait(), VipCreateCQ(), VipCreateVi(), VipDisconnect(), VipNSGetHostByAddr(), VipNSGetHostByName(), VipNSShutdown(), VipOpenNic(), VipQueryMem(), VipQueryVi(), VipRecvNotify(), VipRegisterMem(), VipSendNotify(), VipSetMemAttributes(), and VipSetViAttributes().

#define VIP_TRUE   (1)
 

VIA boolean True preset.

See also:
VIP_BOOLEAN

Definition at line 34 of file vipl.h.

Referenced by vip_cq_notify_thread(), vip_handle_3way_done(), vip_handle_conn_accept(), vip_handle_conn_reject(), vip_handle_conn_req(), vip_handle_matching_message(), vip_handle_put_done(), vip_handle_put_req(), vip_handle_report(), vip_is_conn_notified(), vip_is_first_cq_entry_notified(), vip_is_first_desc_notified(), vip_notify_desc_completion(), vip_plumber_blocking(), vip_plumber_periodic(), vip_process_send_desc(), vip_receive_event(), vip_recv_notify_thread(), vip_remove_conn_waiting_list(), vip_resume_callback(), vip_send_notify_thread(), vip_vi_transition_to_error_state(), VipCloseNic(), VipConnectPeerRequest(), VipConnectWait(), VipCQNotify(), VipCQWait(), VipCreateVi(), VipDestroyVi(), VipDisconnect(), VipNSInit(), VipOpenNic(), VipPostRecv(), VipPostSend(), VipQueryMem(), VipQueryVi(), VipRecvNotify(), VipRegisterMem(), VipSendNotify(), VipSetMemAttributes(), and VipSetViAttributes().

#define VIP_INFINITE   (~(VIP_ULONG) 0)
 

VIA define for Infinite.

Definition at line 37 of file vipl.h.

Referenced by vip_cq_notify_thread(), vip_recv_notify_thread(), vip_send_notify_thread(), vip_wait_for_notification(), and VipConnectPeerWait().

#define VIP_SMI_AUTODISCOVERY   ((VIP_ULONG) 1)
 

Only defined InfoType, for applications to access auto-discovery information to get the network addresses of other nodes that are attached to the SAN fabric.

See also:
VipQuerySystemManagementInfo

Definition at line 44 of file vipl.h.

Referenced by VipQuerySystemManagementInfo().

#define VIP_DESCRIPTOR_ALIGNMENT   64
 

The alignement of a descriptor in VIA, meaningless in VI-GM .

Definition at line 46 of file vipl.h.

#define VIP_SERVICE_UNRELIABLE   0x01
 

"Unreliable" VIA level of service.

Definition at line 51 of file vipl.h.

Referenced by vip_flush_fifo_send(), vip_handle_matching_message(), vip_handle_put_req(), vip_handle_report(), vip_process_send_desc(), vip_resume_callback(), vip_send_data(), VipCreateVi(), and VipSetViAttributes().

#define VIP_SERVICE_RELIABLE_DELIVERY   0x02
 

"Reliable \b Delivery" VIA level of service.

Definition at line 53 of file vipl.h.

Referenced by vip_handle_matching_message(), vip_handle_put_req(), vip_process_send_desc(), VipCreateVi(), and VipSetViAttributes().

#define VIP_SERVICE_RELIABLE_RECEPTION   0x04
 

"Reliable \b Reception" VIA level of service.

Definition at line 55 of file vipl.h.

Referenced by vip_handle_3way_done(), vip_handle_matching_message(), vip_handle_put_done(), vip_handle_put_req(), vip_handle_report(), vip_process_send_desc(), vip_sent_callback(), VipCreateVi(), and VipSetViAttributes().

#define VIP_CONTROL_OP_SENDRECV   0x0000
 

Send/Recv bit of the Control field in a VIA descriptor.

Definition at line 60 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_CONTROL_OP_RDMAWRITE   0x0001
 

RDMA Write bit of the Control field in a VIA descriptor.

Definition at line 62 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_CONTROL_OP_RDMAREAD   0x0002
 

RDMA Read bit of the Control field in a VIA descriptor.

Definition at line 64 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_CONTROL_OP_RESERVED   0x0003
 

Reserved bit of the Control field in a VIA descriptor.

Definition at line 66 of file vipl.h.

#define VIP_CONTROL_OP_MASK   0x0003
 

Operation Mask for the Control field in a VIA descriptor.

Definition at line 68 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_CONTROL_IMMEDIATE   0x0004
 

Immediate bit of the Control field in a VIA descriptor.

Definition at line 70 of file vipl.h.

Referenced by vip_handle_3way_ok(), vip_handle_put_ok(), and vip_process_send_desc().

#define VIP_CONTROL_QFENCE   0x0008
 

QFence bit of the Control field in a VIA descriptor.

Definition at line 72 of file vipl.h.

#define VIP_CONTROL_RESERVED   0xFFF0
 

Reserved bit of the Control field in a VIA descriptor.

Definition at line 74 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_STATUS_DONE   0x00000001
 

Done bit of the Status field in a VIA descriptor.

Definition at line 79 of file vipl.h.

Referenced by vip_handle_3way_done(), vip_handle_3way_ok(), vip_handle_matching_message(), vip_handle_put_done(), vip_handle_put_ok(), vip_is_first_desc_notified(), vip_notify_desc_completion(), vip_vi_transition_to_error_state(), VipRecvDone(), VipRecvWait(), VipSendDone(), and VipSendWait().

#define VIP_STATUS_FORMAT_ERROR   0x00000002
 

Local Format Error bit of the Status field in a VIA descriptor.

Definition at line 81 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_STATUS_PROTECTION_ERROR   0x00000004
 

Local Protection Error bit of the Status field in a VIA descriptor.

Definition at line 83 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_STATUS_LENGTH_ERROR   0x00000008
 

Local Length Error bit of the Status field in a VIA descriptor.

Definition at line 85 of file vipl.h.

Referenced by vip_handle_matching_message(), and vip_process_send_desc().

#define VIP_STATUS_PARTIAL_ERROR   0x00000010
 

Partial Packet Error bit of the Status field in a VIA descriptor.

Definition at line 87 of file vipl.h.

#define VIP_STATUS_DESC_FLUSHED_ERROR   0x00000020
 

Descriptor Flushed Error bit of the Status field in a VIA descriptor.

Definition at line 89 of file vipl.h.

Referenced by vip_process_send_desc(), vip_vi_transition_to_error_state(), and VipPostRecv().

#define VIP_STATUS_TRANSPORT_ERROR   0x00000040
 

Transport Error bit of the Status field in a VIA descriptor.

Definition at line 91 of file vipl.h.

Referenced by vip_resume_callback().

#define VIP_STATUS_RDMA_PROT_ERROR   0x00000080
 

RDMA Protection Error bit of the Status field in a VIA descriptor.

Definition at line 93 of file vipl.h.

Referenced by vip_handle_report().

#define VIP_STATUS_REMOTE_DESC_ERROR   0x00000100
 

Remote Descriptor Error bit of the Status field in a VIA descriptor.

Definition at line 95 of file vipl.h.

Referenced by vip_handle_report().

#define VIP_STATUS_ERROR_MASK   0x000001FE
 

Error Mask for the Status field in a VIA descriptor.

Definition at line 97 of file vipl.h.

Referenced by VipRecvDone(), VipRecvWait(), VipSendDone(), and VipSendWait().

#define VIP_STATUS_OP_SEND   0x00000000
 

Send Operation bit of the Status field in a VIA descriptor.

Definition at line 99 of file vipl.h.

Referenced by vip_default_error_callback(), and vip_process_send_desc().

#define VIP_STATUS_OP_RECEIVE   0x00010000
 

Recv Operation bit of the Status field in a VIA descriptor.

Definition at line 101 of file vipl.h.

Referenced by vip_default_error_callback(), and vip_handle_matching_message().

#define VIP_STATUS_OP_RDMA_WRITE   0x00020000
 

RDMA Write Operation bit of the Status field in a VIA descriptor.

Definition at line 103 of file vipl.h.

Referenced by vip_default_error_callback(), and vip_process_send_desc().

#define VIP_STATUS_OP_REMOTE_RDMA_WRITE   0x00030000
 

Remote RDMA Write Operation bit of the Status field in a VIA descriptor.

Definition at line 105 of file vipl.h.

Referenced by vip_default_error_callback(), and vip_handle_matching_message().

#define VIP_STATUS_OP_RDMA_READ   0x00040000
 

RDMA Read Operation bit of the Status field in a VIA descriptor.

Definition at line 107 of file vipl.h.

Referenced by vip_default_error_callback().

#define VIP_STATUS_OP_MASK   0x00070000
 

Operation Mask for the Status field in a VIA descriptor.

Definition at line 109 of file vipl.h.

Referenced by vip_notify_desc_completion(), and vip_resume_callback().

#define VIP_STATUS_IMMEDIATE   0x00080000
 

Immediate bit of the Status field in a VIA descriptor.

Definition at line 111 of file vipl.h.

Referenced by vip_handle_3way_done(), and vip_handle_matching_message().

#define VIP_STATUS_RESERVED   0xFFF0FE00
 

Reserved bit of the Status field in a VIA descriptor.

Definition at line 113 of file vipl.h.

#define VIP_ENTRY_POINT
 

Hook to export the function into a DLL on Windows.

Definition at line 511 of file vipl.h.


Typedef Documentation

typedef void* VIP_PVOID
 

Portable VIA void pointer type.

Definition at line 126 of file vipl.h.

typedef int VIP_BOOLEAN
 

Portable VIA boolean type (TRUE/FALSE).

See also:
VIP_TRUE VIP_FALSE

Definition at line 128 of file vipl.h.

typedef char VIP_CHAR
 

Portable VIA char type.

Definition at line 130 of file vipl.h.

typedef unsigned char VIP_UCHAR
 

Portable VIA unsigned char type.

Definition at line 132 of file vipl.h.

typedef unsigned short VIP_USHORT
 

Portable VIA unsigned short type.

Definition at line 134 of file vipl.h.

typedef unsigned long VIP_ULONG
 

Portable VIA unsigned long type.

Definition at line 136 of file vipl.h.

typedef gm_u8_t VIP_UINT8
 

Portable VIA unsigned 8 bits type.

Definition at line 140 of file vipl.h.

typedef gm_u16_t VIP_UINT16
 

Portable VIA unsigned 16 bits type.

Definition at line 142 of file vipl.h.

typedef gm_u32_t VIP_UINT32
 

Portable VIA unsigned 32 bits type.

Definition at line 144 of file vipl.h.

typedef gm_u64_t VIP_UINT64
 

Portable VIA unsigned 64 bits type.

Definition at line 146 of file vipl.h.

typedef VIP_PVOID VIP_NIC_HANDLE
 

VIA Network interface (NIC) handle type.

Definition at line 151 of file vipl.h.

typedef VIP_PVOID VIP_VI_HANDLE
 

VIA Virtual interface (VI) handle type.

Definition at line 153 of file vipl.h.

typedef VIP_PVOID VIP_PROTECTION_HANDLE
 

VIA Protection tag (PTAG) handle type.

Definition at line 155 of file vipl.h.

typedef VIP_PVOID VIP_CONN_HANDLE
 

VIA pending connection handle type.

Definition at line 157 of file vipl.h.

typedef VIP_PVOID VIP_CQ_HANDLE
 

VIA Completion queue handle type.

Definition at line 159 of file vipl.h.

typedef VIP_UINT32 VIP_MEM_HANDLE
 

VIA Registered memory region handle type. This is not a pointer like the other handles, its size is limited to 32 bits because of descriptor field constraints.

Definition at line 166 of file vipl.h.

typedef VIP_PVOID VIP_QOS
 

VIA Quality of Service (QoS) type, unused in VI-GM .

Definition at line 168 of file vipl.h.

typedef struct VIP_NET_ADDRESS VIP_NET_ADDRESS
 

VIA Network Address structure

typedef VIP_USHORT VIP_RELIABILITY_LEVEL
 

VIA Reliability level of service.

Definition at line 185 of file vipl.h.

typedef struct VIP_NIC_ATTRIBUTES VIP_NIC_ATTRIBUTES
 

VIA Network Interface attributes.

typedef union VIP_PVOID64 VIP_PVOID64
 

Address structure for registered memory.

typedef struct VIP_CONTROL_SEGMENT VIP_CONTROL_SEGMENT
 

VIA descriptor Control segment.

typedef struct VIP_ADDRESS_SEGMENT VIP_ADDRESS_SEGMENT
 

VIA descriptor Address segment.

typedef struct VIP_DATA_SEGMENT VIP_DATA_SEGMENT
 

VIA descriptor Data segment.

typedef union VIP_DESCRIPTOR_SEGMENT VIP_DESCRIPTOR_SEGMENT
 

VIA Descriptor buffer segments.

typedef struct VIP_DESCRIPTOR VIP_DESCRIPTOR
 

Complete format of VIA Descriptor.

typedef enum VIP_VI_STATE VIP_VI_STATE
 

Virtual Interface state code.

typedef struct VIP_VI_ATTRIBUTES VIP_VI_ATTRIBUTES
 

Virtual Interface attributes.

typedef struct VIP_MEM_ATTRIBUTES VIP_MEM_ATTRIBUTES
 

Memory handle attributes.

typedef enum VIP_ERROR_CODE VIP_ERROR_CODE
 

VIA standard error codes.

typedef enum VIP_RESOURCE_CODE VIP_RESOURCE_CODE
 

VIA standard error resource codes.

typedef struct VIP_ERROR_DESCRIPTOR VIP_ERROR_DESCRIPTOR
 

VIA asynchronous error descriptors

typedef enum VIP_RETURN VIP_RETURN
 

The VIA standard return code type.

Definition at line 500 of file vipl.h.


Enumeration Type Documentation

enum VIP_VI_STATE
 

Virtual Interface state code.

Enumerator:
VIP_STATE_IDLE  The VI is in Idle state.
VIP_STATE_CONNECTED  The VI is connected to a remote VI.
VIP_STATE_CONNECT_PENDING  The VI is in the process of connecting to a remote VI.
VIP_STATE_ERROR  The VI has experienced a fatale error.

Definition at line 322 of file vipl.h.

enum VIP_ERROR_CODE
 

VIA standard error codes.

Enumerator:
VIP_ERROR_POST_DESC  The virtual address and memory handle of the Descriptor was not valid when the Descriptor was posted, or the Next Address and/or Next Handle field was inadvertently modified after the Descriptor was posted, or the Descriptor address was not aligned on a 64-byte boundary.
VIP_ERROR_CONN_LOST  The connection on a VI was lost and the associated VI is in the error state.
VIP_ERROR_RECVQ_EMPTY  An incoming packet was dropped because the receive queue was empty.
VIP_ERROR_VI_OVERRUN  The VI Consumer attempted to post too many Descriptors to a Work Queue of a VI.
VIP_ERROR_RDMAW_PROT  A protection error was detected on an incoming RDMA Write operation.
VIP_ERROR_RDMAW_DATA  A data corruption error was detected on an incoming RDMA Write operation.
VIP_ERROR_RDMAW_ABORT  A partial packet was detected on an incoming RDMA Write operation.
VIP_ERROR_RDMAR_PROT  A protection error was detected on an incoming RDMA Read operation.
VIP_ERROR_COMP_PROT  The memory region containing a Descriptor is deregistered at completion time or a Completion Queue becomes inaccessible.
VIP_ERROR_RDMA_TRANSPORT  A protection error was detected on an incoming RDMA Read operation.
VIP_ERROR_CATASTROPHIC  The hardware has failed or has detected a fatal configuration problem.

Definition at line 387 of file vipl.h.

enum VIP_RESOURCE_CODE
 

VIA standard error resource codes.

Definition at line 423 of file vipl.h.

enum VIP_RETURN
 

The VIA standard return code enumeration.

Enumerator:
VIP_SUCCESS  The function completed successfully.
VIP_NOT_DONE  No Descriptors are completed on the specified queue.
VIP_INVALID_PARAMETER  One or more input parameters were invalid.
VIP_ERROR_RESOURCE  An error occurred due to insufficient resources or resource conflict.
VIP_TIMEOUT  The request timed out before it could successfully complete.
VIP_REJECT  A connection request was rejected by the remote end.
VIP_INVALID_RELIABILITY_LEVEL  The reliability level attribute for a VI was invalid or not supported.
VIP_INVALID_MTU  The maximum transfer size attribute for a VI was invalid or not supported.
VIP_INVALID_QOS  The quality of service attribute for a VI was invalid or not supported.
VIP_INVALID_PTAG  The protection tag attribute for a VI or a memory region was invalid.
VIP_INVALID_RDMAREAD  A memory or VI attribute requested support for RDMA Read, but the VI Provider does not support it.
VIP_DESCRIPTOR_ERROR  A completed Descriptor was returned with errors in the completion status, or the VI work queue was empty.
VIP_INVALID_STATE  The operation is not valid in the current VI state.
VIP_ERROR_NAMESERVICE  An unexpected error occurred while initializing, shutting down or resolving a name/address in the name service.
VIP_NO_MATCH  The local and remote connection discriminators do not match.
VIP_NOT_REACHABLE  A network partition was detected while attempting to establish a VI connection.

Definition at line 457 of file vipl.h.


Function Documentation

VIP_ENTRY_POINT VIP_RETURN VipOpenNic IN const VIP_CHAR DeviceName,
OUT VIP_NIC_HANDLE NicHandle
 

Open a VIA network interface (Details).

VIP_ENTRY_POINT VIP_RETURN VipCloseNic IN VIP_NIC_HANDLE  NicHandle  ) 
 

Close a VIA network interface (Details).

VIP_ENTRY_POINT VIP_RETURN VipCreateVi IN VIP_NIC_HANDLE  NicHandle,
IN VIP_VI_ATTRIBUTES ViAttribs,
IN VIP_CQ_HANDLE  SendCQHandle,
IN VIP_CQ_HANDLE  RecvCQHandle,
OUT VIP_VI_HANDLE ViHandle
 

Create a Virtual Interface (Details).

VIP_ENTRY_POINT VIP_RETURN VipDestroyVi IN VIP_VI_HANDLE  ViHandle  ) 
 

Destroy a Virtual Interface (Details).

VIP_ENTRY_POINT VIP_RETURN VipConnectWait IN VIP_NIC_HANDLE  NicHandle,
IN VIP_NET_ADDRESS LocalAddr,
IN VIP_ULONG  Timeout,
OUT VIP_NET_ADDRESS RemoteAddr,
OUT VIP_VI_ATTRIBUTES RemoteViAttribs,
OUT VIP_CONN_HANDLE ConnHandle
 

Look for incoming connection requests on the server side of the client/server connection model (