Date: Tue, 26 Jun 2001 08:40:08 -0600 From: "Justin T. Gibbs" <gibbs@scsiguy.com> To: Dave Cornejo <dave@dogwood.com> Cc: John Baldwin <jhb@FreeBSD.ORG>, freebsd-current@FreeBSD.ORG Subject: Re: SCSI hangs w/SuperMicro 6010H Message-ID: <200106261440.f5QEe8U17052@aslan.scsiguy.com> In-Reply-To: Your message of "Fri, 22 Jun 2001 23:23:49 PDT." <200106230623.f5N6Nna50591@white.dogwood.com>
next in thread | previous in thread | raw e-mail | index | archive | help
>John Baldwin wrote: >> Hrmm, perhaps you are getting an interrupt storm from ahc. Ok, try >> this: find the ahc driver's interrupt handler, and add a printf. >> Then see if the printf fires while the machine is hung. > >Ok, I put a printf in ahc_handle_seqint() and ahc_handle_scsiint(). That won't catch all interrupts. Most notably, you won't know if commands are completing. Command completions are much more prevalent than sequencer or scsi interrupts. >My current (freshly cvsupped sources) kernel with the printf()s in it >is pretty consistent in it's behavior: with SMP it hangs soon after >the 15 second SCSI delay and keystrokes will not cause it to continue >to boot. > >The order that they print out on the screen is this: > >message "Waiting 15 seconds for SCSI devices to settle" > >(approximately 15 second delay) > >26 times scsiint called with intstat = 0x4, status0 = 0, status = 0x88 > (SELTO & BUSFREE?) So 26 of the 30 possible target ID positions on the controller are empty. >2 times seqint called with instat = 0x71 (BAD_STATUS?) Two commands returned status other than 0 - most likely "check condition". >36 times seqint called with intstat = 0x61 (HOST_MSG_LOOP?) We negotiated transfer settings with some devices. These all seem quite normal. -- Justin To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200106261440.f5QEe8U17052>