Date: Sun, 23 May 2010 02:31:37 +0000 (UTC) From: Nathan Whitehorn <nwhitehorn@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/powerpc/aim ofw_machdep.c Message-ID: <201005230231.o4N2VtJF050258@repoman.freebsd.org>
index | next in thread | raw e-mail
nwhitehorn 2010-05-23 02:31:37 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_8)
sys/powerpc/aim ofw_machdep.c
Log:
SVN rev 208429 on 2010-05-23 02:31:37Z by nwhitehorn
MFC r205497,208364,208405:
Fix a long-standing bug in the PowerPC OFW call function on SMP machines
by forcing all secondary CPUs into a busy wait with interrupts off during
the call. This bug caused ofwdump -a to hang the system.
Following section 8.4 of the Open Firmware PowerPC processor binding,
the firmware is free to overwrite the system interrupt handlers during
OF calls, restoring the OS handlers on exit. On single CPU systems, this
process is invisible to the operating system. On multiple CPU systems,
taking any exception on a secondary CPU while an OF call is in progress
ends with that exception vectored into OF, resulting in a slow movement
of the entire system into firmware context and a machine hang.
Revision Changes Path
1.24.2.4 +57 -4 src/sys/powerpc/aim/ofw_machdep.c
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201005230231.o4N2VtJF050258>
