There are AFAIK three ways to think scsi in the linux kernel
- The true scsi, that is a hardware piece that acts as an scsi target such as those adaptec.
- the sg devices, that is some devices are accessed using scsi commands such as midi, synthetizers, and such
- the scsi to ata layer.
I am not sure if this is a good way to put it, but is what comes to my mind now
So, short answer, more or less all the disk you have are accessed using scsi commands, that translates to the native commands.
Out of boredom I have just setup a debian 6.0 64bits vm at virtualbox.
I added PATA, Sata (AHCI), 2 x true scsi (lsilogic and buslogic), a SAS controller and one iscsi device. This is the lsscsi output
This are the kernel names for the disks
root@debian:~# lsscsi -k
[0:0:0:0] disk VBOX HARDDISK 1.0 /dev/sdb
[1:0:0:0] disk ATA VBOX HARDDISK 1.0 /dev/sda
[2:0:0:0] cd/dvd VBOX CD-ROM 1.0 /dev/sr0
[3:0:0:0] disk ATA VBOX HARDDISK 1.0 /dev/sdc
[4:0:0:0] disk VBOX HARDDISK 1.0 /dev/sdd
[5:0:0:0] disk VBOX HARDDISK 1.0 /dev/sde
[6:0:0:0] disk OPNFILER VIRTUAL-DISK 0 /dev/sdf
And this are the "hosts"
root@debian:~# lsscsi --hosts -v
[0] BusLogic
dir: /sys/class/scsi_host/host0
device dir: /sys/devices/pci0000:00/0000:00:15.0/host0
[1] ata_piix
dir: /sys/class/scsi_host/host1
device dir: /sys/devices/pci0000:00/0000:00:1f.1/host1
[2] ata_piix
dir: /sys/class/scsi_host/host2
device dir: /sys/devices/pci0000:00/0000:00:1f.1/host2
[3] ahci
dir: /sys/class/scsi_host/host3
device dir: /sys/devices/pci0000:00/0000:00:1f.2/host3
[4] mptspi
dir: /sys/class/scsi_host/host4
device dir: /sys/devices/pci0000:00/0000:00:14.0/host4
[5] mptsas
dir: /sys/class/scsi_host/host5
device dir: /sys/devices/pci0000:00/0000:00:16.0/host5
[6] iscsi_tcp
dir: /sys/class/scsi_host/host6
device dir: /sys/devices/platform/host6
As you can see sata, sas, iscsi, and ahci devices are mapped to a virtual scsi device and accessed as SCSI.
Thanks for letting me play with this a while. It had been a while since I had had so much fun
Regards
Sebastian