misc/123066: kernel trap with ipsec
Mihail
msaf1980 at rambler.ru
Fri Apr 25 04:20:02 UTC 2008
>Number: 123066
>Category: misc
>Synopsis: kernel trap with ipsec
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Apr 25 04:20:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Mihail
>Release: 7.0
>Organization:
>Environment:
7.0-RELEASE-p1
>Description:
I get kernel trap with IPSEC when use ping with size > 3000 bytes over IPSEC tunnel with router D-Link DI-804HV, like
ping -s 4000 -S 192.168.241.160 192.168.200.6
Local Subnet is 192.168.241.0/24
Remote Subnet is 192.168.200.0/29
/etc/ipsec.conf
spdflush;
spdadd 192.168.241.0/24 192.168.200.0/29 any -P out ipsec esp/tunnel/XX.XX.XX.XX-YY.YY.YY.YY/require;
spdadd 192.168.200.0/29 192.168.241.0/24 any -P in ipsec esp/tunnel/YY.YY.YY.YY-XX.XX.XX.XX/require;
Kernel config is simular to GENERIC with options
options NETGRAPH
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT
options DUMMYNET
options HZ=1000
options MROUTING
device crypto
options IPSEC
options IPSEC_DEBUG
Kernel dump
Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address = 0xd7d6d5e8
fault code = supervisor write, page not present
instruction pointer = 0x20:0xc0a952f6
stack pointer = 0x28:0xc884e974
frame pointer = 0x28:0xc884e9d8
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 = 864 (ping)
trap number = 12
panic: page fault
cpuid = 0
Uptime: 2m36s
Physical memory: 115 MB
Dumping 30 MB: 15
(kgdb) list *0xc0a952f6
0xc0a952f6 is at /usr/src/sys/i386/i386/support.s:499.
494 cmpl %ecx,%eax /* overlapping && src < dst? */
495 jb 1f
496
497 shrl $2,%ecx /* copy by 32-bit words */
498 cld /* nope, copy forwards */
499 rep
500 movsl
501 movl 20(%esp),%ecx
502 andl $3,%ecx /* any bytes left? */
503 rep
(kgdb) backtrace
#0 doadump () at pcpu.h:195
#1 0xc075df57 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409
#2 0xc075e219 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:563
#3 0xc0a9766c in trap_fatal (frame=0xc884e934, eva=3621180904)
at /usr/src/sys/i386/i386/trap.c:899
#4 0xc0a978f0 in trap_pfault (frame=0xc884e934, usermode=0, eva=3621180904)
at /usr/src/sys/i386/i386/trap.c:812
#5 0xc0a9829c in trap (frame=0xc884e934) at /usr/src/sys/i386/i386/trap.c:490
#6 0xc0a7e21b in calltrap () at /usr/src/sys/i386/i386/exception.s:139
#7 0xc0a952f6 in generic_bcopy () at /usr/src/sys/i386/i386/support.s:498
Previous frame inner to this frame (corrupt stack?)
>How-To-Repeat:
permanently
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list