Source-Changes-HG archive

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

[src/trunk]: src/sys/arch/atari/atari Make sure interrupts are disabled durin...



details:   https://anonhg.NetBSD.org/src/rev/855c1c5ce231
branches:  trunk
changeset: 841193:855c1c5ce231
user:      tsutsui <tsutsui%NetBSD.org@localhost>
date:      Fri May 03 01:08:28 2019 +0000

description:
Make sure interrupts are disabled during cpu_configure(9).

Fixes 'panic: kernel diagnostic assertion "cv_is_valid(cv)" failed'
during fdcisa(4) probe on Milan's DIAGNOSTIC kernel, caused by
a stray interrupt from the FDC right after isa_intr_establish().
No visible bad side effect on TT030 with this change.

Should be pulled up to netbsd-8.

diffstat:

 sys/arch/atari/atari/autoconf.c |  8 ++++++--
 sys/arch/atari/atari/locore.s   |  4 +---
 2 files changed, 7 insertions(+), 5 deletions(-)

diffs (51 lines):

diff -r 1623457b9fbe -r 855c1c5ce231 sys/arch/atari/atari/autoconf.c
--- a/sys/arch/atari/atari/autoconf.c   Thu May 02 23:07:40 2019 +0000
+++ b/sys/arch/atari/atari/autoconf.c   Fri May 03 01:08:28 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: autoconf.c,v 1.65 2014/03/24 18:39:57 christos Exp $   */
+/*     $NetBSD: autoconf.c,v 1.66 2019/05/03 01:08:28 tsutsui Exp $    */
 
 /*
  * Copyright (c) 1995 Leo Weppelman
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.65 2014/03/24 18:39:57 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.66 2019/05/03 01:08:28 tsutsui Exp $");
 
 #include "opt_md.h"
 
@@ -73,10 +73,14 @@
 
        atari_realconfig = 1;
 
+       (void)splhigh();
+
        init_sicallback();
 
        if (config_rootfound("mainbus", __UNCONST("mainbus")) == NULL)
                panic("no mainbus found");
+
+       (void)spl0();
 }
 
 void
diff -r 1623457b9fbe -r 855c1c5ce231 sys/arch/atari/atari/locore.s
--- a/sys/arch/atari/atari/locore.s     Thu May 02 23:07:40 2019 +0000
+++ b/sys/arch/atari/atari/locore.s     Fri May 03 01:08:28 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: locore.s,v 1.113 2019/03/19 20:30:05 thorpej Exp $     */
+/*     $NetBSD: locore.s,v 1.114 2019/05/03 01:08:28 tsutsui Exp $     */
 
 /*
  * Copyright (c) 1988 University of Utah.
@@ -1000,8 +1000,6 @@
        /*
         * Final setup for C code
         */
-       movw    #PSL_LOWIPL,%sr         |  lower SPL
-
 #ifdef notdef
        movl    %d6,_C_LABEL(bootdev)   |    and boot device
 #endif



Home | Main Index | Thread Index | Old Index