Date: Sat, 11 Nov 2000 03:56:21 -0600 From: "Michael C . Wu" <keichii@iteration.net> To: John Baldwin <jhb@FreeBSD.org> Cc: Matthew Jacob <mjacob@feral.com>, alpha@FreeBSD.org, Andrew Gallatin <gallatin@cs.duke.edu> Subject: Re: Does your Alpha run a SMPng kernel? Message-ID: <20001111035621.J93151@peorth.iteration.net> In-Reply-To: <XFMail.001110113530.jhb@FreeBSD.org>; from jhb@FreeBSD.org on Fri, Nov 10, 2000 at 11:35:30AM -0800 References: <Pine.BSF.4.21.0011101005500.83354-100000@beppo.feral.com> <XFMail.001110113530.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 10, 2000 at 11:35:30AM -0800, John Baldwin scribbled: | On 10-Nov-00 Matthew Jacob wrote: | > On Fri, 10 Nov 2000, Andrew Gallatin wrote: | >> John Baldwin writes: | >> > Have any clues as to where it is hanging? One thing that may help is | >> > that I | >> This is the "one device goes south but everything else is happy" sort | >> of problem I was complaining about last week. | >> | >> My UP1000 running today's -current just wedged while I was rcp'ing a | >> large file to it over a 100Mb link. It's busy speweing "fxp0: device | >> timeout" Everything but the nic seems happy. (But since I'm running | >> with NIS and NFS, loosing the nic is fatal) | > 'ata' timeouts occur with abandon during probing PC164 or on XP1000. | ata timeouts are due to the interrupt either not arriving or the interrupt | being ignored due to other weirdness. Try adding some printf()'s into the ata | interrupt handler to see if it gets called and how far it gets if it does get | called. The fxp timeouts are definitely due to no interrupts as well. If you | look below, neither the fxp0 or swi:net interrupt threads are runnable, but are | stuck in SWAIT instead. | >> getting a clock interrupt in the middle of doing some low-level | >> should-be-atomic timing-dependant I/O operations in either the driver | >> or the I/O support routines? | >> | >> Remember that on the UP1000, everything goes through the isa interrupt | >> controller. | | So you get some interrupts and then they stop. On the x86 we do a | disable/enable interrupt scheme for ISA interrupts by dinking with the PIC, so | Matt's suggestion to use isa_enable_intr()/isa_disable_intr() might be needed | actually. (see hte INTREN() call in ithd_loop() in i386/isa/ithread.c) | Actually, it looks like we wait too long to enable the interrupt sources on the | x86. However, using the isa_enable/disable_intr() stuff that Matt suggested | might help. Soren has freebsd.dk/pub/ATA patches online if you wish to try. -- +------------------------------------------------------------------+ | keichii@peorth.iteration.net | keichii@bsdconspiracy.net | | http://peorth.iteration.net/~keichii | Yes, BSD is a conspiracy. | +------------------------------------------------------------------+ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20001111035621.J93151>