diff options
Diffstat (limited to 'drivers/message/fusion/mptsas.c')
-rw-r--r-- | drivers/message/fusion/mptsas.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c index a9019f081b97..79f5433359f9 100644 --- a/drivers/message/fusion/mptsas.c +++ b/drivers/message/fusion/mptsas.c | |||
@@ -1277,8 +1277,8 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy, | |||
1277 | /* do we need to support multiple segments? */ | 1277 | /* do we need to support multiple segments? */ |
1278 | if (req->bio->bi_vcnt > 1 || rsp->bio->bi_vcnt > 1) { | 1278 | if (req->bio->bi_vcnt > 1 || rsp->bio->bi_vcnt > 1) { |
1279 | printk(MYIOC_s_ERR_FMT "%s: multiple segments req %u %u, rsp %u %u\n", | 1279 | printk(MYIOC_s_ERR_FMT "%s: multiple segments req %u %u, rsp %u %u\n", |
1280 | ioc->name, __func__, req->bio->bi_vcnt, req->data_len, | 1280 | ioc->name, __func__, req->bio->bi_vcnt, blk_rq_bytes(req), |
1281 | rsp->bio->bi_vcnt, rsp->data_len); | 1281 | rsp->bio->bi_vcnt, blk_rq_bytes(rsp)); |
1282 | return -EINVAL; | 1282 | return -EINVAL; |
1283 | } | 1283 | } |
1284 | 1284 | ||
@@ -1295,7 +1295,7 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy, | |||
1295 | smpreq = (SmpPassthroughRequest_t *)mf; | 1295 | smpreq = (SmpPassthroughRequest_t *)mf; |
1296 | memset(smpreq, 0, sizeof(*smpreq)); | 1296 | memset(smpreq, 0, sizeof(*smpreq)); |
1297 | 1297 | ||
1298 | smpreq->RequestDataLength = cpu_to_le16(req->data_len - 4); | 1298 | smpreq->RequestDataLength = cpu_to_le16(blk_rq_bytes(req) - 4); |
1299 | smpreq->Function = MPI_FUNCTION_SMP_PASSTHROUGH; | 1299 | smpreq->Function = MPI_FUNCTION_SMP_PASSTHROUGH; |
1300 | 1300 | ||
1301 | if (rphy) | 1301 | if (rphy) |
@@ -1321,10 +1321,10 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy, | |||
1321 | MPI_SGE_FLAGS_END_OF_BUFFER | | 1321 | MPI_SGE_FLAGS_END_OF_BUFFER | |
1322 | MPI_SGE_FLAGS_DIRECTION | | 1322 | MPI_SGE_FLAGS_DIRECTION | |
1323 | mpt_addr_size()) << MPI_SGE_FLAGS_SHIFT; | 1323 | mpt_addr_size()) << MPI_SGE_FLAGS_SHIFT; |
1324 | flagsLength |= (req->data_len - 4); | 1324 | flagsLength |= (blk_rq_bytes(req) - 4); |
1325 | 1325 | ||
1326 | dma_addr_out = pci_map_single(ioc->pcidev, bio_data(req->bio), | 1326 | dma_addr_out = pci_map_single(ioc->pcidev, bio_data(req->bio), |
1327 | req->data_len, PCI_DMA_BIDIRECTIONAL); | 1327 | blk_rq_bytes(req), PCI_DMA_BIDIRECTIONAL); |
1328 | if (!dma_addr_out) | 1328 | if (!dma_addr_out) |
1329 | goto put_mf; | 1329 | goto put_mf; |
1330 | mpt_add_sge(psge, flagsLength, dma_addr_out); | 1330 | mpt_add_sge(psge, flagsLength, dma_addr_out); |
@@ -1332,9 +1332,9 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy, | |||
1332 | 1332 | ||
1333 | /* response */ | 1333 | /* response */ |
1334 | flagsLength = MPT_SGE_FLAGS_SSIMPLE_READ; | 1334 | flagsLength = MPT_SGE_FLAGS_SSIMPLE_READ; |
1335 | flagsLength |= rsp->data_len + 4; | 1335 | flagsLength |= blk_rq_bytes(rsp) + 4; |
1336 | dma_addr_in = pci_map_single(ioc->pcidev, bio_data(rsp->bio), | 1336 | dma_addr_in = pci_map_single(ioc->pcidev, bio_data(rsp->bio), |
1337 | rsp->data_len, PCI_DMA_BIDIRECTIONAL); | 1337 | blk_rq_bytes(rsp), PCI_DMA_BIDIRECTIONAL); |
1338 | if (!dma_addr_in) | 1338 | if (!dma_addr_in) |
1339 | goto unmap; | 1339 | goto unmap; |
1340 | mpt_add_sge(psge, flagsLength, dma_addr_in); | 1340 | mpt_add_sge(psge, flagsLength, dma_addr_in); |
@@ -1357,8 +1357,8 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy, | |||
1357 | smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply; | 1357 | smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply; |
1358 | memcpy(req->sense, smprep, sizeof(*smprep)); | 1358 | memcpy(req->sense, smprep, sizeof(*smprep)); |
1359 | req->sense_len = sizeof(*smprep); | 1359 | req->sense_len = sizeof(*smprep); |
1360 | req->data_len = 0; | 1360 | req->resid_len = 0; |
1361 | rsp->data_len -= smprep->ResponseDataLength; | 1361 | rsp->resid_len -= smprep->ResponseDataLength; |
1362 | } else { | 1362 | } else { |
1363 | printk(MYIOC_s_ERR_FMT "%s: smp passthru reply failed to be returned\n", | 1363 | printk(MYIOC_s_ERR_FMT "%s: smp passthru reply failed to be returned\n", |
1364 | ioc->name, __func__); | 1364 | ioc->name, __func__); |
@@ -1366,10 +1366,10 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy, | |||
1366 | } | 1366 | } |
1367 | unmap: | 1367 | unmap: |
1368 | if (dma_addr_out) | 1368 | if (dma_addr_out) |
1369 | pci_unmap_single(ioc->pcidev, dma_addr_out, req->data_len, | 1369 | pci_unmap_single(ioc->pcidev, dma_addr_out, blk_rq_bytes(req), |
1370 | PCI_DMA_BIDIRECTIONAL); | 1370 | PCI_DMA_BIDIRECTIONAL); |
1371 | if (dma_addr_in) | 1371 | if (dma_addr_in) |
1372 | pci_unmap_single(ioc->pcidev, dma_addr_in, rsp->data_len, | 1372 | pci_unmap_single(ioc->pcidev, dma_addr_in, blk_rq_bytes(rsp), |
1373 | PCI_DMA_BIDIRECTIONAL); | 1373 | PCI_DMA_BIDIRECTIONAL); |
1374 | put_mf: | 1374 | put_mf: |
1375 | if (mf) | 1375 | if (mf) |