What still uses the block layer?



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/



Relevant Pages

  • Linux specific scsi CDBs vs REQ_TYPE_LINUX_BLOCK requests
    ... generic block layer messages. ... how to add support for this type of requests in the scsi subsystem ... variable length and in particular vendor specific CDBs to the scsi mid ... unless you are definitely in favour of the block layer approach ...
    (Linux-Kernel)
  • Re: What still uses the block layer?
    ... and a gigantic glue layer in between call the "scsi midlayer" that's ... sd and sr are block drivers. ... It has a pointer to the block request ...
    (Linux-Kernel)
  • Re: What still uses the block layer?
    ... When a reply contains as a reply to the first paragraph "you're wrong" with no ... impression that the block layer is _not_ used by the SCSI layer. ... every non-embedded modern storage device I'm aware of has been consumed by ...
    (Linux-Kernel)
  • Re: What still uses the block layer?
    ... I admit a certain amount of personal annoyance that once the SCSI layer ... and making device enumeration unnecessarily difficult: ... The question I was trying to ask _here_ was about the block layer. ...
    (Linux-Kernel)
  • Re: [PATCH]: Fix old SCSI adapter crashes with CD-ROM (take 2)
    ... However they get injected into the SCSI layer via ... According to Jens the right long term fix is for the CD layer to route ... Christoph passed me his patch to get rid of ->generic_packetin the ... Mike Christie tells me we're missing bouncing by accident in the ...
    (Linux-Kernel)