From owner-freebsd-scsi@FreeBSD.ORG Sun Aug 12 09:30:14 2007 Return-Path: Delivered-To: freebsd-scsi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7C6EB16A4A7 for ; Sun, 12 Aug 2007 09:30:14 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 6E38913C45D for ; Sun, 12 Aug 2007 09:30:14 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.1/8.14.1) with ESMTP id l7C9UE7G071603 for ; Sun, 12 Aug 2007 09:30:14 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.1/8.14.1/Submit) id l7C9UEb2071600; Sun, 12 Aug 2007 09:30:14 GMT (envelope-from gnats) Date: Sun, 12 Aug 2007 09:30:14 GMT Message-Id: <200708120930.l7C9UEb2071600@freefall.freebsd.org> To: freebsd-scsi@FreeBSD.org From: Juergen Dankoweit Cc: Subject: Re: kern/114597: [sym] System hangs at SCSI bus reset with dual HBAs X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Juergen Dankoweit List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Aug 2007 09:30:14 -0000 The following reply was made to PR kern/114597; it has been noted by GNATS. From: Juergen Dankoweit To: bug-followup@FreeBSD.org, Juergen.Dankoweit@FreeBSD-Onkel.de Cc: Subject: Re: kern/114597: [sym] System hangs at SCSI bus reset with dual HBAs Date: Sun, 12 Aug 2007 11:08:21 +0200 Hello, after thinking how to solve this awful problem, I found this solution which works great. Here the code snippet /* Checking for sym-driver is disabled in the device.hints */ unit = device_get_unit(dev); if (resource_disabled("sym", unit)) { device_printf(dev, "sym_pci_probe: sym driver disabled\n"); return (ENXIO); } /* ------------------------------------------------------- */ It should be place in the following functions: ---------------------------------------------- line 8465: static int sym_pci_probe(device_t dev); line 8482: static int sym_pci_attach(device_t dev); What does it do: ---------------- It looks in the /boot/device.hints after the following entry: hints.sym.x.disabled="1" (where x = 0, 1, 2, ...) Why this solution: ------------------ The problem is that FreeBSD finds on some systems the LSI chips even if they are disabled by the BIOS. To suppress this I added this hint. Now it is possible to install FreeBSD on systems with LSI where the boot sequence hangs. So it is possible to use an other host adaptor like Adaptec or so. Conclusion: ----------- It is tested on several machines and it works great. It would be nice if this is in the next FreeBSD 7.0 snapshot. Best regards Juergen Dankoweit