From owner-freebsd-scsi@FreeBSD.ORG Mon Jun 29 18:05:55 2009 Return-Path: Delivered-To: freebsd-scsi@FreeBSD.org Received: from [127.0.0.1] (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by hub.freebsd.org (Postfix) with ESMTP id 8F9561065670; Mon, 29 Jun 2009 18:05:54 +0000 (UTC) (envelope-from jkim@FreeBSD.org) From: Jung-uk Kim To: freebsd-scsi@FreeBSD.org Date: Mon, 29 Jun 2009 14:05:36 -0400 User-Agent: KMail/1.6.2 References: <9D155EF6-7171-473C-A09A-B4B18CC1A932@sarenet.es> In-Reply-To: <9D155EF6-7171-473C-A09A-B4B18CC1A932@sarenet.es> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-Id: <200906291405.40290.jkim@FreeBSD.org> Cc: Subject: Re: Fibrechannel HAs X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Jun 2009 18:05:55 -0000 On Friday 26 June 2009 08:20 am, Borja Marcos wrote: > Hello, > > I'm trying to use a SAN with FreeBSD and running into problems, not > sure at all what to blame. Let's see if anyone can shed some light > on this. > > I'm using a Qlogic card, a QL2360, supplied by Dell. > > FreeBSD 7.2/amd64 recognizes it, but it claims it's a different > model: > > Jun 25 17:18:36 host kernel: isp0: Adapter> port 0xdc00-0xdcff mem 0xfc4bc000-0xfc4bffff irq 16 at > device 0.0 on pci10 > Jun 25 17:18:36 host kernel: isp0: [ITHREAD] > Jun 25 17:18:36 host kernel: isp0: Polled Mailbox Command (0x8) > Timeout (100000us) > Jun 25 17:18:36 host kernel: isp0: Board Type 2422, Chip Revision > 0x3, loaded F/W Revision 4.0.20 > > I've been using a FC disk array, and seems to work. However, to my > astonishment, when I have connected this to a HP EVA4400 SAN, via > one of its FC switches (supposed to be a Brocade) the EVA4400 takes > the controller I was reaching via FC offline! Quite suprising. > > I've checked the switch, and indeed it correctly detects the card's > WWN attached to the port. But other than that I'm clueless. Of > course HP says that FreeBSD isn't among the supported systems. Of > course I say that I'm not very fond of a subsystem that can crash > due to a misconfigured host, if we accept that the FreeBSDīs > driver is to blame... > > Any ideas? I've activated some debugging flags for the isp adapter, > I'm using ispfw as well, and this is what I'm seeing: > > %fgrep isp0 mensajes1 > Jun 25 17:18:36 host kernel: isp0: Adapter> port 0xdc00-0xdcff mem 0xfc4bc000-0xfc4bffff irq 16 at > device 0.0 on pci10 > Jun 25 17:18:36 host kernel: isp0: [ITHREAD] > Jun 25 17:18:36 host kernel: isp0: Polled Mailbox Command (0x8) > Timeout (100000us) > Jun 25 17:18:36 host kernel: isp0: Board Type 2422, Chip Revision > 0x3, loaded F/W Revision 4.0.20 > Jun 26 09:28:53 host kernel: isp0: Adapter> port 0xdc00-0xdcff mem 0xfc4bc000-0xfc4bffff irq 16 at > device 0.0 on pci10 > Jun 26 09:28:53 host kernel: isp0: [ITHREAD] > Jun 26 09:28:53 host kernel: isp0: Polled Mailbox Command (0x8) > Timeout (100000us) > Jun 26 09:28:53 host kernel: isp0: Board Type 2422, Chip Revision > 0x3, loaded F/W Revision 4.0.20 > Jun 26 09:51:36 host kernel: isp0: Adapter> port 0xdc00-0xdcff mem 0xfc4bc000-0xfc4bffff irq 16 at > device 0.0 on pci10 > Jun 26 09:51:36 host kernel: isp0: set PCI latency to 64 > Jun 26 09:51:36 host kernel: isp0: [ITHREAD] > Jun 26 09:51:36 host kernel: isp0: Polled Mailbox Command (0x8) > Timeout (100000us) > Jun 26 09:51:36 host kernel: isp0: Board Type 2422, Chip Revision > 0x3, loaded F/W Revision 4.0.20 > Jun 26 09:51:36 host kernel: isp0: 2K Logins Supported > Jun 26 09:51:36 host kernel: isp0: 4096 max I/O command limit set > Jun 26 09:51:36 host kernel: isp0: line 1220: markportdb > Jun 26 09:51:36 host kernel: isp0: Starting Initial Loop Down Timer > Jun 26 09:51:36 host kernel: isp0: line 5346: markportdb > Jun 26 09:51:36 host kernel: isp0: line 5284: markportdb > Jun 26 09:51:36 host kernel: isp0: line 5320: markportdb > Jun 26 09:51:36 host kernel: isp0: line 5358: markportdb > Jun 26 09:51:36 host kernel: isp0: Stopping Loop Down Timer > Jun 26 09:51:36 host kernel: isp0: line 5358: markportdb > Jun 26 09:51:36 host kernel: isp0: line 5358: markportdb > Jun 26 09:51:36 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:51:36 host kernel: isp0: FC Link Test Entry > Jun 26 09:51:36 host kernel: isp0: line 2473: markportdb > Jun 26 09:51:36 host kernel: isp0: Firmware State Wait->Ready> Jun 26 09:51:36 host kernel: isp0: Register FC4 Type > accepted Jun 26 09:51:36 host kernel: isp0: HBA PortID 0x0103ef > N-Port Handle 0, Connection Topology 'FL Port' > Jun 26 09:51:36 host kernel: isp0: HBA WWNN 0x2000001b32886ad8 HBA > WWPN 0x2100001b32886ad8 > Jun 26 09:51:36 host kernel: isp0: FC Link Test Complete > Jun 26 09:51:36 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:51:36 host kernel: isp0: FC Scan Fabric > Jun 26 09:51:36 host kernel: isp0: got 3 ports back from name > server Jun 26 09:51:36 host kernel: isp0: Checking Fabric Port > 0x010000 Jun 26 09:51:36 host kernel: isp0: Fabric Port 0x010000 is > New Entry Jun 26 09:51:36 host kernel: isp0: Checking Fabric Port > 0x010100 Jun 26 09:51:36 host kernel: isp0: Fabric Port 0x010100 is > New Entry Jun 26 09:51:36 host kernel: isp0: skip ourselves @ > PortID 0x0103ef Jun 26 09:51:36 host kernel: isp0: FC Scan Fabric > Done > Jun 26 09:51:36 host kernel: isp0: Synchronizing PDBs > Jun 26 09:51:36 host kernel: isp0: PortID 0x010000 handle 0x81 role > Target arrived at tgt 0 > Jun 26 09:51:36 host kernel: isp0: PortID 0x010100 handle 0x82 role > Target arrived at tgt 1 > Jun 26 09:51:36 host kernel: isp0: PortID 0xfffffe handle 0x7fe > role (none) stayed > Jun 26 09:51:36 host kernel: isp0: isp_kthread: FC state OK > Jun 26 09:51:36 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:51:36 host kernel: isp0: isp_kthread: sleep time 0 > Jun 26 09:51:36 host kernel: isp0: line 5368: markportdb > Jun 26 09:51:36 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:51:36 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:51:36 host kernel: isp0: line 5368: markportdb > Jun 26 09:51:36 host kernel: isp0: line 2938: markportdb > Jun 26 09:51:36 host kernel: isp0: isp_fc_runstate: scan loop fails > Jun 26 09:51:36 host kernel: isp0: kthread: FC got to 2 (down count > 0) Jun 26 09:51:36 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:51:36 host kernel: isp0: isp_kthread: sleep time 1 Jun 26 > 09:51:36 host kernel: isp0: isp_kthread: checking FC state Jun 26 > 09:51:36 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:51:36 host kernel: isp0: FC Scan Fabric > Jun 26 09:51:36 host kernel: isp0: got 1 ports back from name > server Jun 26 09:51:36 host kernel: isp0: skip ourselves @ PortID > 0x0103ef Jun 26 09:51:36 host kernel: isp0: FC Scan Fabric Done > Jun 26 09:51:36 host kernel: isp0: Synchronizing PDBs > Jun 26 09:51:36 host kernel: isp0: starting Gone Device Timer > Jun 26 09:51:36 host kernel: isp0: PortID 0x010000 handle 0x81 role > Target gone zombie at tgt 0 > Jun 26 09:51:36 host kernel: isp0: PortID 0x010100 handle 0x82 role > Target gone zombie at tgt 1 > Jun 26 09:51:36 host kernel: isp0: PortID 0xfffffe handle 0x7fe > role (none) stayed > Jun 26 09:51:36 host kernel: isp0: isp_kthread: FC state OK > Jun 26 09:51:36 host kernel: isp0: isp_kthread: sleep time 0 > Jun 26 09:51:36 host kernel: isp0: PortID 0x010000 Departed from > Target 0 because of Gone Device Timeout > Jun 26 09:51:36 host kernel: isp0: PortID 0x010100 Departed from > Target 1 because of Gone Device Timeout > Jun 26 09:51:36 host kernel: isp0: stopping Gone Device Timer > Jun 26 09:51:36 host kernel: (probe0:isp0:0:0:0): inquiry data > fails comparison at DV1 step > Jun 26 09:51:36 host kernel: isp0: command timed out for 0.1.0 > Jun 26 09:51:36 host kernel: (probe1:isp0:0:1:0): inquiry data > fails comparison at DV1 step > Jun 26 09:52:12 host kernel: isp0: line 5358: markportdb > Jun 26 09:52:12 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:52:12 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:52:12 host kernel: isp0: FC Scan Fabric > Jun 26 09:52:12 host kernel: isp0: got 1 ports back from name > server Jun 26 09:52:12 host kernel: isp0: skip ourselves @ PortID > 0x0103ef Jun 26 09:52:12 host kernel: isp0: FC Scan Fabric Done > Jun 26 09:52:12 host kernel: isp0: Synchronizing PDBs > Jun 26 09:52:12 host kernel: isp0: PortID 0xfffffe handle 0x7fe > role (none) stayed > Jun 26 09:52:12 host kernel: isp0: isp_kthread: FC state OK > Jun 26 09:52:12 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:52:12 host kernel: isp0: isp_kthread: sleep time 0 > Jun 26 09:54:22 host kernel: isp0: line 5368: markportdb > Jun 26 09:54:22 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:54:22 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:54:22 host kernel: isp0: line 5368: markportdb > Jun 26 09:54:22 host kernel: isp0: line 2938: markportdb > Jun 26 09:54:22 host kernel: isp0: isp_fc_runstate: scan loop fails > Jun 26 09:54:22 host kernel: isp0: kthread: FC got to 2 (down count > 0) Jun 26 09:54:22 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:54:22 host kernel: isp0: isp_kthread: sleep time 1 Jun 26 > 09:54:23 host kernel: isp0: isp_kthread: checking FC state Jun 26 > 09:54:23 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:54:23 host kernel: isp0: FC Scan Fabric > Jun 26 09:54:23 host kernel: isp0: got 2 ports back from name > server Jun 26 09:54:23 host kernel: isp0: Checking Fabric Port > 0x010000 Jun 26 09:54:23 host kernel: isp0: Fabric Port 0x010000 is > New Entry Jun 26 09:54:23 host kernel: isp0: skip ourselves @ > PortID 0x0103ef Jun 26 09:54:23 host kernel: isp0: FC Scan Fabric > Done > Jun 26 09:54:23 host kernel: isp0: Synchronizing PDBs > Jun 26 09:54:23 host kernel: isp0: PortID 0x010000 handle 0x81 role > Target arrived at tgt 0 > Jun 26 09:54:23 host kernel: isp0: PortID 0xfffffe handle 0x7fe > role (none) stayed > Jun 26 09:54:23 host kernel: isp0: isp_kthread: FC state OK > Jun 26 09:54:23 host kernel: isp0: isp_kthread: sleep time 0 > Jun 26 09:54:23 host kernel: isp0: line 5368: markportdb > Jun 26 09:54:23 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:54:23 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:54:23 host kernel: isp0: FC Scan Fabric > Jun 26 09:54:23 host kernel: isp0: got 2 ports back from name > server Jun 26 09:54:23 host kernel: isp0: Checking Fabric Port > 0x010000 Jun 26 09:54:23 host kernel: isp0: Fabric Port 0x010000 > Now Pending Valid > Jun 26 09:54:23 host kernel: isp0: skip ourselves @ PortID 0x0103ef > Jun 26 09:54:23 host kernel: isp0: FC Scan Fabric Done > Jun 26 09:54:23 host kernel: isp0: Synchronizing PDBs > Jun 26 09:54:23 host kernel: isp0: PortID 0x010000 handle 0x81 role > Target stayed at tgt 0 > Jun 26 09:54:23 host kernel: isp0: PortID 0xfffffe handle 0x7fe > role (none) stayed > Jun 26 09:54:23 host kernel: isp0: isp_kthread: FC state OK > Jun 26 09:54:23 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:54:23 host kernel: isp0: isp_kthread: sleep time 0 > Jun 26 09:54:39 host kernel: isp0: line 5368: markportdb > Jun 26 09:54:39 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:54:39 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:54:39 host kernel: isp0: FC Scan Fabric > Jun 26 09:54:39 host kernel: isp0: got 1 ports back from name > server Jun 26 09:54:39 host kernel: isp0: skip ourselves @ PortID > 0x0103ef Jun 26 09:54:39 host kernel: isp0: FC Scan Fabric Done > Jun 26 09:54:39 host kernel: isp0: Synchronizing PDBs > Jun 26 09:54:39 host kernel: isp0: starting Gone Device Timer > Jun 26 09:54:39 host kernel: isp0: PortID 0x010000 handle 0x81 role > Target gone zombie at tgt 0 > Jun 26 09:54:39 host kernel: isp0: PortID 0xfffffe handle 0x7fe > role (none) stayed > Jun 26 09:54:39 host kernel: isp0: isp_kthread: FC state OK > Jun 26 09:54:39 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:54:39 host kernel: isp0: isp_kthread: sleep time 0 > Jun 26 09:54:39 host kernel: isp0: mailbox cmd (0x4001) with no > waiters Jun 26 09:55:08 host kernel: isp0: PortID 0x010000 Departed > from Target 0 because of Gone Device Timeout > Jun 26 09:55:08 host kernel: isp0: stopping Gone Device Timer > Jun 26 09:55:09 host kernel: (probe0:isp0:0:0:0): inquiry data > fails comparison at DV1 step > Jun 26 09:58:18 host kernel: isp0: line 5368: markportdb > Jun 26 09:58:18 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:58:18 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:58:18 host kernel: isp0: line 5368: markportdb > Jun 26 09:58:18 host kernel: isp0: line 2938: markportdb > Jun 26 09:58:18 host kernel: isp0: isp_fc_runstate: scan loop fails > Jun 26 09:58:18 host kernel: isp0: kthread: FC got to 2 (down count > 0) Jun 26 09:58:18 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:58:18 host kernel: isp0: isp_kthread: sleep time 1 Jun 26 > 09:58:19 host kernel: isp0: line 5368: markportdb > Jun 26 09:58:19 host kernel: isp0: isp_kthread: checking FC state > Jun 26 09:58:19 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:58:19 host kernel: isp0: line 5368: markportdb > Jun 26 09:58:19 host kernel: isp0: line 2938: markportdb > Jun 26 09:58:19 host kernel: isp0: isp_fc_runstate: scan loop fails > Jun 26 09:58:19 host kernel: isp0: kthread: FC got to 2 (down count > 1) Jun 26 09:58:19 host kernel: isp0: isp_kthread: releasing simq > Jun 26 09:58:19 host kernel: isp0: isp_kthread: sleep time 1 Jun 26 > 09:58:20 host kernel: isp0: isp_kthread: checking FC state Jun 26 > 09:58:20 host kernel: isp0: FC scan loop 0..125 > Jun 26 09:58:20 host kernel: isp0: FC Scan Fabric > Jun 26 09:58:20 host kernel: isp0: got 3 ports back from name > server Jun 26 09:58:20 host kernel: isp0: Checking Fabric Port > 0x010000 Jun 26 09:58:20 host kernel: isp0: Fabric Port 0x010000 is > New Entry Jun 26 09:58:20 host kernel: isp0: Checking Fabric Port > 0x010100 Jun 26 09:58:20 host kernel: isp0: Fabric Port 0x010100 is > New Entry Jun 26 09:58:20 host kernel: isp0: skip ourselves @ > PortID 0x0103ef Jun 26 09:58:20 host kernel: isp0: FC Scan Fabric > Done > Jun 26 09:58:20 host kernel: isp0: Synchronizing PDBs > Jun 26 09:58:20 host kernel: isp0: PortID 0x010000 handle 0x81 role > Target arrived at tgt 0 > Jun 26 09:58:20 host kernel: isp0: PortID 0x010100 handle 0x82 role > (none) arrived > Jun 26 09:58:20 host kernel: isp0: PortID 0xfffffe handle 0x7fe > role (none) stayed > Jun 26 09:58:20 host kernel: isp0: isp_kthread: FC state OK > Jun 26 09:58:20 host kernel: isp0: isp_kthread: sleep time 0 > % It may be a long shot but can you try the latest isp(4) driver? ftp://ftp.feral.com/pub/isp/isp_dist.tgz You also need to patch cam and ispfw. You can find the patches in the tarball, i.e., freebsd/isp_freebsd.diffs.gz. Jung-uk Kim