kernel trap 12

Matthew Dillon dillon at apollo.backplane.com
Fri Jul 18 23:34:06 PDT 2003


:from dmesg
:
:acd1: CD-RW <SONY CD-RW CRX175E> at ata1-slave PIO4
:Mounting root from ufs:/dev/ad0s3a
:kernel trap 12 with interrupts disabled
:kernel trap 12 with interrupts disabled
:kernel trap 12 with interrupts disabled
:kernel trap 12 with interrupts disabled
:kernel trap 12 with interrupts disabled
:
:
:I'm not sure what this means or where it comes from,
:but I thought I would point it out as well. However the
:system comes up and operates normally.
:
:Robert Garrett

    The kernel is accessing data from userspace via subyte() and taking
    a page fault with interrupts disabled.  It's during the start_init()
    code and occurs because I threw a CLI in fork_trampoline that doesn't
    need to be there.  It's harmless.

    Here's a patch that removes the CLI. I'll commit this tomorrow after
    I make sure SMP doesn't hicup on it.  

					-Matt
					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>

Index: i386/i386/exception.s
===================================================================
RCS file: /cvs/src/sys/i386/i386/exception.s,v
retrieving revision 1.14
diff -u -r1.14 exception.s
--- i386/i386/exception.s	12 Jul 2003 17:54:32 -0000	1.14
+++ i386/i386/exception.s	19 Jul 2003 06:28:07 -0000
@@ -314,12 +314,8 @@
  *
  * The MP lock is held on entry, but for processes fork_return(esi)
  * releases it.  'doreti' always runs without the MP lock.
- *
- * I'm not sure the cli is necessary but I am not taking any chances in
- * regards to the init code.
  */
 ENTRY(fork_trampoline)
-	cli
 	movl	PCPU(curthread),%eax
 	subl	$TDPRI_CRIT,TD_PRI(%eax)
 





More information about the Bugs mailing list