]> www.infradead.org Git - users/dwmw2/linux.git/commit
scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA
authorSuganath Prabu <suganath-prabu.subramani@broadcom.com>
Tue, 30 Jul 2019 07:43:57 +0000 (03:43 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 25 Aug 2019 08:50:01 +0000 (10:50 +0200)
commit25f99d0072600573e64d30c3a1aeda710e4c2571
tree9dee68e9b52d36e3b77b70299440aa5ed7353c55
parent45f092f9e9cb31486db546e39bfe7cc0b3f57099
scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA

commit df9a606184bfdb5ae3ca9d226184e9489f5c24f7 upstream.

Although SAS3 & SAS3.5 IT HBA controllers support 64-bit DMA addressing, as
per hardware design, if DMA-able range contains all 64-bits
set (0xFFFFFFFF-FFFFFFFF) then it results in a firmware fault.

E.g. SGE's start address is 0xFFFFFFFF-FFFF000 and data length is 0x1000
bytes. when HBA tries to DMA the data at 0xFFFFFFFF-FFFFFFFF location then
HBA will fault the firmware.

Driver will set 63-bit DMA mask to ensure the above address will not be
used.

Cc: <stable@vger.kernel.org> # 5.1.20+
Signed-off-by: Suganath Prabu <suganath-prabu.subramani@broadcom.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/scsi/mpt3sas/mpt3sas_base.c