kern/104765: kernel panic 6.2 prerelease-20061017 amd64
Kai Gallasch
gallasch at free.de
Wed Oct 25 02:50:31 PDT 2006
The following reply was made to PR kern/104765; it has been noted by GNATS.
From: Kai Gallasch <gallasch at free.de>
To: bug-followup at FreeBSD.org, gallasch at free.de
Cc:
Subject: Re: kern/104765: kernel panic 6.2 prerelease-20061017 amd64
Date: Wed, 25 Oct 2006 11:49:33 +0200
Here 1*) is another backtrace of a new kernel panic. Looks very similar
to my previous commited one - even the same current process "tcpserver"
that is involved in the panic, which always shows up when the kernel panics.
At first I thought that it's always 'tcpserver' because on a busy
mailserver running qmail it could be expected as this process is quite
active, but maybe the panics that I have with my 6.2-PRE are related to
the folloing thread on freebsd-stable
http://lists.freebsd.org/pipermail/freebsd-stable/2006-October/029433.html
and especially (in this thread)
http://lists.freebsd.org/pipermail/freebsd-stable/2006-October/029487.html
Maybe then to some the snippet 2*) is helpful where I tried to follow
what Gleb Smirnoff advised to do in
http://lists.freebsd.org/pipermail/freebsd-stable/2006-October/029452.html
Cheers,
K.
--- 1*) backtrace - 20061025 ---
Unread portion of the kernel message buffer:
sor read, page not present
instruction pointer = 0x8:0xffffffff803eea47
stack pointer = 0x10:0xffffffffa7e548b0
frame pointer = 0x10:0x4
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags = resume, IOPL = 0
current process = 8013 (tcpserver)
trap number = 12
panic: page fault
cpuid = 2
Uptime: 10h10m5s
Dumping 1023 MB (2 chunks)
chunk 0: 1MB (156 pages) ... ok
chunk 1: 1023MB (261880 pages) 1008 992 976 960 944 928 912 896 880
864 848 832 816 800 784 768 752 736 720 704 688 672 656 640 624 608 592
576 560 544 528 512 496 480 464 448 432 416 400 384 368 352 336 320 304
288 272 256 240 224 208 192 176 160 144 128 112 96 80 64 48 32 16
#0 doadump () at pcpu.h:172
172 pcpu.h: No such file or directory.
in pcpu.h
(kgdb) list *0xffffffff803eea47
0xffffffff803eea47 is in _mtx_lock_sleep
(/usr/src/sys/kern/kern_mutex.c:548).
543 * If the current owner of the lock is executing
on another
544 * CPU, spin instead of blocking.
545 */
546 owner = (struct thread *)(v & MTX_FLAGMASK);
547 #ifdef ADAPTIVE_GIANT
548 if (TD_IS_RUNNING(owner)) {
549 #else
550 if (m != &Giant && TD_IS_RUNNING(owner)) {
551 #endif
552 turnstile_release(&m->mtx_object);
(kgdb) bt
#0 doadump () at pcpu.h:172
#1 0x0000000000000004 in ?? ()
#2 0xffffffff803f8fd7 in boot (howto=260) at
/usr/src/sys/kern/kern_shutdown.c:409
#3 0xffffffff803f9671 in panic (fmt=0xffffff0010624720 "?\226\230\017")
at /usr/src/sys/kern/kern_shutdown.c:565
#4 0xffffffff80618b3f in trap_fatal (frame=0xffffff0010624720,
eva=18446742974459582128) at /usr/src/sys/amd64/amd64/trap.c:660
#5 0xffffffff80619066 in trap (frame=
{tf_rdi = 123, tf_rsi = -1099236751584, tf_rdx = 6, tf_rcx = 0,
tf_r8 = 0, tf_r9 = 0, tf_rax = 1, tf_rbx = -1099331437672, tf_rbp = 4,
tf_r10 = -2050201464, tf_r11 = -1099236751584, tf_r12 = -1099236751584,
tf_r13 = -1098723105024, tf_r14 = 0, tf_r15 = 1, tf_trapno = 12, tf_addr
= 396, tf_flags = -2141616351, tf_err = 0, tf_rip = -2143360441, tf_cs =
8, tf_rflags = 65538, tf_rsp = -1478145856, tf_ss = 16}) at
/usr/src/sys/amd64/amd64/trap.c:238
#6 0xffffffff8060442b in calltrap () at
/usr/src/sys/amd64/amd64/exception.S:168
#7 0xffffffff803eea47 in _mtx_lock_sleep (m=0xffffff000abd7b98,
tid=18446742974472800032, opts=6, file=0x0, line=0) at
/usr/src/sys/kern/kern_mutex.c:546
#8 0xffffffff804bb51d in ip_ctloutput (so=0x7b,
sopt=0xffffffffa7e54b30) at /usr/src/sys/netinet/ip_output.c:1193
#9 0xffffffff804ccad5 in tcp_ctloutput (so=0xffffff0033fe14d0,
sopt=0xffffffffa7e54b30) at /usr/src/sys/netinet/tcp_usrreq.c:1038
#10 0xffffffff804416b8 in sosetopt (so=0xffffff0033fe14d0,
sopt=0xffffffffa7e54b30) at /usr/src/sys/kern/uipc_socket.c:1563
#11 0xffffffff80447b93 in kern_setsockopt (td=0xffffff0010624720,
s=586531656, level=-2050201464, name=0, val=0x0, valseg=UIO_USERSPACE,
valsize=123)
at /usr/src/sys/kern/uipc_syscalls.c:1351
#12 0xffffffff80447bfe in setsockopt (td=0x7b, uap=0xffffff0010624720)
at /usr/src/sys/kern/uipc_syscalls.c:1307
#13 0xffffffff80619991 in syscall (frame=
{tf_rdi = 0, tf_rsi = 0, tf_rdx = 1, tf_rcx = 0, tf_r8 = 0, tf_r9
= 140737488350072, tf_rax = 105, tf_rbx = 0, tf_rbp = 3, tf_r10 =
-3689348814741910323, tf_r11 = 514, tf_r12 = 140737488350480, tf_r13 =
34368406752, tf_r14 = 0, tf_r15 = 0, tf_trapno = 12, tf_addr = 5283944,
tf_flags = 12, tf_err = 2, tf_rip = 34366834188, tf_cs = 43, tf_rflags =
518, tf_rsp = 140737488350184, tf_ss = 35}) at
/usr/src/sys/amd64/amd64/trap.c:792
#14 0xffffffff806045c8 in Xfast_syscall () at
/usr/src/sys/amd64/amd64/exception.S:270
#15 0x00000008006c460c in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb)
--- 2*) kgdb session on latest crashdump - 20061025 ---
instruction pointer = 0x8:0xffffffff803eea47
stack pointer = 0x10:0xffffffffa7e548b0
frame pointer = 0x10:0x4
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags = resume, IOPL = 0
current process = 8013 (tcpserver)
trap number = 12
panic: page fault
cpuid = 2
Uptime: 10h10m5s
Dumping 1023 MB (2 chunks)
chunk 0: 1MB (156 pages) ... ok
chunk 1: 1023MB (261880 pages) 1008 992 976 960 944 928 912 896 880
864 848 832 816 800 784 768 752 736 720 704 688 672 656 640 624 608 592
576 560 544 528 512 496 480 464 448 432 416 400 384 368 352 336 320 304
288 272 256 240 224 208 192 176 160 144 128 112 96 80 64 48 32 16
#0 doadump () at pcpu.h:172
172 pcpu.h: No such file or directory.
in pcpu.h
(kgdb) where
#0 doadump () at pcpu.h:172
#1 0x0000000000000004 in ?? ()
#2 0xffffffff803f8fd7 in boot (howto=260) at
/usr/src/sys/kern/kern_shutdown.c:409
#3 0xffffffff803f9671 in panic (fmt=0xffffff0010624720 "?\226\230\017")
at /usr/src/sys/kern/kern_shutdown.c:565
#4 0xffffffff80618b3f in trap_fatal (frame=0xffffff0010624720,
eva=18446742974459582128) at /usr/src/sys/amd64/amd64/trap.c:660
#5 0xffffffff80619066 in trap (frame=
{tf_rdi = 123, tf_rsi = -1099236751584, tf_rdx = 6, tf_rcx = 0,
tf_r8 = 0, tf_r9 = 0, tf_rax = 1, tf_rbx = -1099331437672, tf_rbp = 4,
tf_r10 = -2050201464, tf_r11 = -1099236751584, tf_r12 = -1099236751584,
tf_r13 = -1098723105024, tf_r14 = 0, tf_r15 = 1, tf_trapno = 12, tf_addr
= 396, tf_flags = -2141616351, tf_err = 0, tf_rip = -2143360441, tf_cs =
8, tf_rflags = 65538, tf_rsp = -1478145856, tf_ss = 16}) at
/usr/src/sys/amd64/amd64/trap.c:238
#6 0xffffffff8060442b in calltrap () at
/usr/src/sys/amd64/amd64/exception.S:168
#7 0xffffffff803eea47 in _mtx_lock_sleep (m=0xffffff000abd7b98,
tid=18446742974472800032, opts=6, file=0x0, line=0) at
/usr/src/sys/kern/kern_mutex.c:546
#8 0xffffffff804bb51d in ip_ctloutput (so=0x7b,
sopt=0xffffffffa7e54b30) at /usr/src/sys/netinet/ip_output.c:1193
#9 0xffffffff804ccad5 in tcp_ctloutput (so=0xffffff0033fe14d0,
sopt=0xffffffffa7e54b30) at /usr/src/sys/netinet/tcp_usrreq.c:1038
#10 0xffffffff804416b8 in sosetopt (so=0xffffff0033fe14d0,
sopt=0xffffffffa7e54b30) at /usr/src/sys/kern/uipc_socket.c:1563
#11 0xffffffff80447b93 in kern_setsockopt (td=0xffffff0010624720,
s=586531656, level=-2050201464, name=0, val=0x0, valseg=UIO_USERSPACE,
valsize=123)
at /usr/src/sys/kern/uipc_syscalls.c:1351
#12 0xffffffff80447bfe in setsockopt (td=0x7b, uap=0xffffff0010624720)
at /usr/src/sys/kern/uipc_syscalls.c:1307
#13 0xffffffff80619991 in syscall (frame=
{tf_rdi = 0, tf_rsi = 0, tf_rdx = 1, tf_rcx = 0, tf_r8 = 0, tf_r9
= 140737488350072, tf_rax = 105, tf_rbx = 0, tf_rbp = 3, tf_r10 =
-3689348814741910323, tf_r11 = 514, tf_r12 = 140737488350480, tf_r13 =
34368406752, tf_r14 = 0, tf_r15 = 0, tf_trapno = 12, tf_addr = 5283944,
tf_flags = 12, tf_err = 2, tf_rip = 34366834188, tf_cs = 43, tf_rflags =
518, tf_rsp = 140737488350184, tf_ss = 35}) at
/usr/src/sys/amd64/amd64/trap.c:792
#14 0xffffffff806045c8 in Xfast_syscall () at
/usr/src/sys/amd64/amd64/exception.S:270
#15 0x00000008006c460c in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb) frame 12
#12 0xffffffff80447bfe in setsockopt (td=0x7b, uap=0xffffff0010624720)
at /usr/src/sys/kern/uipc_syscalls.c:1307
1307 return (kern_setsockopt(td, uap->s, uap->level, uap->name,
(kgdb) p *sopt
No symbol "sopt" in current context.
(kgdb) p *kern_setsockopt
$1 = {int (struct thread *, int, int, int, void *, enum uio_seg,
socklen_t)} 0xffffffff80447a80 <kern_setsockopt>
(kgdb) frame 12
#12 0xffffffff80447bfe in setsockopt (td=0x7b, uap=0xffffff0010624720)
at /usr/src/sys/kern/uipc_syscalls.c:1307
1307 return (kern_setsockopt(td, uap->s, uap->level, uap->name,
(kgdb) p td->td_proc->p_comm
Cannot access memory at address 0x7b
More information about the freebsd-bugs
mailing list