In the Linux storage stack there are 3 levels: upper, mid and lower. Therefore, I know what it is in that sense. What I’m hoping someone will know is, what files in the Linux source tree actually comprise the storage (scsi) mid-layer?
Answer
There is a linux kernel doc about the “midlayer_implementation”
SCSI midlayer implementation
include/scsi/scsi_device.h
drivers/scsi/scsi.c
drivers/scsi/scsicam.c
drivers/scsi/scsi_error.c
drivers/scsi/scsi_devinfo.c
drivers/scsi/scsi_ioctl.c
drivers/scsi/scsi_lib.c
drivers/scsi/scsi_lib_dma.c
drivers/scsi/scsi_module.c
drivers/scsi/scsi_proc.c
drivers/scsi/scsi_netlink.c
drivers/scsi/scsi_scan.c
drivers/scsi/scsi_sysctl.c
drivers/scsi/scsi_sysfs.c
drivers/scsi/hosts.c
drivers/scsi/constants.c