Article View: pl.comp.os.bsd
Article #20914kernel panic + dummynet 7.2R
From: gumis
Date: Fri, 15 May 2009 10:35
Date: Fri, 15 May 2009 10:35
146 lines
7333 bytes
7333 bytes
Witam,
Mamy problem z routerem oparym na FreeBSD. Przy przeładowywaniu firewalla
notorycznie występuje kernel panic + restart routera. Błąd ten występuje
tylko w przypadku jądra SMP, przy włączonym tylko jednym rdzeniu router jest
stabilny jak skała.Czekaliśmy na 7.2 z nadzieją, że coś się poprawi.
Niestety dalej to samo co we wcześniejszych wersjach (od 6.x)
Przez router leci dosyć sporo ruchu, w szczycie prawie 400mbit in i około
350mbit out. W tym momencie panic jest powtarzalny przynajmniej w 90%
przeładowań. Jak ruch jest mniejszy, powiedzmy 100in i out to raczej się nic
nie dzieje (np w nocy lub podczas restartu routera). Do cięcia ruchu
wykorzystujemy ficzer tablearg w postaci:
ipfw add pipe tablearg ip from table(101) to any
ipfw add pipe tablearg ip from any to table(100)
ipfw add pipe tablearg ip from table(103) to any
ipfw add pipe tablearg ip from any to table(102)
oraz wpisy w tabelach (ok 9000 wpisów)
/sbin/ipfw pipe 15000 config bw 20480Kbit/s
/sbin/ipfw pipe 15001 config bw 20480Kbit/s
/sbin/ipfw table 100 add xx.xx.xx.xx 15000
/sbin/ipfw table 101 add xx.xx.xx.xx 15001
/sbin/ipfw pipe 15002 config bw 3072Kbit/s
/sbin/ipfw pipe 15003 config bw 640Kbit/s
/sbin/ipfw table 102 add xx.xx.xx.xx 15002
/sbin/ipfw table 103 add xx.xx.xx.xx 15003
/sbin/ipfw pipe 15004 config bw 20480Kbit/s
/sbin/ipfw pipe 15005 config bw 20480Kbit/s
Na 99% panic występuje podczas ładowania tych tabel i tylko przy jądrze smp.
SMP jest dla nas o tyle istotne, że przy jednym włączonym jądrze procesora
użycie procesora w szczycie jest 100%. Przy włączonym SMP router się nudzi.
Sprzęt wykluczyliśmy w 100%, był serwer hp proliant z xeonami, były 2
składaki z mocnymi C2D i za każdym razem to samo.
FreeBSD 7.2-RELEASE #0: Thu May 14 13:35:28 CEST 2009
CPU: Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz (3000.01-MHz 686-class
CPU)
real memory = 2146304000 (2046 MB)
avail memory = 2090934272 (1994 MB)
em0: <Intel(R) PRO/1000 Network Connection 6.9.6> port 0xa000-0xa01f mem
0xe8020000-0xe803ffff,0xe8000000-0xe801ffff irq 12 at device 0.0 on pci3
em1: <Intel(R) PRO/1000 Network Connection 6.9.6> port 0xb000-0xb01f mem
0xea020000-0xea03ffff,0xea000000-0xea01ffff irq 10 at device 0.0 on pci4
Kernel Generic + :
#cpu I486_CPU
#cpu I586_CPU
options HZ=1000
device atapicam
options DEVICE_POLLING
options DUMMYNET
options IPFIREWALL
options IPFIREWALL_FORWARD
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
device vlan
options NULLFS
options UNIONFS
options GEOM_AES # Don't use, use GEOM_BDE
options GEOM_BDE # Disk encryption.
options GEOM_BSD # BSD disklabels
options GEOM_CONCAT # Disk concatenation.
options GEOM_FOX # Redundant path mitigation
options GEOM_GATE # Userland services.
options GEOM_PART_GPT # GPT partitioning
options GEOM_LABEL # Providers labelization.
options GEOM_MBR # DOS/MBR partitioning
options GEOM_MIRROR # Disk mirroring.
options GEOM_NOP # Test class.
options GEOM_RAID3 # RAID3 functionality.
options GEOM_STRIPE # Disk striping.
options GEOM_VOL # Volume names from UFS superblock
Dump z panica:
Fatal trap 12: page fault while in kernel mode
cpuid = 1; apic id = 01
fault virtual address = 0xf
fault code = supervisor read, page not present
instruction pointer = 0x20:0xc0902ac6
stack pointer = 0x28:0xe5961774
frame pointer = 0x28:0xe5961aa4
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 = 46 (dummynet)
trap number = 12
panic: page fault
cpuid = 1
Uptime: 4m32s
Physical memory: 2034 MB
Dumping 108 MB: 93 77 61 45 29 13
Reading symbols from /boot/kernel/acpi.ko...Reading symbols from
/boot/kernel/acpi.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/acpi.ko
Reading symbols from /boot/kernel/pf.ko...Reading symbols from
/boot/kernel/pf.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/pf.ko
#0 doadump () at pcpu.h:196
196 __asm __volatile("movl %%fs:0,%0" : "=r" (td));
(kgdb) bt
#0 doadump () at pcpu.h:196
#1 0xc0817ee7 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:418
#2 0xc08181b9 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:574
#3 0xc0b252ac in trap_fatal (frame=0xe5961734, eva=15) at
/usr/src/sys/i386/i386/trap.c:939
#4 0xc0b25510 in trap_pfault (frame=0xe5961734, usermode=0, eva=15) at
/usr/src/sys/i386/i386/trap.c:852
#5 0xc0b25e92 in trap (frame=0xe5961734) at
/usr/src/sys/i386/i386/trap.c:530
#6 0xc0b0afab in calltrap () at /usr/src/sys/i386/i386/exception.s:159
#7 0xc0902ac6 in ipfw_chk (args=0xe5961abc) at
/usr/src/sys/netinet/ip_fw2.c:2516
#8 0xc0906138 in ipfw_check_in (arg=0x0, m0=0xe5961bc0, ifp=0xc5905000,
dir=1, inp=0x0) at /usr/src/sys/netinet/ip_fw_pfil.c:125
#9 0xc08c3fd8 in pfil_run_hooks (ph=0xc0d062a0, mp=0xe5961c18,
ifp=0xc5905000, dir=1, inp=0x0) at /usr/src/sys/net/pfil.c:78
#10 0xc0908ee1 in ip_input (m=0xc6daa400) at
/usr/src/sys/netinet/ip_input.c:416
#11 0xc08c2755 in netisr_dispatch (num=2, m=0xc6daa400) at
/usr/src/sys/net/netisr.c:185
#12 0xc08fa862 in dummynet_send (m=0xc6daa400) at
/usr/src/sys/netinet/ip_dummynet.c:901
#13 0xc08fbe36 in dummynet_task (context=0x0, pending=1) at
/usr/src/sys/netinet/ip_dummynet.c:877
#14 0xc084d175 in taskqueue_run (queue=0xc57b6380) at
/usr/src/sys/kern/subr_taskqueue.c:282
#15 0xc084d388 in taskqueue_thread_loop (arg=0xc0d05aa8) at
/usr/src/sys/kern/subr_taskqueue.c:401
#16 0xc07f18d9 in fork_exit (callout=0xc084d2c0 <taskqueue_thread_loop>,
arg=0xc0d05aa8, frame=0xe5961d38)
at /usr/src/sys/kern/kern_fork.c:810
#17 0xc0b0b020 in fork_trampoline () at
/usr/src/sys/i386/i386/exception.s:264
(kgdb)
Nie jesteśmy developerami bsd i w/w dump nam za dużo nie mówi. Google
wyrzuca podobne problemy ale rozwiązania brak.
Jakieś pomysły ?
Tomasz Gumułka
Technical Details
Message-ID:
<gujgha$880$1@news.onet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail From: "gumis" <guma@interpc.pl> Newsgroups: pl.comp.os.bsd Subject: kernel panic + dummynet 7.2R Date: Fri, 15 May 2009 12:35:23 +0200 Organization: http://onet.pl Lines: 149 Message-ID: <gujgha$880$1@news.onet.pl> NNTP-Posting-Host: 85.14.127.244 Mime-Version: 1.0 X-Trace: news.onet.pl 1242383722 8448 85.14.127.244 (15 May 2009 10:35:22 GMT) X-Complaints-To: niusy@onet.pl NNTP-Posting-Date: Fri, 15 May 2009 10:35:22 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5512 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit