[stgt] stgt basic kernel interface questions
FUJITA Tomonori
fujita.tomonori at lab.ntt.co.jp
Sat Jul 3 12:52:47 CEST 2010
On Tue, 29 Jun 2010 09:22:12 -0700
Joe Eykholt <jeykholt at cisco.com> wrote:
> >> 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?
> >
> > You mean that the data might not be committed to disk persistently?
>
> Yes. If the system were to crash just after the response was sent,
> the data might be lost.
>
> So, it seems we should modify the interactions to have one to
> say "get the data" between 1 and 2, or something like that.
Adding an interaction between kernel and user space increases latency.
scsi_cmnd includes the information about all the pages so the llds
can see if the data is committed or not?
--
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