[stgt] stgt basic kernel interface questions

Joe Eykholt jeykholt at cisco.com
Mon Jun 28 21:46:53 CEST 2010


Hi all,

I'm new to this list, and new to working on STGT.

I'm attempting to make a kernel module that hooks libfc into STGT
so that libfc target hooks can be used to present I/O requests to
STGT.

I'm aware of the entirely user-level fcoe target, but
want to use the in-kernel one in order to get support from
HBA-like LLDs like fnic, and to get FIP support, etc.

I'm struggling to understand a few things.  Is there an
architecture manual I can look at or a good e-mail thread
that's discussed the overall design?

My specific question at this point deals with how the kernel
knows the status of a WRITE command.

My guess is that for WRITEs, the user-kernel interactions are:

1. TGT_KEVENT_CMD_REQ - kernel presents command to tgtd.
2. TGT_UEVENT_CMD_RSP - tgtd gives buffer address to kernel
	- send XFER_RDY
	- kernel fills in buffer
3. TGT_KEVENT_CMD_DONE - kernel indicates write data in buffer
	
.... then, what tells the kernel it's safe to send the response?
If we do it between 2 and 3, then the data isn't really safe yet.
Is there another TGT_UEVENT_CMD_RSP?

Thanks in advance for any help.  Please excuse the basic questions
I'll be asking.

	Joe Eykholt
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the stgt mailing list