summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Passe <fsmp@FreeBSD.org>1997-12-08 18:36:02 +0000
committerSteve Passe <fsmp@FreeBSD.org>1997-12-08 18:36:02 +0000
commita39e666dbc6b459d398c44e8c4eabde5b55f390e (patch)
treeacecf74b23ce7ec442589689c016462e302c43e8
parentf8b013e208eaff68c72ad240022e09420a5b9385 (diff)
Notes
-rw-r--r--sys/i386/i386/mpapic.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/sys/i386/i386/mpapic.c b/sys/i386/i386/mpapic.c
index db7b56bce3c9..ef733d348567 100644
--- a/sys/i386/i386/mpapic.c
+++ b/sys/i386/i386/mpapic.c
@@ -22,7 +22,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: mpapic.c,v 1.27 1997/08/21 04:53:27 smp Exp smp $
+ * $Id: mpapic.c,v 1.26 1997/08/21 05:08:25 fsmp Exp $
*/
#include "opt_smp.h"
@@ -462,8 +462,21 @@ apic_ipi(int dest_type, int vector, int delivery_mode)
if ((lapic.icr_lo & APIC_DELSTAT_MASK) == 0)
break;
}
+#ifdef needsattention
+/*
+ * XXX FIXME:
+ * The above loop waits for the message to actually be delivered.
+ * It breaks out after an arbitrary timout on the theory that it eventually
+ * will be delivered and we will catch a real failure on the next entry to
+ * this function, which would panic().
+ * We could skip this wait entirely, EXCEPT it probably protects us from
+ * other "less robust" routines that assume the message was delivered and
+ * acted upon when this function returns. TLB shootdowns are one such
+ * "less robust" function.
+ */
if (x == 0)
printf("apic_ipi might be stuck\n");
+#endif
#undef MAX_SPIN2
#undef MAX_SPIN1
#else