Hi folks,
My FreeBSD server (6.0-RELEASE #0) crashed out the other night. I have a
custom kernel in place with debugging on so can get the info out the
dump in /var/crash
Thing is, I'm not sure how to interpret it. I can see all the stuff
about ip and the network but I don't know if it means that is the
culprit and the handbook only goes into how to get the data out of the dump.
So could anyone possibly have a look at below (or tell me of somewhere I
can go to get the right info..bearing in mind I don't know all that much
about the kernel) and let me know what's up?
Thanks,
Colin.
cd /usr/obj/usr/src/sys/IVY
kgdb kernel.debug /var/crash/vmcore.1
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0x58
fault code = supervisor write, page not present
instruction pointer = 0x20:0xc0551fcb
stack pointer = 0x28:0xde9fbb18
frame pointer = 0x28:0xde9fbb34
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = 687 (python)
trap number = 12
panic: page fault
Uptime: 2d12h7m56s
Dumping 510 MB (2 chunks)
chunk 0: 1MB (160 pages) ... ok
chunk 1: 510MB (130416 pages) 494 478 462 446 430 414 398 382 366 350
334 318 302 286 270 254 238 222 206 190 174 158 142 126 110 94 78 62 46
30 14
#0 doadump () at pcpu.h:165
165 __asm __volatile("movl %%fs:0,%0" : "=r" (td));
(kgdb) list *0xc0551fcb
0xc0551fcb is in ip_ctloutput (/usr/src/sys/netinet/ip_output.c:1208).
1203 if (error)
1204 break;
1205
1206 switch (sopt->sopt_name) {
1207 case IP_TOS:
1208 inp->inp_ip_tos = optval;
1209 break;
1210
1211 case IP_TTL:
1212 inp->inp_ip_ttl = optval;
(kgdb) backtrace
#0 doadump () at pcpu.h:165
#1 0xc04ccb72 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:399
#2 0xc04cce08 in panic (fmt=0xc05fc04b "%s")
at /usr/src/sys/kern/kern_shutdown.c:555
#3 0xc05dedb8 in trap_fatal (frame=0xde9fbad8, eva=88)
at /usr/src/sys/i386/i386/trap.c:831
#4 0xc05deb23 in trap_pfault (frame=0xde9fbad8, usermode=0, eva=88)
at /usr/src/sys/i386/i386/trap.c:742
#5 0xc05de781 in trap (frame=
{tf_fs = -1067646968, tf_es = -1024393176, tf_ds = 40, tf_edi =
0, tf_esi = 0, tf_ebp = -559957196, tf_isp = -559957244, tf_ebx =
-559956848, tf_edx = -559956592, tf_ecx = 0, tf_eax = 8, tf_trapno = 12,
tf_err = 2, tf_eip = -1068163125, tf_cs = 32, tf_eflags = 66183, tf_esp
= -559957204, tf_ss = 8})
at /usr/src/sys/i386/i386/trap.c:432
#6 0xc05ce86a in calltrap () at /usr/src/sys/i386/i386/exception.s:139
#7 0xc0551fcb in ip_ctloutput (so=0x8, sopt=0xde9fbc90)
at /usr/src/sys/netinet/ip_output.c:1208
#8 0xc056016f in tcp_ctloutput (so=0xc2f376f4, sopt=0xde9fbc90)
at /usr/src/sys/netinet/tcp_usrreq.c:1036
#9 0xc05062c8 in sosetopt (so=0xc2f376f4, sopt=0xde9fbc90)
at /usr/src/sys/kern/uipc_socket.c:1553
#10 0xc050b525 in kern_setsockopt (td=0xc2f1dd80, s=14, level=8, name=8,
val=0xde9fbd90, valseg=UIO_USERSPACE, valsize=0)
at /usr/src/sys/kern/uipc_syscalls.c:1331
#11 0xc050b456 in setsockopt (td=0xc2f1dd80, uap=0x8)
at /usr/src/sys/kern/uipc_syscalls.c:1287
#12 0xc05df0cf in syscall (frame=
{tf_fs = 171507771, tf_es = 174850107, tf_ds = -1078001605,
tf_edi = -1077955292, tf_esi = -1077955284, tf_ebp = -1077955268, tf_isp
= -559956636, tf_ebx = 708242808, tf_edx = 154827904, tf_ecx =
-1077955988, tf_eax = 105, tf_trapno = 0, tf_err = 2, tf_eip =
673615827, tf_cs = 51, tf_eflags = 658, tf_esp = -1077955344, tf_ss =
59}) at /usr/src/sys/i386/i386/trap.c:976
#13 0xc05ce8bf in Xint0x80_syscall () at
/usr/src/sys/i386/i386/exception.s:200
#14 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb) p *sopt
$1 = {sopt_dir = SOPT_SET, sopt_level = 0, sopt_name = 3,
sopt_val = 0xbfbfb52c, sopt_valsize = 4, sopt_td = 0xc2f1dd80}
As a sidenote, I recently upgraded sendmail to 8.13.6 using the ports
tree with a few commands I picked out of the web. Whilst it appears that
8.13.6 is still on the server, it has somehow lost its ability to use
sasl2 which was compiled into it as follows:
**Added to Makefile
SENDMAIL_CFLAGS=-I/usr/local/include -DSASL=2
SENDMAIL_LDFLAGS=-L/usr/local/lib
SENDMAIL_LDADD=-lsasl2
SENDMAIL_CF_DIR=/usr/local/share/sendmail/cf
FORCE_PKG_REGISTER=yes
**Also uncommented lines about tls, smtps and sasl2
**Make command
make DESTDIR="" PREFIX=/usr PIDDIR=/var/run DESTETC=/etc/mail
DESTEXEC=/usr/libexec DESTRUN=/var/run DESTBIN=/usr/sbin install
As a result I have had to recompile sendmail to get support back. (I'm
aware this probably isn't the best way of upgrading sendmail, but by the
time I realised that it was too late..)
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"