[stgt] stgt: residual on Inquiry
FUJITA Tomonori
fujita.tomonori at lab.ntt.co.jp
Sun Aug 15 09:00:03 CEST 2010
On Tue, 10 Aug 2010 16:10:13 -0700
Joe Eykholt <jeykholt at cisco.com> wrote:
> When an initiator sends an FCP request with INQUIRY and
> data length 36, tgtd gives the kernel a buffer of 66
> bytes. If I set the FCP response OVERRUN flag and Residual
> count of 30 bytes, however, the initiator (Linux 2.6.34)
> retries the INQUIRY 3 times with the same data length and
> then gives up on LUN discovery. If I don't report the
> overrun, and just transfer the 36 bytes, then it works.
Sounds like odd. For iSCSI, the initiator sends INQUIRY with 36-bytes
buffer, then tgtd sends a response that says that we need more, then
the initiator sends INQUIRY with more longer buffer.
I think that scsi_probe_lun() works like that.
> My problem is that I don't know when to report Overrun and
> when not to, but the SCSI layer in tgtd should know that.
> My suggestion is that for INQUIRY, and perhaps some other
> commands (e.g., REPORT LUNS?) that tgtd (being the SCSI layer on
> the target) shouldn't return back a larger buffer than the
> target module (kernel) requested. Can we change tgtd accordingly?
I think that tgtd and llds always need to report overrun when it
happens.
--
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