From: Ming Z. <mi...@el...> - 2006-11-12 20:33:28
|
On Sun, 2006-11-12 at 22:20 +0200, Dan Aloni wrote: > On Sun, Nov 12, 2006 at 01:42:28PM -0500, Ming Zhang wrote: > > On Sun, 2006-11-12 at 19:59 +0200, Dan Aloni wrote: > > > On Sun, Nov 12, 2006 at 12:47:56PM -0500, Ming Zhang wrote: > > > > i do not think the FC chip allow to run at both target mode and > > > > initiator mode at same time. so u have to use 2 HBAs on each box. > > > > > > > > Ming > > > > > > As I understand it the Initiator implementation is mostly in the > > > driver and the firmware is unaware that a Target implementation > > > was 'hooked' into it. > > > > no, firmware is aware of this target mode. when target mode is enabled, > > some mailbox commands are sent to firmware to enable the target mode. > > target mode support is built in firmware as well. > > Okay, that is very interesting. Did this support exist in all versions > of the qla23xx firmware so far, or was it added only recently? should be in it from very beginning. > > > > > > > > > Are you suggesting that if I use qla2xxx as a target I can't use it > > > as an initiator on the same port for any other target? IIRC there > > > > i just have a quick check on ISP2300spec. It does not say target mode > > and initiator mode can run at same time. but it does not say No neither. > > also target mode bit and ini mode bit are different bits so possible you > > are right, it can do so. just the driver code does not support this yet. > > About the driver, I'm using the patched version which is supplied with > scst, so *that* version of the driver does support target mode. that version support target mode. and it is patched against ini mode driver coming with kernel. > > This problem with Fibre Channel can also be viewed from a different angle, > suppose TCP/IP. In TCP/IP, if you want two computers to be both client > and server, you need a minimum of two ports in each side in order to > support the two distinguished TCP/IP sessions. > > If the same restriction also applies to Fibre Channel SCSI, it means that > you must have two ports on each side in order to establish a BiDi-SCSI > setup. Perhaps it is a violation of the SCSI standard itself as it would > have been a violation of the TCP/IP standard if we hacked a way to > create a TCP/IP session in a symmetrical fashion between two computers. For SCSI it should be 2 independent sessions. > > > > are already some implementations that combine target and initiator > > > on the same port, notably LSI's implmentation. > > > > lsi has ini support in kernel and a mptstm code to support target mode. > > but i do not know if it can run at same time. i have no lsi spec, so not > > idea. > > About LSI, I have tested it, and it can run at the same time, although > there is a problem with the Bidi-SCSI setup that I've described - the > problem is that there's a login-logout storm between the two ports, > because each direction takes up a 'session', and then you get two > conflicting sessions for each direction. The firmware gets confused > and can even crash... > > The problem with LSI is that you can't resolve that issue because most > of the logic is in the firmware and the firmware is not opened. The > advantage of QLogic is that it might be possible to implement this > easily and this is why I wrote to you guys. > qla has lot of stuff in firmware as well. |