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(-) -- 2.1.4 -- 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