[ofw] SRP miniport will not start with gen2 SRP Target

Sufficool, Stanley ssufficool at rov.sbcounty.gov
Mon Aug 13 12:35:23 PDT 2007


Looks like WinIB srp initiator is sending [TargetGUID]:[InitiatorGUID]
in the request init_port_id struct instead of
[InitiatorExt]:[InitiatorGUID]. I beleive this is causing the Mellanox
referenced SRPT to produce an invalid nexus and break the connection.
 
These are the logs from the Mellanox IB_SRPT kernel module for Win64 &
Linux x64 initiator scenarios.

--- Windows Inititator (WinIB Gen1 SRP)
===================================
ib_srpt: Host i_port_id=0x44d00cffff4b1a00:0xf4f700ffffbb1900 login with
t_port_id=0x44d00cffff4b1a00:0x44d00cffff4b1a00 it_iu_len=340

Result: no disk in disk manager
===================================

--- Linux Initiator (OFED Gen2 SRP) -
===================================
ib_srpt: Host i_port_id=0x0:0x45d00cffff4b1a00 login with
t_port_id=0x44d00cffff4b1a00:0x44d00cffff4b1a00 it_iu_len=260

Result, successful connection and /dev/sda is created.
===================================
 
srp_connection.c
====================
Is there a reason to set the init_port_id.field1 to the target port
GUID? Per the SRP R16 (Pg 66), this is set to the Initiator ID extension
(0x0 in above Linux scenario). "The IDENTIFIER EXTENSION field shall be
chosen by the SRP initiator port to ensure that all SRP initiator port
identifiers are unique". Linux SRP sets this to the initiator_ext
(ib_srp.c line 342)
 
line 802 - 815
       switch( p_profile->io_class )
        {
        case SRP_IO_CLASS_R10:
                p_connection->init_port_id.field1 = ca_guid;
                p_connection->init_port_id.field2 = ext_id;
                p_connection->targ_port_id.field1 = p_profile->ioc_guid;
                p_connection->targ_port_id.field2 = ext_id;
                break;
 
        case SRP_IO_CLASS:
                p_connection->init_port_id.field1 = ext_id;
                p_connection->init_port_id.field2 = ca_guid;
                p_connection->targ_port_id.field1 = ext_id;
                p_connection->targ_port_id.field2 = p_profile->ioc_guid;
                break;
 
        default:
                return IB_INVALID_PARAMETER;
        }

 
 
 

________________________________

From: ofw-bounces at lists.openfabrics.org
[mailto:ofw-bounces at lists.openfabrics.org] On Behalf Of Sufficool,
Stanley
Sent: Tuesday, August 07, 2007 10:12 AM
To: ofw at lists.openfabrics.org
Subject: [ofw] SRP miniport will not start with gen2 SRP Target


I noted this thread from May:
 
http://lists.openfabrics.org/pipermail/ofw/2007-May/001565.html
 
I am having the same issue. Vu at Mellanox says it has something to do
with the SRP initiator not recognizing the LUNs on the target. (
http://lists.openfabrics.org/pipermail/general/2007-July/037986.html )
 
Is there anything being done with this? The linux initiators are said to
work with this target.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20070813/755c7a2c/attachment.html>


More information about the ofw mailing list