[ofw] SRP target from OpenSolaris not recognized

Grüninger, Andreas (LGL Extern) Andreas.Grueninger at lgl.bwl.de
Mon Aug 30 00:27:40 PDT 2010


Tzachi

We can make a deal: you make the change und I will check it out in our test environment.
May be the evaluation of the value can be protected by a flag set via the parameters key in the registry.

In
http://src.opensolaris.org/source/xref/nwam/nwam1/usr/src/uts/common/io/comstar/port/srpt/srp.h
I find
...
     38 /*
     39  * The following defines and structures are based on revision 16A of
     40  * the T10 Project 1415-D SRP Protocol specification.
     41  */
     42 
     43 /* Protocol revsion information */
     44 enum {
     45 	SRP_PROTOCOL		= 0x0108,
     46 	SRP_PROTOCOL_VERSION	= 0x0001,
     47 	SRP_REV_16A_IO_CLASS	= 0x0100,
     48 	SRP_REV_10_IO_CLASS	= 0xFF00,	/* Old targets */
     49 	SRP_IO_SUBCLASS		= 0x690E
     50 };
     51 
...

On page 69 the value for "I/O Subclass" must read 609Eh and not 690Eh.
Of course the error should be corrected on OpenSolaris. 
Maybe this will be done but in the current state of OpenSolaris/Solaris 11 this change will not be available for until end of year if at all.
If not changed in the initiator code users of the published binaries of OpenSolaris can't use srp targets in windows.

Thanks

Andreas

-----Ursprüngliche Nachricht-----
Von: Tzachi Dar [mailto:tzachid at mellanox.co.il] 
Gesendet: Sonntag, 29. August 2010 22:26
An: Grüninger, Andreas (LGL Extern); ofw at lists.openfabrics.org
Betreff: RE: SRP target from OpenSolaris not recognized

>From the log file, this the error:

00000149	6.61263466	__srp_validate_ioc() !ERROR!: 	
00000150	6.61264229	Not an SRP CLASS(0x100)/SUBCLASS(0x690e).	
00000151	6.61266088	srp_hba_create() !ERROR!: 	
00000152	6.61266470	Session Connection Failure.	
00000153	6.61267614	srp_find_adapter() !ERROR!: 	
00000154	6.61267853	srp_hba_create returned 43	


According to the log files, this is the lines that cause the problem:

	if ( ( p_ioc_rec->info.profile.io_class != SRP_IO_CLASS &&
		   p_ioc_rec->info.profile.io_class != SRP_IO_CLASS_R10 ) ||
		 p_ioc_rec->info.profile.io_subclass != SRP_IO_SUBCLASS )
	{
		SRP_PRINT_EXIT( TRACE_LEVEL_ERROR, SRP_DBG_ERROR,
						("Not an SRP CLASS(0x%x)/SUBCLASS(0x%x).\n",
						cl_ntoh16( p_ioc_rec->info.profile.io_class ),
						cl_ntoh16( p_ioc_rec->info.profile.io_subclass )) );
		return FALSE;
	}

The constants that are being used are:
#define SRP_IO_CLASS			CL_HTON16(0x0100)  /* T10 changed */
#define SRP_IO_CLASS_R10		CL_HTON16(0xff00)  /* FF + high 8 bits of NCITS OUI */
#define SRP_IO_SUBCLASS			CL_HTON16(0x609e)  /* Low 16 bits of NCITS OUI */


So the problem is the io_subclass that 0x609e != 690e

Does anybody knows what the different subclass mean? I can easily change the code to allow this subclass as well, but I don't know what will happen next.

Thanks
Tzachi
> -----Original Message-----
> From: ofw-bounces at lists.openfabrics.org [mailto:ofw- 
> bounces at lists.openfabrics.org] On Behalf Of Grüninger, Andreas (LGL
> Extern)
> Sent: Sunday, August 29, 2010 7:19 PM
> To: ofw at lists.openfabrics.org
> Subject: Re: [ofw] SRP target from OpenSolaris not recognized
> 
> I attached the log to this email.
> 
> Thanks
> Andreas
> 
> -----Ursprüngliche Nachricht-----
> Von: Tzachi Dar [mailto:tzachid at mellanox.co.il]
> Gesendet: Sonntag, 29. August 2010 17:11
> An: Grüninger, Andreas (LGL Extern); ofw at lists.openfabrics.org
> Betreff: RE: SRP target from OpenSolaris not recognized
> 
> 
> Can you please download our checked driver (ibsrp.sys) and copy it to 
> the windows\system32\drivers directory.
> Please run debugview on your machine. Next, please disable the device 
> and enable it again.
> Please send us the log of the error that you will get.
> 
> You can find the debug version of the driver in the symbol zip file 
> that is in our website. You can also send me the type of your system
> (2003/8 32/64bits) and I'll send you the driver file.
> 
> 
> Thanks
> Tzachi
> 
> > -----Original Message-----
> > From: ofw-bounces at lists.openfabrics.org [mailto:ofw- 
> > bounces at lists.openfabrics.org] On Behalf Of Grüninger, Andreas (LGL
> > Extern)
> > Sent: Sunday, August 29, 2010 5:59 PM
> > To: ofw at lists.openfabrics.org
> > Subject: [ofw] SRP target from OpenSolaris not recognized
> >
> > Hallo
> >
> > I installed
> > - SRP target OpenSolaris B134 with SUNWhermon driver
> > - MLNX_VPI_wnet_x64.msi on Windows Server 2003 x64 SP2
> > - MLNX_OFED_LINUX v1.4 with OpenSM 3.3.0 on SLES10 SP2
> > - VMWare release-1.4.1-222
> > - Infiband cards: ConnectX Dual-Port DDR MHQH29-XTC
> >
> > The SRP targets can be used with initiators from Linux and ESX.
> >
> > On Windows the SRP target is not recognized.
> >
> > After the installation of the Mellanox driver package the target is 
> > shown in the device manager as:
> > Other devices
> >    ? Solaris SRP Target 0.9a
> >
> > In the details of the device I found for "Compatible Ids" the values
> > IBA\C0100c690ep0108r0001
> > IBA\C0100c690ep0108
> >
> > In ib_srp.inf these values are defined [SRP.DeviceSection.ntx86] 
> > %SRP.DeviceDesc% = SRP.DDInstall,IBA\C0100c609ep0108r0001, \
> >
> > 	IBA\Cff00c609ep0108r0001, \
> > 								IBA\C0100c609ep0108, \
> > 								IBA\Cff00c609ep0108
> >
> > This seems to be a number turner.
> > Most probably the error is on the side of OpenSolaris sending the 
> > wrong ids.
> >
> > When I change the inf like this
> >
> > [SRP.DeviceSection.ntamd64]
> > %SRP.DeviceDesc% = SRP.DDInstall,IBA\C0100c609ep0108r0001, \
> >
> > 	IBA\Cff00c609ep0108r0001, \
> > 								IBA\C0100c609ep0108, \
> > 								IBA\Cff00c609ep0108, \
> >
> > IBA\C0100c690ep0108r0001, \
> > 								IBA\C0100c690ep0108
> > the miniport driver can be installed and is put under
> >
> >
> > SCSI and RAID controllers
> >    Mellanox Infiniband SRP Miniport
> >
> > But the driver cannot be started with the message "This device 
> > cannot start. (Code 10)"
> >
> > I checked the drivers from http://www.openfabrics.org/ too but to no 
> > avail.
> >
> > Are there chances to use SRP targets from OpenSolaris?
> >
> >
> > Kind regards
> >
> > Andreas
> > _______________________________________________
> > ofw mailing list
> > ofw at lists.openfabrics.org
> > http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw



More information about the ofw mailing list