What still uses the block layer?

From: Rob Landley
Date: Sat Oct 13 2007 - 15:10:01 EST


My impression from asking questions on the linux-scsi mailing list is that the
scsi upper/middle/lower layers doesn't use the block layer described in
Documentation/block/*.

For example, the scsi guys say:
http://marc.info/?l=linux-scsi&m=118633268527856&w=2

Instead of using the block layer, SCSI reinvents this particular wheel itself.
There's a scsi "upper layer" that provides /dev nodes, scsi low-level
drivers, and a gigantic glue layer in between call the "scsi midlayer" that's
something like a networking stack, and is responsible for losing track of all
your devices so that the one SATA disk hardwired into your laptop might be
sda or sdc depending on whether or not you had a USB key plugged in when you
booted up. Anyway, the block layer isn't between any of these three, that I
can tell.

Now that IDE disks have been rerouted through the scsi layer, SATA goes
through the scsi layer, USB goes through the scsi layer, firewire goes
through the scsi layer... What's left? It seems like everything but
ramdisks have now been routed through the scsi layer. My laptop hasn't got a
single SCSI device but it also hasn't got any block devices that don't show
up as scsi.

So what's still using the block layer? How do the scsi layers and the block
layer relate? I'm confused! (This is normal for me, but still...)

Rob
--
"One of my most productive days was throwing away 1000 lines of code."
- Ken Thompson.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/