From owner-freebsd-scsi@FreeBSD.ORG Thu Oct 6 16:03:03 2011 Return-Path: Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E82BA106566C for ; Thu, 6 Oct 2011 16:03:03 +0000 (UTC) (envelope-from aboyer@averesystems.com) Received: from zimbra.averesystems.com (75-149-8-245-Pennsylvania.hfc.comcastbusiness.net [75.149.8.245]) by mx1.freebsd.org (Postfix) with ESMTP id BA6638FC08 for ; Thu, 6 Oct 2011 16:03:03 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by zimbra.averesystems.com (Postfix) with ESMTP id 298018BC002; Thu, 6 Oct 2011 11:43:52 -0400 (EDT) X-Virus-Scanned: amavisd-new at averesystems.com Received: from zimbra.averesystems.com ([127.0.0.1]) by localhost (zimbra.averesystems.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9ncP9KZ9qoxZ; Thu, 6 Oct 2011 11:43:50 -0400 (EDT) Received: from [10.0.1.192] (fw.arriad.com [10.0.0.16]) by zimbra.averesystems.com (Postfix) with ESMTPSA id 8A3498BC001; Thu, 6 Oct 2011 11:43:50 -0400 (EDT) From: Andrew Boyer Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Date: Thu, 6 Oct 2011 11:43:38 -0400 Message-Id: To: freebsd-scsi@freebsd.org, Matthew Jacob Mime-Version: 1.0 (Apple Message framework v1084) X-Mailer: Apple Mail (2.1084) Cc: Subject: Initialization timeouts in MPT driver 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: Thu, 06 Oct 2011 16:03:04 -0000 When using mpt with a 1068e, a bad SATA SSD can prevent all other SATA = drives from being recognized. It takes about 45s for the controller to = respond to the IOC initialization request with a bad drive installed, = but the timeout for SAS controllers is 30s. > mpt0: port 0x5000-0x50ff mem = 0xd9610000-0xd9613fff,0xd9600000-0xd960ffff irq 54 at device 0.0 on pci9 > mpt0: [ITHREAD] > mpt0: MPI Version=3D1.5.20.0 > mpt0: Firmware version=3D1.30 > mpt0: mpt_wait_req(6) timed out > mpt0: port 0 enable timed out > mpt0: mpt_enable_ioc: failed to enable port 0 > mpt0: unable to initialize IOC The IOC initialization timeouts on linux are ten times as long as in BSD = (300 or 30 seconds vs 30 or 3 seconds), and linux is able to see all of = the good drives. Changing the mpt timeouts to match linux allows = freebsd to see the good drives, too. Thoughts? -Andrew Index: sys/dev/mpt/mpt.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/dev/mpt/mpt.c (revision 226063) +++ sys/dev/mpt/mpt.c (working copy) @@ -2084,7 +2084,7 @@ =20 mpt_send_cmd(mpt, req); error =3D mpt_wait_req(mpt, req, REQ_STATE_DONE, REQ_STATE_DONE, - FALSE, (mpt->is_sas || mpt->is_fc)? 30000 : 3000); + FALSE, (mpt->is_sas || mpt->is_fc)? 300000 : 30000); if (error !=3D 0) { mpt_prt(mpt, "port %d enable timed out\n", port); return (-1); -------------------------------------------------- Andrew Boyer aboyer@averesystems.com