Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations
ib_srpt.h File Reference
#include <linux/types.h>
#include <linux/list.h>
#include <linux/wait.h>
#include <rdma/ib_verbs.h>
#include <rdma/ib_sa.h>
#include <rdma/ib_cm.h>
#include <scsi/srp.h>
#include "ib_dm_mad.h"

Go to the source code of this file.

Data Structures

struct  rdma_iu
 
struct  srpt_ioctx
 
struct  srpt_recv_ioctx
 
struct  srpt_send_ioctx
 
struct  srpt_rdma_ch
 
struct  srpt_port_attrib
 
struct  srpt_port
 
struct  srpt_device
 
struct  srpt_node_acl
 
struct  spc_rdma_transport_id
 

Macros

#define SRP_SERVICE_NAME_PREFIX   "SRP.T10:"
 

Enumerations

enum  {
  SRP_PROTOCOL = 0x0108, SRP_PROTOCOL_VERSION = 0x0001, SRP_IO_SUBCLASS = 0x609e, SRP_SEND_TO_IOC = 0x01,
  SRP_SEND_FROM_IOC = 0x02, SRP_RDMA_READ_FROM_IOC = 0x08, SRP_RDMA_WRITE_FROM_IOC = 0x20, SRP_MTCH_ACTION = 0x03,
  SRP_LOSOLNT = 0x10, SRP_CRSOLNT = 0x20, SRP_AESOLNT = 0x40, SRP_SCSOLNT = 0x02,
  SRP_UCSOLNT = 0x04, SRP_SOLNT = 0x01, SRP_TSK_MGMT_SUCCESS = 0x00, SRP_TSK_MGMT_FUNC_NOT_SUPP = 0x04,
  SRP_TSK_MGMT_FAILED = 0x05, SRP_CMD_SIMPLE_Q = 0x0, SRP_CMD_HEAD_OF_Q = 0x1, SRP_CMD_ORDERED_Q = 0x2,
  SRP_CMD_ACA = 0x4, SRP_LOGIN_RSP_MULTICHAN_NO_CHAN = 0x0, SRP_LOGIN_RSP_MULTICHAN_TERMINATED = 0x1, SRP_LOGIN_RSP_MULTICHAN_MAINTAINED = 0x2,
  SRPT_DEF_SG_TABLESIZE = 128, SRPT_DEF_SG_PER_WQE = 16, MIN_SRPT_SQ_SIZE = 16, DEF_SRPT_SQ_SIZE = 4096,
  SRPT_RQ_SIZE = 128, MIN_SRPT_SRQ_SIZE = 4, DEFAULT_SRPT_SRQ_SIZE = 4095, MAX_SRPT_SRQ_SIZE = 65535,
  MAX_SRPT_RDMA_SIZE = 1U << 24, MAX_SRPT_RSP_SIZE = 1024, MIN_MAX_REQ_SIZE = 996, DEFAULT_MAX_REQ_SIZE,
  MIN_MAX_RSP_SIZE = sizeof(struct srp_rsp) + 4, DEFAULT_MAX_RSP_SIZE = 256, DEFAULT_MAX_RDMA_SIZE = 65536
}
 
enum  srpt_opcode {
  SRPT_RECV, SRPT_SEND, SRPT_RDMA_MID, SRPT_RDMA_ABORT,
  SRPT_RDMA_READ_LAST, SRPT_RDMA_WRITE_LAST
}
 
enum  srpt_command_state {
  SRPT_STATE_NEW = 0, SRPT_STATE_NEED_DATA = 1, SRPT_STATE_DATA_IN = 2, SRPT_STATE_CMD_RSP_SENT = 3,
  SRPT_STATE_MGMT = 4, SRPT_STATE_MGMT_RSP_SENT = 5, SRPT_STATE_DONE = 6
}
 
enum  rdma_ch_state {
  CH_CONNECTING, CH_LIVE, CH_DISCONNECTING, CH_DRAINING,
  CH_RELEASING
}
 
enum  { SCSI_TRANSPORTID_PROTOCOLID_SRP = 4 }
 

Macro Definition Documentation

#define SRP_SERVICE_NAME_PREFIX   "SRP.T10:"

Definition at line 54 of file ib_srpt.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
SRP_PROTOCOL 
SRP_PROTOCOL_VERSION 
SRP_IO_SUBCLASS 
SRP_SEND_TO_IOC 
SRP_SEND_FROM_IOC 
SRP_RDMA_READ_FROM_IOC 
SRP_RDMA_WRITE_FROM_IOC 
SRP_MTCH_ACTION 
SRP_LOSOLNT 
SRP_CRSOLNT 
SRP_AESOLNT 
SRP_SCSOLNT 
SRP_UCSOLNT 
SRP_SOLNT 
SRP_TSK_MGMT_SUCCESS 
SRP_TSK_MGMT_FUNC_NOT_SUPP 
SRP_TSK_MGMT_FAILED 
SRP_CMD_SIMPLE_Q 
SRP_CMD_HEAD_OF_Q 
SRP_CMD_ORDERED_Q 
SRP_CMD_ACA 
SRP_LOGIN_RSP_MULTICHAN_NO_CHAN 
SRP_LOGIN_RSP_MULTICHAN_TERMINATED 
SRP_LOGIN_RSP_MULTICHAN_MAINTAINED 
SRPT_DEF_SG_TABLESIZE 
SRPT_DEF_SG_PER_WQE 
MIN_SRPT_SQ_SIZE 
DEF_SRPT_SQ_SIZE 
SRPT_RQ_SIZE 
MIN_SRPT_SRQ_SIZE 
DEFAULT_SRPT_SRQ_SIZE 
MAX_SRPT_SRQ_SIZE 
MAX_SRPT_RDMA_SIZE 
MAX_SRPT_RSP_SIZE 
MIN_MAX_REQ_SIZE 
DEFAULT_MAX_REQ_SIZE 
MIN_MAX_RSP_SIZE 
DEFAULT_MAX_RSP_SIZE 
DEFAULT_MAX_RDMA_SIZE 

Definition at line 56 of file ib_srpt.h.

anonymous enum
Enumerator:
SCSI_TRANSPORTID_PROTOCOLID_SRP 

Definition at line 433 of file ib_srpt.h.

enum rdma_ch_state - SRP channel state. : QP is in RTR state; waiting for RTU. : QP is in RTS state. : DREQ has been received; waiting for DREP or DREQ has been send and waiting for DREP or . : QP is in ERR state; waiting for last WQE event. : Last WQE event has been received; releasing resources.

Enumerator:
CH_CONNECTING 
CH_LIVE 
CH_DISCONNECTING 
CH_DRAINING 
CH_RELEASING 

Definition at line 262 of file ib_srpt.h.

enum srpt_command_state - SCSI command state managed by SRPT. : New command arrived and is being processed. : Processing a write or bidir command and waiting for data arrival. : Data for the write or bidir command arrived and is being processed. : SRP_RSP for SRP_CMD has been sent. : Processing a SCSI task management command. : SRP_RSP for SRP_TSK_MGMT has been sent. : Command processing finished successfully, command processing has been aborted or command processing failed.

Enumerator:
SRPT_STATE_NEW 
SRPT_STATE_NEED_DATA 
SRPT_STATE_DATA_IN 
SRPT_STATE_CMD_RSP_SENT 
SRPT_STATE_MGMT 
SRPT_STATE_MGMT_RSP_SENT 
SRPT_STATE_DONE 

Definition at line 175 of file ib_srpt.h.

Enumerator:
SRPT_RECV 
SRPT_SEND 
SRPT_RDMA_MID 
SRPT_RDMA_ABORT 
SRPT_RDMA_READ_LAST 
SRPT_RDMA_WRITE_LAST 

Definition at line 131 of file ib_srpt.h.