Re: [Scst-devel] Fwd: Re: linuxcon 2010...

From: Vladislav Bolkhovitin
Date: Sat Aug 21 2010 - 14:42:40 EST


Nicholas A. Bellinger, on 08/20/2010 02:29 AM wrote:
"We will be extending the scsi_tgt_[lib,if].c mapped ring interface to
allow TCM to access userspace backstores transparently with existing
kernel level TCM fabric modules, and using the generic configfs fabric
module infrastructure in target_core_fabric_configfs.c for the port and
I_T nexus control plane just as you would with any TCM backstore
subsystem today.

Again, in open source you have to build upon what already exists and
move forward. The original STGT kernel<-> userspace ring abstraction
and logic in drivers/scsi/scsi_tgt_lib.c:scsi_tgt_queue_command() ->
scsi_tgt_uspace_send_cmd() is already going to do the vast majority of
what is required for handling fabric I/O processing and I_T Nexus and
Port management in kernel space with a userspace backstore. It is
really just a matter of allowing the STGT ring request to optionally be
sent out to userspace as a standalone LUN instead of as a target port."

You forgot to mention one small thing. You are going to (re)use current STGT interface for user space backend, which in 5 years of being mainline has not gained any noticeable interest, because it is fundamentally slow. It needs a complete redesign to become fast. In contrast, interface provided by scst_user has just 3% overhead comparing with fully in-kernel backend and allows to build storage capable of handling 1,500,000 IOPSes (Kaminario).

Vlad
--
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/