On Tue, 2013-11-19 at 09:50 +0530, Sumeet Gandhare wrote: > Hi, > I am observing the following. > > In a login request , when T bit is zero, NSG bit should be ignored. > This is as per section, stating clauses > > 10.12.3 CSG and NSG. > > > "The next stage value is only valid when the T bit is 1; otherwise, it is > reserved." > > > What I observe is when I send a login request PDU with T bit = 0 and NSG > = 2, I get an error from the Target and login fails. > > dmesg output: > > [445236.464971] Illegal login_req->flags Combination, CSG: 1, NSG: 2, > ISCSI_FLAG_LOGIN_TRANSIT: 0. > [445236.465399] iSCSI Login negotiation failed. > > Shouldn't the target ignore the NSG bit and continue with login > negotiation process? It's failing here because NSG is an invalid value (eg: NSG=2 is undefined for stage codes in 10.12.3), and not because T_BIT has not been set.. So I'm on the fence here.. AFAICT all other cases ignore NSG when T_BIT has not been set, but this particular case where NSG=2 is rejected (regardless of T_BIT) still seems like the right thing to do when an undefined -> invalid value is sent. --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