ibtl_status.h revision 03494a9880d80f834bec10a1e8f0a2f8f7c97bf4
/*
* CDDL HEADER START
*
* 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.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* 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]
*
* CDDL HEADER END
*/
/*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SYS_IB_IBTL_IBTL_STATUS_H
#define _SYS_IB_IBTL_IBTL_STATUS_H
/*
*
* Define global IBTL return codes.
*/
#ifdef __cplusplus
extern "C" {
#endif
/*
* Mnemonics
* APM - Automatic Path Migration
* APR - Alternate Path Response
* AH - Address Handle
* CI - Channel Interface (HCA)
* CQ - Completion Queue
* DLID - Destination Local Id
* DS - Data Segment.
* GSI - General Service Interface
* GUID - Globally Unique Identifier
* HCA - Host Channel Adapter.
* L_KEY - Local Key
* LAP - Load Alternative Path
* MC - Multicast
* MCG - Multicast Group
* MR - Memory Region
* MW - Memory Window
* MTU - Maximum Transfer Unit
* NAK - Negative Acknowledge
* P_KEY - Partition Key
* PD - Protection Domain
* PSN - Packet Serial Number
* QP - Queue Pair
* QPN - Queue Pair Number
* R_KEY - Remote Key
* RC - Reliable Connected
* RDMA - Remote DMA
* RNR - Receiver Not Ready
* RQ - Receive Work Queue
* SL - Service Level
* SMI - Subnet Management Interface
* SQ - Send Work Queue
* UC - Unreliable Connected
* UD - Unreliable Datagram
* VA - Virtual Address
* WR - Work Request
* WC - Work Completion
* WRC - Work Request Completion
*/
/*
* IBTF Immediate status codes.
*/
typedef enum ibt_status_e {
/*
* Generic Status codes.
*/
IBT_SUCCESS = 0, /* Operation Successful */
/* look into detailed error */
/* code for actual failure */
/* serviceId already exists */
/* for APM */
/* available. */
/* is too high. */
/* an existing Address Record */
/* currently registered */
/* what should be a unique */
/* query result. One of the */
/* records was returned. */
/*
* Resource Errors
*/
/* exceeds HCA capability */
/* exceed HCA max limit */
IBT_ERR_OPAQUE1 = 104,
/* HCA multicast groups */
/* channel limit */
/* process of closing this */
/* HCA */
/*
* Host Channel Adapter (HCA) Attribute Errors.
*/
/* not supported */
/* mode or Not opened in */
/* Block mode */
/* Extensions not supported */
/* Extensions not supported */
/* Addresses not supported */
/* sizes per MR not supported */
/* not supported */
/* not supported */
/*
* Address errors
*/
/*
* Channel Errors
*/
/* Attribute */
/* Type */
IBT_ERR_OPAQUE2 = 406,
IBT_ERR_OPAQUE3 = 407,
/* State */
/* small, there are more */
/* outstanding entries than */
/* than the requested size. */
/* that is associated with an */
/* SRQ */
/* 2A memory window bound */
/*
* Completion Queue (CQ) errors
*/
/* small, there are more */
/* outstanding completions */
/* than the requested size. */
/*
* Reserved for future use.
*/
IBT_ERR_OPAQUE4 = 600,
IBT_ERR_OPAQUE5 = 601,
IBT_ERR_OPAQUE6 = 602,
IBT_ERR_OPAQUE7 = 700,
IBT_ERR_OPAQUE8 = 701,
IBT_ERR_OPAQUE9 = 702,
IBT_ERR_OPAQUE10 = 703,
/*
* Memory operation errors
*/
/* List */
/* Handle */
/* Specifier */
/* Handle */
IBT_MW_TYPE_INVALID = 810,
IBT_SGL_TOO_SMALL = 812,
IBT_MI_HDL_INVALID = 813,
/*
* Multicast errors
*/
/*
* Partition table errors.
*/
/* invalid entry in table */
/*
* Protection Domain errors
*/
/*
* Shared Receive Queue errors
*/
/* size */
/* small, there are more */
/* outstanding entries than */
/* associated with it */
/*
* FMR Errors
*/
IBT_PBL_TOO_SMALL = 1302
} ibt_status_t;
/*
* Work Request Completion Return Status.
*
* Refer InfiniBand Architecture Release Volume 1:
* Section 11.6.2 Completion Return Status.
*
* NOTE: this was converted from an enum to a uint8_t to save space.
*/
typedef uint8_t ibt_wc_status_t;
#define IBT_WC_SUCCESS 0 /* WR Completed Successfully */
/* queue too big */
/* for posted WR */
/* chan went to error state */
/* access rights */
/*
* Errors that are only reported for Reliable Queue Pairs.
*/
/* layer opcode was returned */
/* by the responder */
/* occurred on a local data */
/* buffer during the */
/* processing of a RDMA Write */
/* with Immediate Data */
/* operation sent from the */
/* remote node */
/* data buffer */
/* message on the channel */
/* data buffer */
/* completed by the responder */
/* counter exceeded */
/* exceeded */
#ifdef __cplusplus
}
#endif
#endif /* _SYS_IB_IBTL_IBTL_STATUS_H */