DragonFly BSD
DragonFly bugs List (threaded) for 2003-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: kernel trap 12


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 18 Jul 2003 23:32:07 -0700 (PDT)

: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@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)
 



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