diff options
author | Quinn Tran <qutran@marvell.com> | 2019-07-26 09:07:27 -0700 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2019-07-30 16:12:01 -0400 |
commit | d376dbda187317d06d3a2d495b43a7983e4a3250 (patch) | |
tree | ba6596297d6e9d35dad0bd46abc6dbea067668eb /drivers/scsi/qla2xxx/qla_gs.c | |
parent | 5d328de64d89400dcf9911125844d8adc0db697f (diff) | |
download | linux-d376dbda187317d06d3a2d495b43a7983e4a3250.tar.gz |
scsi: qla2xxx: Fix different size DMA Alloc/Unmap
[ 17.177276] qla2xxx 0000:05:00.0: DMA-API: device driver frees DMA memory
with different size [device address=0x00000006198b0000] [map size=32784 bytes]
[unmap size=8208 bytes]
[ 17.177390] RIP: 0010:check_unmap+0x7a2/0x1750
[ 17.177425] Call Trace:
[ 17.177438] debug_dma_free_coherent+0x1b5/0x2d5
[ 17.177470] dma_free_attrs+0x7f/0x140
[ 17.177489] qla24xx_sp_unmap+0x1e2/0x610 [qla2xxx]
[ 17.177509] qla24xx_async_gnnft_done+0x9c6/0x17d0 [qla2xxx]
[ 17.177535] qla2x00_do_work+0x514/0x2200 [qla2xxx]
Fixes: b5f3bc39a0e8 ("scsi: qla2xxx: Fix inconsistent DMA mem alloc/free")
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_gs.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_gs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_gs.c b/drivers/scsi/qla2xxx/qla_gs.c index 9f58e591666d..ebf223cfebbc 100644 --- a/drivers/scsi/qla2xxx/qla_gs.c +++ b/drivers/scsi/qla2xxx/qla_gs.c @@ -4152,7 +4152,7 @@ int qla24xx_async_gpnft(scsi_qla_host_t *vha, u8 fc4_type, srb_t *sp) rspsz, &sp->u.iocb_cmd.u.ctarg.rsp_dma, GFP_KERNEL); - sp->u.iocb_cmd.u.ctarg.rsp_allocated_size = sizeof(struct ct_sns_pkt); + sp->u.iocb_cmd.u.ctarg.rsp_allocated_size = rspsz; if (!sp->u.iocb_cmd.u.ctarg.rsp) { ql_log(ql_log_warn, vha, 0xffff, "Failed to allocate ct_sns request.\n"); |