clean up legacy / obsolete SCSA interfaces
scsi_slave, get_pktiopb, scsi_pktalloc, scsi_pktfree, scsi_resalloc, scsi_resfree, scsi_dmaget, scsi_dmafree are obsolete, and have been so for a very very long time. These routines were long ago replaced by superior functions. (As in over a decade ago.)
Its time to clean them up.
sadly, sd.c still calls scsi_dmafree(). It appears that it may try to do this to elicit some particular response from mpxio (path failure?) instead of scsi_pkt_destroy(). Some analysis is warranted.
Note that cleaning this up would allow tran_dmafree() (and the alternate paths to packet DMA allocation and freeing) to be removed (obsoleted, the entry point would be left behind as a place holder for binary compatibility), potentially simplifying every HBA driver in illumos. This can only be good thing.