aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2007-12-30 05:34:52 -0500
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-01-11 19:29:09 -0500
commit38b3167f75c9508156b974d19692c19b78292e2e (patch)
tree2b51dfa5f921bec99408b0742601a1c9451fe00d
parentfdf234527a070f6fc89f3ec5ee4ae1b263e59939 (diff)
[SCSI] mpt fusion: make mptsas_smp_handler update resid
This patch fixes mptsas_smp_handler to update both din_resid or dout_resid on success. bsg can report back the residual. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r--drivers/message/fusion/mptsas.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c
index e4c94f93de16..f77b329f6923 100644
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@ -1343,6 +1343,8 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy,
1343 smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply; 1343 smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply;
1344 memcpy(req->sense, smprep, sizeof(*smprep)); 1344 memcpy(req->sense, smprep, sizeof(*smprep));
1345 req->sense_len = sizeof(*smprep); 1345 req->sense_len = sizeof(*smprep);
1346 req->data_len = 0;
1347 rsp->data_len -= smprep->ResponseDataLength;
1346 } else { 1348 } else {
1347 printk(MYIOC_s_ERR_FMT "%s: smp passthru reply failed to be returned\n", 1349 printk(MYIOC_s_ERR_FMT "%s: smp passthru reply failed to be returned\n",
1348 ioc->name, __FUNCTION__); 1350 ioc->name, __FUNCTION__);