Re: SMP turbulence: "kernel trap 12 with interrupts disabled"

From: Robert Watson <rwatson_at_freebsd.org>
Date: Sat, 26 Jun 2004 18:18:10 -0400 (EDT)
On Sat, 26 Jun 2004, David Wolfskill wrote:

> Daily builds of -STABLE & -CURRENT went fine today, both on (UP) laptop
> and SMP "build machine," but the subsequent boot of -CURRENT on the SMP
> machine didn't go so well -- even a single-user boot died thus: 

I ran into this also -- I got a panic when I hit a key on the serial
console, as that caused the sio intr to preempt the ACPI idle loop and
resulted in unhappiness somehow.  I found that when I disabled the tunable
that turns off HTT, it worked fine.  Likewise, if I used 4BSD it was fine.
It's unclear to me what the cause is.

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert_at_fledge.watson.org      Principal Research Scientist, McAfee Research


> 
> pci0: <display, VGA> at device 10.0 (no driver attached)
> pcm0: <CMedia CMI8738> port 0xc800-0xc8ff irq 17 at device 14.0 on pci0
> pcm0: Reserved 0x100 bytes for rid 0x10 type 4 at 0xc800
> pcm0: [MPSAFE]
> pcm0: sndbuf_setmap 201000, 4000; 0xd5509000 -> 201000
> pcm0: sndbuf_setmap 205000, 4000; 0xd550d000 -> 205000
> atapci0: <CMD 649 UDMA100 controller> port 0xdc00-0xdc0f,0xd800-0xd803,0xd400-0xd407,0xd000-0xd003,0xcc00-0xcc07 irq 18 at device 15.0 on pci0
> atapci0: Reserved 0x10 bytes for rid 0x20 type 4 at 0xdc00
> atapci0: [MPSAFE]
> atapci0: Reserved 0x8 bytes for rid 0x10 type 4 at 0xcc00
> atapci0: Reserved 0x4 bytes for rid 0x14 type 4 at 0xd000
> ata2: reset tp1 mask=03 ostat0=7f ostat1=7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2-slave:  stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata2: reset tp2 stat0=ff stat1=ff devices=0x0
> ata2: at 0xcc00 on atapci0
> ata2: [MPSAFE]
> atapci0: Reserved 0x8 bytes for rid 0x18 type 4 at 0xd400
> atapci0: Reserved 0x4 bytes for rid 0x1c type 4 at 0xd800
> ata3: reset tp1 mask=03 ostat0=7f ostat1=7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-master: stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3-slave:  stat=0x7f err=0x7f lsb=0x7f msb=0x7f
> ata3: reset tp2 stat0=ff stat1=ff devices=0x0
> ata3: at 0xd400 on atapci0
> ata3: [MPSAFE]
> isab0: <PCI-ISA bridge> at device 17.0 on pci0
> isa0: <ISA bus> on isab0
> atapci1: <VIA 8233 UDMA100 controller> port 0xe000-0xe00f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 17.1 on pci0
> atapci1: Reserved 0x10 bytes for rid 0x20 type 4 at 0xe000
> atapci1: Reserved 0x8 bytes for rid 0x10 type 4 at 0x1f0
> atapci1: Reserved 0x1 bytes for rid 0x14 type 4 at 0x3f6
> ata0: reset tp1 mask=03 ostat0=50 ostat1=00
> ata0-master: stat=0x50 err=0x01 lsb=0x00 msb=0x00
> ata0-slave:  stat=0x00 err=0x01 lsb=0x00 msb=0x00
> ata0: reset tp2 stat0=50 stat1=00 devices=0x1<ATA_MASTER>
> ata0: at 0x1f0 irq 14 on atapci1
> ata0: [MPSAFE]
> atapci1: Reserved 0x8 bytes for rid 0x18 type 4 at 0x170
> atapci1: Reserved 0x1 bytes for rid 0x1c type 4 at 0x376
> ata1: reset tp1 mask=03 ostat0=50 ostat1=01
> ata1-master: stat=0x00 err=0x01 lsb=0x14 msb=0xeb
> ata1-slave:  stat=0x00 err=0x04 lsb=0x00 msb=0x00
> ata1: reset tp2 stat0=00 stat1=00 devices=0x4<ATAPI_MASTER>
> ata1: at 0x170 irq 15 on atapci1
> ata1: [MPSAFE]
> fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on acpi0
> fdc0: FIFO enabled, 8 bytes threshold
> fd0: <1440-KB 3.5" drive> on fdc0 drive 0
> sio0: irq maps: 0x4041 0x4051 0x4041 0x4041
> sio0 port 0x3f8-0x3ff irq 4 on acpi0
> sio0: type 16550A, console
> kernel trap 12 with interrupts disabled
> 
> 
> Fatal trap 12: page fault while in kernel mode
> cpuid = 0; apic id = 00
> fault virtual address   = 0x144
> fault code              = supervisor read, page not present
> instruction pointer     = 0x8:0xc0624e84
> stack pointer           = 0x10:0xc0c21b80
> frame pointer           = 0x10:0xc0c21b90
> code segment            = base 0x0, limit 0xfffff, type 0x1b
>                         = DPL 0, pres 1, def32 1, gran 1
> processor eflags        = resume, IOPL = 0
> current process         = 0 (swapper)
> kernel: type 12 trap, code=0
> Stopped at      siointr1+0x138: cmpl    $0,0x144(%edx)
> db> 
> 
> Unloading today's kernel & booting from yesterday's works fine:  here's
> what I would have expected above:
> 
> ...[same as above]
> fdc0: FIFO enabled, 8 bytes threshold
> fd0: <1440-KB 3.5" drive> on fdc0 drive 0
> sio0: irq maps: 0x4041 0x4051 0x4041 0x4041
> sio0 port 0x3f8-0x3ff irq 4 on acpi0
> sio0: type 16550A, console
> sio1: irq maps: 0x4041 0x4049 0x4041 0x4041
> sio1 port 0x2f8-0x2ff irq 3 on acpi0
> sio1: type 16550A
> unknown: not probed (disabled)
> ppc0: using extended I/O port range
> ppc0: SPP
> ppc0 port 0xf78-0xf7b,0xb78-0xb7b,0x778-0x77b,0x378-0x37f irq 7 on acpi0
> ppc0: Generic chipset (NIBBLE-only) in NIBBLE mode
> ppbus0: <Parallel port bus> on ppc0
> plip0: <PLIP network interface> on ppbus0
> plip0: bpf attached
> ....[this goes on for a bit....]
> 
> Hmmm....  that "unknown: not probed (disabled)" looks a little
> suspicious.
> 
> The laptop seems OK:
> 
> g1-15(5.2-C)[1] uname -a
> FreeBSD g1-15.catwhisker.org 5.2-CURRENT FreeBSD 5.2-CURRENT #219: Sat Jun 26 09:54:11 PDT 2004     root_at_g1-15.catwhisker.org:/common/S3/obj/usr/src/sys/LAPTOP_30W  i386
> g1-15(5.2-C)[2] 
> 
> And here's a log showing the times I updated my local CVS repo:
> 
> freebeast(5.2-C)[1] tail /var/log/cvsup-history.log
> CVSup begin from cvsup14.freebsd.org at Thu Jun 24 03:47:02 PDT 2004
> CVSup ended from cvsup14.freebsd.org at Thu Jun 24 03:52:25 PDT 2004
> CVSup begin from cvsup12.freebsd.org at Fri Jun 25 01:47:15 PDT 2004
> CVSup ended from cvsup12.freebsd.org at Fri Jun 25 01:53:09 PDT 2004
> CVSup begin from cvsup12.freebsd.org at Fri Jun 25 03:47:15 PDT 2004
> CVSup ended from cvsup12.freebsd.org at Fri Jun 25 03:52:33 PDT 2004
> CVSup begin from cvsup14.freebsd.org at Sat Jun 26 01:47:02 PDT 2004
> CVSup ended from cvsup14.freebsd.org at Sat Jun 26 01:54:52 PDT 2004
> CVSup begin from cvsup14.freebsd.org at Sat Jun 26 03:47:03 PDT 2004
> CVSup ended from cvsup14.freebsd.org at Sat Jun 26 03:52:44 PDT 2004
> freebeast(5.2-C)[2] 
> 
> I do the builds after the 2nd CVSup of the day (i.e., starting just
> before 0400 hrs.)
> 
> I need to get back to helping my wife with a Project pretty soon, or I'd
> extract the list of changes in /usr/src/sys since the previous build,
> and try to identify whicj changes broke this....
> 
> Peace,
> david
> -- 
> David H. Wolfskill				david_at_catwhisker.org
> I do not "unsubscribe" from email "services" to which I have not explicitly
> subscribed.  Rather, I block spammers' access to SMTP servers I control,
> and encourage others who are in a position to do so to do likewise.
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
> 
Received on Sat Jun 26 2004 - 20:20:53 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:59 UTC