crash happens when isp(4) target driver is responding to "SCSI inquiry (0x12)" from initiator. the isp(4) target driver is assembling an CTIO2 IOCB which includes "FreeBSD Emulated Disk 0.1" and send to initiator. Since it's a data transfer, it calls isp_pci_dmasetup() to set up DMA. Inside this function, it calls --->bus_dmamap_load()<--- and crash happens inside it. How-To-Repeat: follow link here: http://www.root.org/~nate/freebsd/scsi/README.targ you need to have 2 PCs, each with one QLA23XX HBA on PCI slot. One PC for initiator, another for target. Also on target machine, when issue "./scsi_target -d bus:tgt:0 test_file", use "camcontrol devlist -v" to find which bus your target isp is on. And always use 0 for tgt.
Responsible Changed From-To: freebsd-i386->freebsd-scsi Over to maintainer.
Responsible Changed From-To: freebsd-scsi->sbruno Taking this for monitoring
Responsible Changed From-To: sbruno->mjacob Reassign to maintainer as requested.
Responsible Changed From-To: mjacob->freebsd-scsi mjacob's bit has been returned for safekeeping.
The addition of ctl(4) to FreeBSD should supplant the use of targ(4) and should be preferred in this case. Give that a try and see if it happens on newer freebsd releases.