Systematically get a panic when 'making world' (seems to be SMP related...).

From: Julien Gabel <jpeg_at_thilelli.net>
Date: Wed, 24 Aug 2005 23:33:07 +0200 (CEST)
Hello,

Almost all time i tried to make the world using an SMP kernel (one physical
CPU with HTT enable), i get a panic as shown below.

/* Kernel configuration file */
# cat /usr/src/sys/i386/conf/BOBOCHE
include         GENERIC
ident           BOBOCHE
options         QUOTA      # Enable disk quotas
makeoptions     DEBUG=-g   # Build kernel with gdb(1) debug symbols
options         SC_DISABLE_REBOOT   # Disable reboot key sequence
options         GEOM_BDE   # Disk encryption
device          sound      # The generic sound driver
device          snd_ich    # Intel ICH PCI and some more audio controllers
device          ucom       # USB com devices
device          uvisor     # Optional uvisor ucom
device          atapicam   # Emulate ATAPI devices as SCSI ditto via CAM
options         SMP        # Symmetric MultiProcessor Kernel

/* Built it and boot on it */
# rm -rf /usr/obj/*
# cd /usr/src; make cleandir cleandir
# cd /usr/src; make -DALWAYS_CHECK_MAKE kernel KERNCONF=BOBOCHE
# shutdown -r now
# uname -a
FreeBSD boboche.thilelli.net 6.0-BETA3 FreeBSD 6.0-BETA3 #0: Wed Aug 24
22:18:14 CEST 2005    
root_at_boboche.thilelli.net:/usr/obj/usr/src/sys/BOBOCHE  i386

/* Make the world... ended in a panic :-( */
# cd /usr/src; make -j4 buildworld > /dev/null
panic: receive: m == 0 so->so_rcv.sb_cc == 4294967295
cpuid = 0
KDB: enter: panic
[thread pid 23052 tid 100117 ]
Stopped at      kdb_enter+0x30: leave
db> tr
Tracing pid 23052 tid 100117 td 0xc2c12600
kdb_enter(c090df50,0,c0914927,ef59bbc8,c2c12600) at kdb_enter+0x30
panic(c0914927,0,ffffffff,3f5,c09118f2) at panic+0x13e
soreceive(c2b0b858,0,ef59bcb4,0,0,ef59bc30,4000) at soreceive+0x1cd
fifo_read_f(c2a8d7e0,ef59bcb4,c2af6a80,0,c2c12600) at fifo_read_f+0x70
dofileread(c2c12600,3,c2a8d7e0,ef59bcb4,ffffffff) at dofileread+0x96
kern_readv(c2c12600,3,ef59bcb4,bfbfdca7,1) at kern_readv+0x61
read(c2c12600,ef59bd04,c,422,3) at read+0x4f
syscall(bfbf003b,80b003b,bfbf003b,bfbfdce0,80b6d80) at syscall+0x295
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (3, FreeBSD ELF32, read), eip = 0x805d367, esp = 0xbfbfdc8c,
ebp = 0xbfbfdca8 ---
db> panic
panic: from debugger
cpuid = 0
Uptime: 22m7s
Dumping 1021 MB (2 chunks)
ad0: timeout waiting to issue command
ad0: error issueing WRITE_MUL command
  chunk 0: 1MB (159 pages)ad0: timeout waiting to issue command
ad0: error issueing WRITE_MUL command
 ... ok
  chunk 1: 1021MB (261360 pages) 1005 989 973 957 941 925 909 893 877 861
845 829 813 797 781 765 749 733 717 701 685 669 653 637 621 605 589 573
557 541 525 509 493 477 461 445 429 413 397 381 365 349 333 317 301 285
269 253 237 221 205 189 173 157 141 125 109 93 77 61 45 29 13 ... ok

Sadly, i currently can't do post-panic using the core file since it seems
not to be valid (maybe due to the "write null" error on notebook disk):
# cd /var/crash
# gzip -d /var/crash/vmcore.0.gz
# kgdb /usr/obj/usr/src/sys/BOBOCHE/kernel.debug vmcore.0
kgdb: cannot read IdlePTD

So, if anyone is interesting i can _easily_ reproduce the problem and
issue the proposed command(s) directly on the KDB prompt after a real
panic using serial console.

Regards,
-- 
-jpeg.
Received on Wed Aug 24 2005 - 19:33:15 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:42 UTC