Re: [PATCH 0/1] iscsi-target: remove support for obsolete markers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Christophe,

On Sun, 2015-04-19 at 22:18 +0200, Christophe Vu-Brugier wrote:
> Some time ago, I documented the iSCSI target login parameters in
> targetcli-fb and learned that the Fixed Interval Marker keys
> (IFMarker, OFMarker, IFMarkInt, OFMarkInt) are obsolete according to
> RFC 7143.
> 
> From http://tools.ietf.org/html/rfc7143#section-13.25:
> 
>   13.25.  Obsoleted Keys
> 
>   This document obsoletes the following keys defined in [RFC3720]:
>   IFMarker, OFMarker, OFMarkInt, and IFMarkInt.  However, iSCSI
>   implementations compliant to this document may still receive these
>   obsoleted keys -- i.e., in a responder role -- in a text negotiation.
> 
>   When an IFMarker or OFMarker key is received, a compliant iSCSI
>   implementation SHOULD respond with the constant "Reject" value.  The
>   implementation MAY alternatively respond with a "No" value.
> 
>   However, the implementation MUST NOT respond with a "NotUnderstood"
>   value for either of these keys.
> 
>   When an IFMarkInt or OFMarkInt key is received, a compliant iSCSI
>   implementation MUST respond with the constant "Reject" value.  The
>   implementation MUST NOT respond with a "NotUnderstood" value for
>   either of these keys.
> 
> Out of curiosity, I tried to enable markers in LIO and found that
> support for markers is currently broken. With kernel debugging
> enabled, I see the following messages in `dmesg`:
> 
>   Reset "IFMarker" to "No".
>   Reset "OFMarker" to "No".
>   Reset "IFMarkInt" to "Irrelevant".
>   Reset "OFMarkInt" to "Irrelevant".
> 
> This happens because in iscsi_enforce_integrity_rules(), the
> "IFMarkInt_Reject" and "OFMarkInt_Reject" variables are always equal
> to 1.
> 
>   http://lxr.free-electrons.com/source/drivers/target/iscsi/iscsi_target_parameters.c#L1479
> 
> I suspect that nobody enables markers with LIO. Because support for
> markers is broken and deprecated, I think it is better to remove them
> instead of fixing them.
> 
> This patch disables markers by turning the corresponding parameters to
> read-only. The default value of IFMarker and OFMarker remains "No" but
> the user cannot change it to "Yes" anymore. The new value of IFMarkInt
> and OFMarkInt is "Reject".
> 
> I tested my changes with a patched version of libiscsi that allows to
> set markers parameters on the initiator side:
> 
>   https://github.com/cvubrugier/libiscsi/tree/iscsi-markers
> 
> Best regards,
> 
> Christophe Vu-Brugier (1):
>   iscsi-target: remove support for obsolete markers
> 
>  drivers/target/iscsi/iscsi_target.c            |  20 +--
>  drivers/target/iscsi/iscsi_target_configfs.c   |   8 +-
>  drivers/target/iscsi/iscsi_target_erl0.c       |  53 ------
>  drivers/target/iscsi/iscsi_target_erl0.h       |   1 -
>  drivers/target/iscsi/iscsi_target_login.c      |  58 +-----
>  drivers/target/iscsi/iscsi_target_login.h      |   1 -
>  drivers/target/iscsi/iscsi_target_parameters.c | 240 +------------------------
>  drivers/target/iscsi/iscsi_target_parameters.h |  11 +-
>  drivers/target/iscsi/iscsi_target_util.c       |  48 -----
>  drivers/target/iscsi/iscsi_target_util.h       |   1 -
>  include/target/iscsi/iscsi_target_core.h       |  10 --
>  11 files changed, 20 insertions(+), 431 deletions(-)
> 

Applied to target-pending/for-next as v4.2 code.

Note this was originally used as a mechanism for jumping ahead to the
next incoming PDU when, for example, a HeaderDigest failed and a unknown
amount of immediate data payload was left in the TCP stream.

Nice work to drop this obsoleted logic.  :)

Thank you,

--nab

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




[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux