Scatter Gather Lists and SCSI packets
(As far as I can tell) Solaris forces you to assign a contiguous buffer to a SCSI packet to construct and transport a SCSI command.
I need to construct a scsi packet with a data buffer that consists of data from at most 9 other data buffers. We used memcopy to combine the those buffers into the contiguous buffer we needed, but it takes up too much CPU resources and we need to improve the performance.
I was going to use uio to maintain a scatter gather list and then use uiomove to attain the contiguous buffer I need. But I was told that it would not improve the CPU utilization over the current algorithm we use.
Is there any faster way to get my discontiguous data to the scsi device without using uiomove or memcopy.
Thanks in advance.