Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
iscsi_target_util.c File Reference
#include <linux/list.h>
#include <scsi/scsi_tcq.h>
#include <scsi/iscsi_proto.h>
#include <target/target_core_base.h>
#include <target/target_core_fabric.h>
#include <target/target_core_configfs.h>
#include "iscsi_target_core.h"
#include "iscsi_target_parameters.h"
#include "iscsi_target_seq_pdu_list.h"
#include "iscsi_target_datain_values.h"
#include "iscsi_target_erl0.h"
#include "iscsi_target_erl1.h"
#include "iscsi_target_erl2.h"
#include "iscsi_target_tpg.h"
#include "iscsi_target_tq.h"
#include "iscsi_target_util.h"
#include "iscsi_target.h"

Go to the source code of this file.

Macros

#define PRINT_BUFF(buff, len)
 

Functions

int iscsit_add_r2t_to_list (struct iscsi_cmd *cmd, u32 offset, u32 xfer_len, int recovery, u32 r2t_sn)
 
struct iscsi_r2tiscsit_get_r2t_for_eos (struct iscsi_cmd *cmd, u32 offset, u32 length)
 
struct iscsi_r2tiscsit_get_r2t_from_list (struct iscsi_cmd *cmd)
 
void iscsit_free_r2t (struct iscsi_r2t *r2t, struct iscsi_cmd *cmd)
 
void iscsit_free_r2ts_from_list (struct iscsi_cmd *cmd)
 
struct iscsi_cmdiscsit_allocate_cmd (struct iscsi_conn *conn, gfp_t gfp_mask)
 
struct iscsi_seqiscsit_get_seq_holder_for_datain (struct iscsi_cmd *cmd, u32 seq_send_order)
 
struct iscsi_seqiscsit_get_seq_holder_for_r2t (struct iscsi_cmd *cmd)
 
struct iscsi_r2tiscsit_get_holder_for_r2tsn (struct iscsi_cmd *cmd, u32 r2t_sn)
 
int iscsit_sequence_cmd (struct iscsi_conn *conn, struct iscsi_cmd *cmd, __be32 cmdsn)
 
int iscsit_check_unsolicited_dataout (struct iscsi_cmd *cmd, unsigned char *buf)
 
struct iscsi_cmdiscsit_find_cmd_from_itt (struct iscsi_conn *conn, itt_t init_task_tag)
 
struct iscsi_cmdiscsit_find_cmd_from_itt_or_dump (struct iscsi_conn *conn, itt_t init_task_tag, u32 length)
 
struct iscsi_cmdiscsit_find_cmd_from_ttt (struct iscsi_conn *conn, u32 targ_xfer_tag)
 
int iscsit_find_cmd_for_recovery (struct iscsi_session *sess, struct iscsi_cmd **cmd_ptr, struct iscsi_conn_recovery **cr_ptr, itt_t init_task_tag)
 
void iscsit_add_cmd_to_immediate_queue (struct iscsi_cmd *cmd, struct iscsi_conn *conn, u8 state)
 
struct iscsi_queue_reqiscsit_get_cmd_from_immediate_queue (struct iscsi_conn *conn)
 
void iscsit_add_cmd_to_response_queue (struct iscsi_cmd *cmd, struct iscsi_conn *conn, u8 state)
 
struct iscsi_queue_reqiscsit_get_cmd_from_response_queue (struct iscsi_conn *conn)
 
bool iscsit_conn_all_queues_empty (struct iscsi_conn *conn)
 
void iscsit_free_queue_reqs_for_conn (struct iscsi_conn *conn)
 
void iscsit_release_cmd (struct iscsi_cmd *cmd)
 
void iscsit_free_cmd (struct iscsi_cmd *cmd)
 
int iscsit_check_session_usage_count (struct iscsi_session *sess)
 
void iscsit_dec_session_usage_count (struct iscsi_session *sess)
 
void iscsit_inc_session_usage_count (struct iscsi_session *sess)
 
int iscsit_set_sync_and_steering_values (struct iscsi_conn *conn)
 
struct iscsi_conniscsit_get_conn_from_cid (struct iscsi_session *sess, u16 cid)
 
struct iscsi_conniscsit_get_conn_from_cid_rcfr (struct iscsi_session *sess, u16 cid)
 
void iscsit_check_conn_usage_count (struct iscsi_conn *conn)
 
void iscsit_dec_conn_usage_count (struct iscsi_conn *conn)
 
void iscsit_inc_conn_usage_count (struct iscsi_conn *conn)
 
void iscsit_mod_nopin_response_timer (struct iscsi_conn *conn)
 
void iscsit_start_nopin_response_timer (struct iscsi_conn *conn)
 
void iscsit_stop_nopin_response_timer (struct iscsi_conn *conn)
 
void __iscsit_start_nopin_timer (struct iscsi_conn *conn)
 
void iscsit_start_nopin_timer (struct iscsi_conn *conn)
 
void iscsit_stop_nopin_timer (struct iscsi_conn *conn)
 
int iscsit_send_tx_data (struct iscsi_cmd *cmd, struct iscsi_conn *conn, int use_misc)
 
int iscsit_fe_sendpage_sg (struct iscsi_cmd *cmd, struct iscsi_conn *conn)
 
int iscsit_tx_login_rsp (struct iscsi_conn *conn, u8 status_class, u8 status_detail)
 
void iscsit_print_session_params (struct iscsi_session *sess)
 
int rx_data (struct iscsi_conn *conn, struct kvec *iov, int iov_count, int data)
 
int tx_data (struct iscsi_conn *conn, struct kvec *iov, int iov_count, int data)
 
void iscsit_collect_login_stats (struct iscsi_conn *conn, u8 status_class, u8 status_detail)
 
struct iscsi_tiqniscsit_snmp_get_tiqn (struct iscsi_conn *conn)
 

Variables

struct list_head g_tiqn_list
 
spinlock_t tiqn_lock
 

Macro Definition Documentation

#define PRINT_BUFF (   buff,
  len 
)
Value:
{ \
int zzz; \
pr_debug("%d:\n", __LINE__); \
for (zzz = 0; zzz < len; zzz++) { \
if (zzz % 16 == 0) { \
if (zzz) \
pr_debug("\n"); \
pr_debug("%4i: ", zzz); \
} \
pr_debug("%02x ", (unsigned char) (buff)[zzz]); \
} \
if ((len + 1) % 16) \
pr_debug("\n"); \
}

Definition at line 40 of file iscsi_target_util.c.

Function Documentation

void __iscsit_start_nopin_timer ( struct iscsi_conn conn)

Definition at line 1017 of file iscsi_target_util.c.

void iscsit_add_cmd_to_immediate_queue ( struct iscsi_cmd cmd,
struct iscsi_conn conn,
u8  state 
)

Definition at line 468 of file iscsi_target_util.c.

void iscsit_add_cmd_to_response_queue ( struct iscsi_cmd cmd,
struct iscsi_conn conn,
u8  state 
)

Definition at line 543 of file iscsi_target_util.c.

int iscsit_add_r2t_to_list ( struct iscsi_cmd cmd,
u32  offset,
u32  xfer_len,
int  recovery,
u32  r2t_sn 
)

Definition at line 63 of file iscsi_target_util.c.

struct iscsi_cmd* iscsit_allocate_cmd ( struct iscsi_conn conn,
gfp_t  gfp_mask 
)
read

Definition at line 155 of file iscsi_target_util.c.

void iscsit_check_conn_usage_count ( struct iscsi_conn conn)

Definition at line 833 of file iscsi_target_util.c.

int iscsit_check_session_usage_count ( struct iscsi_session sess)

Definition at line 712 of file iscsi_target_util.c.

int iscsit_check_unsolicited_dataout ( struct iscsi_cmd cmd,
unsigned char buf 
)

Definition at line 308 of file iscsi_target_util.c.

void iscsit_collect_login_stats ( struct iscsi_conn conn,
u8  status_class,
u8  status_detail 
)

Definition at line 1382 of file iscsi_target_util.c.

bool iscsit_conn_all_queues_empty ( struct iscsi_conn conn)

Definition at line 619 of file iscsi_target_util.c.

void iscsit_dec_conn_usage_count ( struct iscsi_conn conn)

Definition at line 846 of file iscsi_target_util.c.

void iscsit_dec_session_usage_count ( struct iscsi_session sess)

Definition at line 729 of file iscsi_target_util.c.

int iscsit_fe_sendpage_sg ( struct iscsi_cmd cmd,
struct iscsi_conn conn 
)

Definition at line 1121 of file iscsi_target_util.c.

int iscsit_find_cmd_for_recovery ( struct iscsi_session sess,
struct iscsi_cmd **  cmd_ptr,
struct iscsi_conn_recovery **  cr_ptr,
itt_t  init_task_tag 
)

Definition at line 416 of file iscsi_target_util.c.

struct iscsi_cmd* iscsit_find_cmd_from_itt ( struct iscsi_conn conn,
itt_t  init_task_tag 
)
read

Definition at line 352 of file iscsi_target_util.c.

struct iscsi_cmd* iscsit_find_cmd_from_itt_or_dump ( struct iscsi_conn conn,
itt_t  init_task_tag,
u32  length 
)
read

Definition at line 372 of file iscsi_target_util.c.

struct iscsi_cmd* iscsit_find_cmd_from_ttt ( struct iscsi_conn conn,
u32  targ_xfer_tag 
)
read

Definition at line 396 of file iscsi_target_util.c.

void iscsit_free_cmd ( struct iscsi_cmd cmd)

Definition at line 684 of file iscsi_target_util.c.

void iscsit_free_queue_reqs_for_conn ( struct iscsi_conn conn)

Definition at line 637 of file iscsi_target_util.c.

void iscsit_free_r2t ( struct iscsi_r2t r2t,
struct iscsi_cmd cmd 
)

Definition at line 135 of file iscsi_target_util.c.

void iscsit_free_r2ts_from_list ( struct iscsi_cmd cmd)

Definition at line 141 of file iscsi_target_util.c.

struct iscsi_queue_req* iscsit_get_cmd_from_immediate_queue ( struct iscsi_conn conn)
read

Definition at line 494 of file iscsi_target_util.c.

struct iscsi_queue_req* iscsit_get_cmd_from_response_queue ( struct iscsi_conn conn)
read

Definition at line 568 of file iscsi_target_util.c.

struct iscsi_conn* iscsit_get_conn_from_cid ( struct iscsi_session sess,
u16  cid 
)
read

Definition at line 795 of file iscsi_target_util.c.

struct iscsi_conn* iscsit_get_conn_from_cid_rcfr ( struct iscsi_session sess,
u16  cid 
)
read

Definition at line 813 of file iscsi_target_util.c.

struct iscsi_r2t* iscsit_get_holder_for_r2tsn ( struct iscsi_cmd cmd,
u32  r2t_sn 
)
read

Definition at line 213 of file iscsi_target_util.c.

struct iscsi_r2t* iscsit_get_r2t_for_eos ( struct iscsi_cmd cmd,
u32  offset,
u32  length 
)
read

Definition at line 92 of file iscsi_target_util.c.

struct iscsi_r2t* iscsit_get_r2t_from_list ( struct iscsi_cmd cmd)
read

Definition at line 114 of file iscsi_target_util.c.

struct iscsi_seq* iscsit_get_seq_holder_for_datain ( struct iscsi_cmd cmd,
u32  seq_send_order 
)
read

Definition at line 179 of file iscsi_target_util.c.

struct iscsi_seq* iscsit_get_seq_holder_for_r2t ( struct iscsi_cmd cmd)
read

Definition at line 192 of file iscsi_target_util.c.

void iscsit_inc_conn_usage_count ( struct iscsi_conn conn)

Definition at line 857 of file iscsi_target_util.c.

void iscsit_inc_session_usage_count ( struct iscsi_session sess)

Definition at line 740 of file iscsi_target_util.c.

void iscsit_mod_nopin_response_timer ( struct iscsi_conn conn)

Definition at line 934 of file iscsi_target_util.c.

void iscsit_print_session_params ( struct iscsi_session sess)

Definition at line 1259 of file iscsi_target_util.c.

void iscsit_release_cmd ( struct iscsi_cmd cmd)

Definition at line 663 of file iscsi_target_util.c.

int iscsit_send_tx_data ( struct iscsi_cmd cmd,
struct iscsi_conn conn,
int  use_misc 
)

Definition at line 1088 of file iscsi_target_util.c.

int iscsit_sequence_cmd ( struct iscsi_conn conn,
struct iscsi_cmd cmd,
__be32  cmdsn 
)

Definition at line 274 of file iscsi_target_util.c.

int iscsit_set_sync_and_steering_values ( struct iscsi_conn conn)

Definition at line 751 of file iscsi_target_util.c.

struct iscsi_tiqn* iscsit_snmp_get_tiqn ( struct iscsi_conn conn)
read

Definition at line 1444 of file iscsi_target_util.c.

void iscsit_start_nopin_response_timer ( struct iscsi_conn conn)

Definition at line 953 of file iscsi_target_util.c.

void iscsit_start_nopin_timer ( struct iscsi_conn conn)

Definition at line 1042 of file iscsi_target_util.c.

void iscsit_stop_nopin_response_timer ( struct iscsi_conn conn)

Definition at line 978 of file iscsi_target_util.c.

void iscsit_stop_nopin_timer ( struct iscsi_conn conn)

Definition at line 1071 of file iscsi_target_util.c.

int iscsit_tx_login_rsp ( struct iscsi_conn conn,
u8  status_class,
u8  status_detail 
)

Definition at line 1227 of file iscsi_target_util.c.

int rx_data ( struct iscsi_conn conn,
struct kvec iov,
int  iov_count,
int  data 
)

Definition at line 1342 of file iscsi_target_util.c.

int tx_data ( struct iscsi_conn conn,
struct kvec iov,
int  iov_count,
int  data 
)

Definition at line 1362 of file iscsi_target_util.c.

Variable Documentation

struct list_head g_tiqn_list
spinlock_t tiqn_lock