On Aug 13, 2012, at 2:17 PM, Luigi Rizzo <ri...@iet.unipi.it> wrote: > I just finished a netmap-enabled version of ipfw/dummynet, which > runs in userspace and is able to process over 6 million packets per > second (Mpps) with simple rulesets, and over 2.2 Mpps through > dummynet pipes (tested on an i7-3400 connected to VALE ports; > VALE is a software switch part of netmap). > You can find it at > > http://info.iet.unipi.it/~luigi/dummynet/#8696 > > It works on FreeBSD and Linux. > > It even run on OSX, but there is no netmap support there; > any interest, Apple ? In any case, it should be simple to > adapt the network backend to talk to other devices. > > To run this you might want to use the most recent version of netmap, > also recently updated so it works with recent kernels > > http://info.iet.unipi.it/~luigi/netmap/ > > (the code is already in FreeBSD HEAD). > > On passing, I have also updated the dummynet distributions > for Linux and Windows, which should now compile for most > recent version of Linux, and for Windows 32 and 64 bit: > > http://info.iet.unipi.it/~luigi/dummynet/ > > cheers > luigi > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"
Hi Luigi, I've tried copying netmap sources from HEAD to the latest RELENG_9 branch, but running kipfw with two VALE interfaces produced immediate kernel panic (transcribed by hand, possible typos): Fatal trap 12: page fault while in kernel mode cpuid = 1; apic id = 01 fault virtual address = 0x28 fault code = supervisor read data, page not present instruction pointer = 0x20:0xffffffff808274da stack pointer = 0x28:0xffffff88df1a5530 frame pointer = 0x28:0xffffff88df1a5550 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 = 2349 (kipfw) [ thread pid 2349 tid 100612 ] Stopped at ifunit_ref+0x2a: db> bt Tracing pid 2349 tid 100612 td 0xfffffe0094fd1000 ifunit_ref() at ifunit_ref+0x2a ifioctl() at ifioctl+0x1cd netmap_ioctl() at netmap_ioctl+0x121 devfs_ioctl_f() at devfs_ioctl_f+0x7b kern_ioctl() at kern_ioctl+0x115 sys_ioctl() at sys_ioctl+0xfd amd64_syscall() at amd64_syscall+0x5ea Xfast_syscall() at Xfast_syscall+0xf7 --- syscall (54, FreeBSD ELF64, sys_ioctl), rip = 0x800b5eaec, rsp = 0x7fffffffd 888, rbp = 0xc0206911 --- Anyways, many thanks for you great work on NETMAP and not the super cool user-space IPFW! Cheers, Nikolay_______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"