Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/cddl/osnet/dev/dtrace/amd64 dtrace_trap() gets call...



details:   https://anonhg.NetBSD.org/src/rev/b5a751b1b99d
branches:  trunk
changeset: 460895:b5a751b1b99d
user:      hannken <hannken%NetBSD.org@localhost>
date:      Fri Nov 08 11:06:21 2019 +0000

description:
dtrace_trap() gets called from alltraps() -> trap() with interrupts enabled
so we cannot assert for interrupts disabled here.

Should fix PR kern/54603: kernel panic when running dtruss

diffstat:

 external/cddl/osnet/dev/dtrace/amd64/dtrace_subr.c |  6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diffs (21 lines):

diff -r 99101fff3d38 -r b5a751b1b99d external/cddl/osnet/dev/dtrace/amd64/dtrace_subr.c
--- a/external/cddl/osnet/dev/dtrace/amd64/dtrace_subr.c        Fri Nov 08 04:45:54 2019 +0000
+++ b/external/cddl/osnet/dev/dtrace/amd64/dtrace_subr.c        Fri Nov 08 11:06:21 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: dtrace_subr.c,v 1.13 2019/07/05 08:29:18 hannken Exp $ */
+/*     $NetBSD: dtrace_subr.c,v 1.14 2019/11/08 11:06:21 hannken Exp $ */
 
 /*
  * CDDL HEADER START
@@ -412,7 +412,11 @@
         */
        nofault = (cpu_core[cpuid].cpuc_dtrace_flags & CPU_DTRACE_NOFAULT) != 0;
        if (nofault) {
+#if 0
+               This assertion would always fire, we get called from
+               alltraps() -> trap() with interrupts enabled.
                KASSERTMSG((x86_read_flags() & PSL_I) == 0, "interrupts enabled");
+#endif
 
                /*
                 * There are only a couple of trap types that are expected.



Home | Main Index | Thread Index | Old Index