aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi/iscsi_tcp.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-09-23 19:53:30 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-09-23 19:53:30 -0700
commitf164c42161d21368d9cd4d6d6efc158baa2618db (patch)
treefd6b2043f847b3551b1a8e13ef6fedd8ff575bad /drivers/scsi/iscsi_tcp.h
parent6973dddee264723720e18ad2be5a0a454c0f52d9 (diff)
parent1aedf2ccc60fade26c46fae12e28664d0da3f199 (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (94 commits) [SCSI] SPI transport class: misc DV fixes [SCSI] Switch some more scsi drivers to pci_get_device and refcounted pci structures [SCSI] eata_pio cleanup and PCI fix [SCSI] aacraid: README update [SCSI] aacraid: remove scsi_remove_device [SCSI] aacraid: merge rx and rkt code [SCSI] aacraid: expose physical devices [SCSI] aacraid: misc cleanup [SCSI] zfcp: update maintainers file [SCSI] zfcp: update maintainers file [SCSI] zfcp: fix: avoid removal of fsf reqs before qdio queues are down [SCSI] zfcp: introduce struct timer_list in struct zfcp_fsf_req [SCSI] zfcp: fix: use correct req_id in eh_abort_handler [SCSI] zfcp: create private slab caches to guarantee proper data alignment [SCSI] zfcp: remove zfcp_ccw_unregister function [SCSI] aic7xxx: pause sequencer before touching SBLKCTL [SCSI] aic7xxx: avoid checking SBLKCTL register for certain cards [SCSI] scsi_debug version 1.80 [SCSI] megaraid: Make megaraid_ioctl() check copy_to_user() return value [SCSI] aha152x: remove static host array ...
Diffstat (limited to 'drivers/scsi/iscsi_tcp.h')
-rw-r--r--drivers/scsi/iscsi_tcp.h43
1 files changed, 17 insertions, 26 deletions
diff --git a/drivers/scsi/iscsi_tcp.h b/drivers/scsi/iscsi_tcp.h
index e35701305fc..32736831790 100644
--- a/drivers/scsi/iscsi_tcp.h
+++ b/drivers/scsi/iscsi_tcp.h
@@ -31,23 +31,21 @@
#define IN_PROGRESS_DDIGEST_RECV 0x3
/* xmit state machine */
-#define XMSTATE_IDLE 0x0
-#define XMSTATE_R_HDR 0x1
-#define XMSTATE_W_HDR 0x2
-#define XMSTATE_IMM_HDR 0x4
-#define XMSTATE_IMM_DATA 0x8
-#define XMSTATE_UNS_INIT 0x10
-#define XMSTATE_UNS_HDR 0x20
-#define XMSTATE_UNS_DATA 0x40
-#define XMSTATE_SOL_HDR 0x80
-#define XMSTATE_SOL_DATA 0x100
-#define XMSTATE_W_PAD 0x200
-#define XMSTATE_DATA_DIGEST 0x400
-
-#define ISCSI_CONN_RCVBUF_MIN 262144
-#define ISCSI_CONN_SNDBUF_MIN 262144
+#define XMSTATE_IDLE 0x0
+#define XMSTATE_R_HDR 0x1
+#define XMSTATE_W_HDR 0x2
+#define XMSTATE_IMM_HDR 0x4
+#define XMSTATE_IMM_DATA 0x8
+#define XMSTATE_UNS_INIT 0x10
+#define XMSTATE_UNS_HDR 0x20
+#define XMSTATE_UNS_DATA 0x40
+#define XMSTATE_SOL_HDR 0x80
+#define XMSTATE_SOL_DATA 0x100
+#define XMSTATE_W_PAD 0x200
+#define XMSTATE_W_RESEND_PAD 0x400
+#define XMSTATE_W_RESEND_DATA_DIGEST 0x800
+
#define ISCSI_PAD_LEN 4
-#define ISCSI_R2T_MAX 16
#define ISCSI_SG_TABLESIZE SG_ALL
#define ISCSI_TCP_MAX_CMD_LEN 16
@@ -85,9 +83,6 @@ struct iscsi_tcp_conn {
/* iSCSI connection-wide sequencing */
int hdr_size; /* PDU header size */
- struct crypto_hash *rx_tfm; /* CRC32C (Rx) */
- struct hash_desc data_rx_hash; /* CRC32C (Rx) for data */
-
/* control data */
struct iscsi_tcp_recv in; /* TCP receive context */
int in_progress; /* connection state machine */
@@ -97,9 +92,9 @@ struct iscsi_tcp_conn {
void (*old_state_change)(struct sock *);
void (*old_write_space)(struct sock *);
- /* xmit */
- struct crypto_hash *tx_tfm; /* CRC32C (Tx) */
- struct hash_desc data_tx_hash; /* CRC32C (Tx) for data */
+ /* data and header digests */
+ struct hash_desc tx_hash; /* CRC32C (Tx) */
+ struct hash_desc rx_hash; /* CRC32C (Rx) */
/* MIB custom statistics */
uint32_t sendpage_failures_cnt;
@@ -158,19 +153,15 @@ struct iscsi_tcp_cmd_task {
struct scatterlist *bad_sg; /* assert statement */
int sg_count; /* SG's to process */
uint32_t exp_r2tsn;
- int r2t_data_count; /* R2T Data-Out bytes */
int data_offset;
struct iscsi_r2t_info *r2t; /* in progress R2T */
struct iscsi_queue r2tpool;
struct kfifo *r2tqueue;
struct iscsi_r2t_info **r2ts;
- uint32_t datadigest; /* for recover digest */
int digest_count;
uint32_t immdigest; /* for imm data */
struct iscsi_buf immbuf; /* for imm data digest */
- struct iscsi_data_task *dtask; /* data task in progress*/
struct iscsi_data_task unsol_dtask; /* unsol data task */
- int digest_offset; /* for partial buff digest */
};
#endif /* ISCSI_H */