scsi: staging: unisys: visorhba: use sg helper to iterate over scatterlist
authorMing Lei <ming.lei@redhat.com>
Tue, 18 Jun 2019 01:37:49 +0000 (09:37 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 20 Jun 2019 19:21:32 +0000 (15:21 -0400)
commitda5567369fb686eb050da15364f11ef561f9a03e
tree5597db2871ca617db9f5aeee2bb502ff4210aeee
parent1194b5ce57d27c2ad49ed26f8cec98757c7c23ec
scsi: staging: unisys: visorhba: use sg helper to iterate over scatterlist

Unlike the legacy I/O path, scsi-mq preallocates a large array to hold
the scatterlist for each request. This static allocation can consume
substantial amounts of memory on modern controllers which support a
large number of concurrently outstanding requests.

To facilitate a switch to a smaller static allocation combined with a
dynamic allocation for requests that need it, we need to make sure all
SCSI drivers handle chained scatterlists correctly.

Convert remaining drivers that directly dereference the scatterlist
array to using the iterator functions.

[mkp: clarified commit message]

Cc: devel@driverdev.osuosl.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/staging/unisys/visorhba/visorhba_main.c