# ng_car vs dummynet



## Antti (Jan 19, 2010)

Hello!

We're currently using ng_ipfw + ng_car for traffic shaping.
This has been working good until we got some more heavy traffic load, and now it crashes our system (FreeBSD 8.0-RELEASE-p2) constantly.
Now we are thinking about moving back to dummynet.
Stupid question: when testing speed with speedtest.net ng_car shows "stable" speed, while dummynet shows some "speedometer" twitching. Is there any way to "fix this"?


P.S.: Can someone help me submit PR?

```
Fatal trap 12: page fault while in kernel mode
cpuid = 2; apic id = 02
fault virtual address   = 0xffff80402408c050
fault code              = supervisor read data, page not present
instruction pointer     = 0x20:0xffffffff8085d1ee
stack pointer           = 0x28:0xffffff800012d9f0
frame pointer           = 0x28:0xffffff800012da00
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 0 (em1 taskq)
trap number             = 12
panic: page fault
cpuid = 2
Uptime: 4h42m2s
```


```
#0  doadump () at pcpu.h:223
223     pcpu.h: No such file or directory.
        in pcpu.h
(kgdb) #0  doadump () at pcpu.h:223
#1  0xffffffff80584049 in boot (howto=260)
    at /usr/src/sys/kern/kern_shutdown.c:416
#2  0xffffffff8058447c in panic (fmt=0xffffffff8092afec "%s")
    at /usr/src/sys/kern/kern_shutdown.c:579
#3  0xffffffff808656f8 in trap_fatal (frame=0xffffff00026e1ab0, eva=Variable "eva" is not available.
)
    at /usr/src/sys/amd64/amd64/trap.c:852
#4  0xffffffff80865ac4 in trap_pfault (frame=0xffffff800012d940, usermode=0)
    at /usr/src/sys/amd64/amd64/trap.c:768
#5  0xffffffff808663b4 in trap (frame=0xffffff800012d940)
    at /usr/src/sys/amd64/amd64/trap.c:494
#6  0xffffffff8084c6a3 in calltrap ()
    at /usr/src/sys/amd64/amd64/exception.S:224
#7  0xffffffff8085d1ee in pmap_kextract (va=158480021258311)
    at /usr/src/sys/amd64/amd64/pmap.c:1048
#8  0xffffffff8084b2e9 in bus_dmamap_load_mbuf_sg (dmat=0xffffff00026d9500,
    map=0xffffffff80c281e0, m0=Variable "m0" is not available.
)
    at /usr/src/sys/amd64/amd64/busdma_machdep.c:653
#9  0xffffffff80319995 in em_get_buf (adapter=0xffffff80005b7000, i=194)
    at /usr/src/sys/dev/e1000/if_em.c:4121
#10 0xffffffff8031ce4b in em_rxeof (adapter=0xffffff80005b7000, count=98)
    at /usr/src/sys/dev/e1000/if_em.c:4519
#11 0xffffffff8031f38b in em_handle_rxtx (context=Variable "context" is not available.
)
    at /usr/src/sys/dev/e1000/if_em.c:1763
#12 0xffffffff805bf233 in taskqueue_run (queue=0xffffff00026d9480)
    at /usr/src/sys/kern/subr_taskqueue.c:239
#13 0xffffffff805bf4b6 in taskqueue_thread_loop (arg=Variable "arg" is not available.
)
    at /usr/src/sys/kern/subr_taskqueue.c:360
#14 0xffffffff8055b208 in fork_exit (
    callout=0xffffffff805bf470 <taskqueue_thread_loop>,
    arg=0xffffff80005bb768, frame=0xffffff800012dc80)
    at /usr/src/sys/kern/kern_fork.c:843
#15 0xffffffff8084cb7e in fork_trampoline ()
    at /usr/src/sys/amd64/amd64/exception.S:561
```


----------



## rhyous (Jan 19, 2010)

You should be able to type send-pr on your own server and fill it out and send it.

Or use the web based form.
http://www.freebsd.org/support/bugreports.html


----------



## elapus (Feb 18, 2010)

I've encountered a "somewhat" the same problem. I filed a PR http://www.freebsd.org/cgi/query-pr.cgi?pr=143573. Could this be an em(4) problem as opposed to the suspected ng_ipfw+ng_car combination that Antti mentioned?


----------

