[SCSI] libiscsi REGRESSION: fix passthrough support with older iscsi tools
authorMike Christie <michaelc@cs.wisc.edu>
Mon, 1 Dec 2008 18:13:00 +0000 (12:13 -0600)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Wed, 3 Dec 2008 16:09:19 +0000 (10:09 -0600)
commitd3acf0226debeae22d87808f8f298386bd08e391
treec4b63cd902f94d561126d65ff3e56a3c6463fa2d
parentb21227c5fcadab206e2a2373e5b288a351919abb
[SCSI] libiscsi REGRESSION: fix passthrough support with older iscsi tools

This regression was added in 2.6.27, when the mtask and ctask were
merged into the the common task struct. The patch applies to
scsi-rc-fixes, but also applies to 2.6.27 with some offsets.

The problem is that __iscsi_conn_send_pdu assumes that userspace was
not sending nops with the format it is checking for in the "if" below.
It turns out that older userspace tools are. This patch moves the
setting of the internal ping_task tracker (it tracks libiscsi current
outstanding nop) to iscsi_send_nopout which is only used by kernel callers.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
drivers/scsi/libiscsi.c