linux/drivers/scsi/libsas
John Garry cf31d6d215 scsi: libsas: fix ata xfer length
commit 9702c67c60 upstream.

The total ata xfer length may not be calculated properly, in that we do
not use the proper method to get an sg element dma length.

According to the code comment, sg_dma_len() should be used after
dma_map_sg() is called.

This issue was found by turning on the SMMUv3 in front of the hisi_sas
controller in hip07. Multiple sg elements were being combined into a
single element, but the original first element length was being use as
the total xfer length.

Fixes: ff2aeb1eb6 ("libata: convert to chained sg")
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2017-04-08 09:30:32 +02:00
..
Kconfig [SCSI] libsas: convert to standard kernel debugging 2011-01-24 12:05:38 -06:00
Makefile Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-03-20 18:14:55 -07:00
sas_ata.c scsi: libsas: fix ata xfer length 2017-04-08 09:30:32 +02:00
sas_discover.c libsas: Fix Kernel Crash in smp_execute_task 2015-03-06 20:51:29 -08:00
sas_dump.c [SCSI] libsas: suspend / resume support 2012-08-24 13:10:23 +04:00
sas_dump.h [SCSI] libsas: convert to standard kernel debugging 2011-01-24 12:05:38 -06:00
sas_event.c [SCSI] libsas: suspend / resume support 2012-08-24 13:10:23 +04:00
sas_expander.c libsas: remove task_collector mode 2014-11-27 16:40:24 +01:00
sas_host_smp.c SCSI updates on 20120319 2012-03-22 12:55:29 -07:00
sas_init.c libsas: remove task_collector mode 2014-11-27 16:40:24 +01:00
sas_internal.h libsas: remove task_collector mode 2014-11-27 16:40:24 +01:00
sas_phy.c [SCSI] libsas: suspend / resume support 2012-08-24 13:10:23 +04:00
sas_port.c [SCSI] sas: unify the pointlessly separated enums sas_dev_type and sas_device_type 2013-05-10 07:47:52 -07:00
sas_scsi_host.c scsi: remove ->change_queue_type method 2014-12-04 09:55:45 +01:00
sas_task.c scsi: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:31:23 -04:00