From sysseh@devetir.qld.gov.au  Tue Apr 11 21:39:10 1995
Received: from bunyip.cc.uq.oz.au (bunyip.cc.uq.oz.au [130.102.2.1])
          by freefall.cdrom.com (8.6.10/8.6.6) with SMTP id VAA26941
          for <FreeBSD-gnats-submit@freebsd.org>; Tue, 11 Apr 1995 21:39:01 -0700
Received: from cc.uq.oz.au by bunyip.cc.uq.oz.au 
          id <27992-0@bunyip.cc.uq.oz.au>; Wed, 12 Apr 1995 14:28:29 +1000
Received: from netfl15a.devetir.qld.gov.au 
          by pandora.devetir.qld.gov.au (8.6.10/DEVETIR-E0.3a) with ESMTP 
          id OAA16398 
          for <FreeBSD-gnats-submit%freebsd.org@pandora.devetir.qld.gov.au>;
          Wed, 12 Apr 1995 14:32:00 +1000
Received: from localhost by netfl15a.devetir.qld.gov.au (8.6.8.1/DEVETIR-0.1) 
          id EAA12627 
          for <FreeBSD-gnats-submit%freebsd.org@pandora.devetir.qld.gov.au>;
          Wed, 12 Apr 1995 04:29:46 GMT
Message-Id: <199504120429.EAA12627@netfl15a.devetir.qld.gov.au>
Date: Wed, 12 Apr 1995 14:29:44 +1000
From: Stephen Hocking <sysseh@devetir.qld.gov.au>
Sender: sysseh@devetir.qld.gov.au
Reply-To: sysseh@devetir.qld.gov.au
To: FreeBSD-gnats-submit%freebsd.org@devetir.qld.gov.au
Subject: Seagate code hangs on bootup.
X-Send-Pr-Version: 3.2

>Number:         337
>Category:       i386
>Synopsis:       seagate controller code hangs on boot.
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    freebsd-bugs (FreeBSD bugs mailing list)
>State:          closed
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Apr 11 21:40:02 1995
>Closed-Date:    Mon Jul 17 05:10:17 PDT 1995
>Last-Modified:
>Originator:     Stephen Hocking
>Release:        FreeBSD 2.1.0-Development i386
>Organization:
DEVETIR
>Environment:

	FreeBSD-2.1-current src-cur.0500

	Hardware - 25MHz 386sx/386sx, 8Mb, S3911, TMC 885 SCSI controller,
        	WREN 6 harddrive "CDC 94191-15 0136"

>Description:

	On boot up, the machine hangs after identifying the controller, while
attempting to attach devices.

>How-To-Repeat:

	Get hold of appropriate hardware and boot.

>Fix:
	
	I had some success by making a bunch of variables volatile. However
this was still unstable and would usually start printing out timeouts
shortly after boot, if not during. This often had sad consequences for the
integrity of the filesystems. The final fix was to drag the source off the
2.0 CDROM and undefine SEA_BLINDTRANSFER and SEA_ASSEMBLER (at line 107 and
108 of /sys/i386/isa/seagate.c). It is slow, but at the moment it is partway
through a "make world" without complaining. This controller is at the moment
eating upto 50% of the CPU on interrupts, the rest mostly going on system
CPU. Why am I running this pile of canine ordure? My beloved Buslogic 542B
finally died after many years of service and I was desperate & cashless. The
Buslogic card would get by on 3-5% interrupt CPU, some system time (mostly
fs code) leaving plenty of idle CPU for other things. It could drive the
disk at platter speed, the seagate only manages about 30% (if that).


        I do not speak for the Worker's Compensation Board of Queensland -
                     They don't pay me enough for that!

>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed 
State-Changed-By: peter 
State-Changed-When: Mon Jul 17 05:10:17 PDT 1995 
State-Changed-Why:  
Closed after the author's enhancements to seagate.c were committed, and he 
reports the problem fixed.  Thanks Stephen! 
>Unformatted:



