Date: Mon, 11 Nov 2002 20:47:23 +0100 From: Thomas Moestl <tmoestl@gmx.net> To: Gavin Atkinson <gavin@ury.york.ac.uk> Cc: sparc@freebsd.org Subject: Re: Reproducable panic on Ultra 5 Message-ID: <20021111194723.GB308@crow.dom2ip.de> In-Reply-To: <Pine.BSF.4.33.0211111859060.53225-100000@ury.york.ac.uk> References: <Pine.BSF.4.33.0211111859060.53225-100000@ury.york.ac.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
--aVD9QWMuhilNxW9f Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, 2002/11/11 at 19:16:03 +0000, Gavin Atkinson wrote: > > Hi, > > I can reliably panic my Ultra 5 by simply pressing the front power button. > > Power Failure Detected: Shutting down NOW. > panic: blockable sleep lock (sleep mutex) process lock @ /usr/src/sys/kern/kern_shutdown.c:190 > cpuid = 0; > Debugger("panic") > Stopped at Debugger+0x1c: ta %xcc, 1 > db> trace > panic() at panic+0x134 > witness_lock() at witness_lock+0x90 > _mtx_lock_flags() at _mtx_lock_flags+0x100 > shutdown_nice() at shutdown_nice+0x28 > psycho_powerfail() at psycho_powerfail+0x10 > intr_fast() at intr_fast+0x4c > [...] Can you please test whether the attached patch fixes that? Thanks, - Thomas -- Thomas Moestl <tmoestl@gmx.net> http://www.tu-bs.de/~y0015675/ <tmm@FreeBSD.org> http://people.FreeBSD.org/~tmm/ PGP fingerprint: 1C97 A604 2BD0 E492 51D0 9C0F 1FE6 4F1D 419C 776C --aVD9QWMuhilNxW9f Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="pwrfail.diff" Index: sys/sparc64/pci/psycho.c =================================================================== RCS file: /d/ncvs/src/sys/sparc64/pci/psycho.c,v retrieving revision 1.17 diff -u -r1.17 psycho.c --- sys/sparc64/pci/psycho.c 7 Nov 2002 16:07:46 -0000 1.17 +++ sys/sparc64/pci/psycho.c 11 Nov 2002 19:43:09 -0000 @@ -238,6 +239,12 @@ * * We really should attach handlers for each. */ +#ifdef DEBUGGER_ON_POWERFAIL +#define PSYCHO_PWRFAIL_INT_FLAGS INTR_FAST +#else +#define PSYCHO_PWRFAIL_INT_FLAGS 0 +#endif + #define OFW_PCI_TYPE "pci" struct psycho_desc { @@ -502,8 +509,8 @@ psycho_set_intr(sc, 1, dev, PSR_CE_INT_MAP, 0, psycho_ce); psycho_set_intr(sc, 2, dev, PSR_PCIAERR_INT_MAP, INTR_FAST, psycho_bus_a); - psycho_set_intr(sc, 4, dev, PSR_POWER_INT_MAP, INTR_FAST, - psycho_powerfail); + psycho_set_intr(sc, 4, dev, PSR_POWER_INT_MAP, + PSYCHO_PWRFAIL_INT_FLAGS, psycho_powerfail); /* Psycho-specific initialization. */ if (sc->sc_mode == PSYCHO_MODE_PSYCHO) { /* --aVD9QWMuhilNxW9f-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-sparc" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021111194723.GB308>