diff options
author | FUJITA Tomonori <tomof@acm.org> | 2006-01-13 19:05:44 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.(none)> | 2006-01-14 11:55:17 -0500 |
commit | 56851698c23430f0f291d6e50da344e6b414f3b9 (patch) | |
tree | e051fccf90003b6057c961b1b954725f38413d02 /drivers/scsi/iscsi_tcp.h | |
parent | 3e97c7e6cda933e3a1b518a8100d155c532a3cfc (diff) |
[SCSI] iscsi: data digest page cache usage fix
Users can write to a page while we are sending it and making
digest calculations. This ends up causing us to retry the command
when a digest error is later reported. By using sock_no_sendpage
when data digests are calculated we can avoid a lot of (not all but it
helps) the retries becuase sock_no_sendpage is not zero copy.
Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/iscsi_tcp.h')
-rw-r--r-- | drivers/scsi/iscsi_tcp.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/iscsi_tcp.h b/drivers/scsi/iscsi_tcp.h index 9badafe8820d..c8bb5b0bcb4b 100644 --- a/drivers/scsi/iscsi_tcp.h +++ b/drivers/scsi/iscsi_tcp.h | |||
@@ -191,6 +191,8 @@ struct iscsi_conn { | |||
191 | uint32_t sendpage_failures_cnt; | 191 | uint32_t sendpage_failures_cnt; |
192 | uint32_t discontiguous_hdr_cnt; | 192 | uint32_t discontiguous_hdr_cnt; |
193 | uint32_t eh_abort_cnt; | 193 | uint32_t eh_abort_cnt; |
194 | |||
195 | ssize_t (*sendpage)(struct socket *, struct page *, int, size_t, int); | ||
194 | }; | 196 | }; |
195 | 197 | ||
196 | struct iscsi_session { | 198 | struct iscsi_session { |