Difference between Pass-Through SCSI Disk and vdisk_blockio

359 views
Skip to first unread message

gandolf

unread,
Apr 14, 2017, 1:02:56 AM4/14/17
to esos-users
I am confused by these two. From the description, they both perform direct block I/O with a block device then what is the difference between these two? Is there any example where passthrough scsi should be chosen? 

The description also mentioned the passthrough scsi support many to one operation. How does this work without corrupting the data? For example, initiator A and B are both connected to target C (passthrough scsi), A is formatting the target with XFS filesystem while at the same time B is formatting the target with EXT4 filesystem, in this case, how does SCST avoid data corruption? 

Thanks in advance!

Marc Smith

unread,
Apr 14, 2017, 9:54:18 AM4/14/17
to esos-...@googlegroups.com
On Fri, Apr 14, 2017 at 1:02 AM, gandolf <szw...@gmail.com> wrote:
> I am confused by these two. From the description, they both perform direct
> block I/O with a block device then what is the difference between these two?
> Is there any example where passthrough scsi should be chosen?

Stick with vdisk_blockio -- it has all the "extra" features in there.
You might use dev_disk (pass-through handler) if there is some
particular feature that your SCSI device implements (eg, some specific
SCSI command) that the vdisk_* handlers do not implement, but honestly
that is the only reason I can think of right now. I'm sure there are
some other use cases, I'm just not aware.


>
> The description also mentioned the passthrough scsi support many to one
> operation. How does this work without corrupting the data? For example,
> initiator A and B are both connected to target C (passthrough scsi), A is
> formatting the target with XFS filesystem while at the same time B is
> formatting the target with EXT4 filesystem, in this case, how does SCST
> avoid data corruption?

It makes it so a SCSI disk can be accessed by multiple initiators...
it doesn't do any sort of locking, you still need to use a clustered
file system on top of any device exported by SCST. And you say target,
but you can have one target interface (or more), and export two
different logical devices and map those as LUN's to different
initiators and that will work just fine (each initiator is accessing a
different LUN).

Let me know if that doesn't make sense.

--Marc


>
> Thanks in advance!
>
> --
> You received this message because you are subscribed to the Google Groups
> "esos-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to esos-users+...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages