Ram Pai f2e767bb5d scsi: mpt3sas: Force request partial completion alignment
The firmware or device, possibly under a heavy I/O load, can return on a
partial unaligned boundary. Scsi-ml expects these requests to be
completed on an alignment boundary. Scsi-ml blindly requeues the I/O
without checking the alignment boundary of the I/O request for the
remaining bytes. This leads to errors, since devices cannot perform
non-aligned read/write operations.

This patch fixes the issue in the driver. It aligns unaligned
completions of FS requests, by truncating them to the nearest alignment
boundary.

[mkp: simplified if statement]

Reported-by: Mauricio Faria De Oliveira <mauricfo@linux.vnet.ibm.com>
Signed-off-by: Guilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com>
Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Acked-by: Sreekanth Reddy <Sreekanth.Reddy@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-01-31 22:36:53 -05:00
..
2016-02-23 21:27:02 -05:00
2016-12-14 10:49:33 -08:00
2016-12-14 10:49:33 -08:00
2016-11-08 17:29:56 -05:00
2016-11-17 20:15:26 -05:00
2016-12-14 10:49:33 -08:00
2016-07-27 14:48:37 -07:00
2016-12-14 10:49:33 -08:00
2016-12-14 10:49:33 -08:00
2016-12-14 10:49:33 -08:00
2015-11-25 22:08:55 -05:00
2016-05-10 22:01:07 -04:00
2016-10-07 09:28:53 -07:00
2016-12-14 10:49:33 -08:00
2016-02-25 21:10:53 -05:00
2016-11-08 17:29:46 -05:00
2016-01-27 20:36:10 +08:00
2016-01-27 20:36:10 +08:00
2016-12-14 10:49:33 -08:00
2016-02-23 21:27:02 -05:00
2016-11-28 15:51:31 -05:00
2016-10-07 09:28:53 -07:00
2016-11-14 13:16:42 -07:00
2016-10-18 19:49:11 -06:00
2016-02-23 21:27:02 -05:00
2016-09-04 01:28:08 -04:00
2015-11-18 11:59:09 -05:00
2016-02-23 21:27:02 -05:00