]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
netmap: add kernel support for the "offsets" feature
authorVincenzo Maffione <vmaffione@FreeBSD.org>
Mon, 29 Mar 2021 16:22:48 +0000 (18:22 +0200)
committerVincenzo Maffione <vmaffione@FreeBSD.org>
Mon, 29 Mar 2021 16:29:01 +0000 (16:29 +0000)
commita6d768d845c173823785c71bb18b40074e7a8998
tree6a110e4d72a883f4a96c55e3e5681393f170fbcb
parent9d81dd5404b3ad7108059d7065814d56a722a96c
netmap: add kernel support for the "offsets" feature

This feature enables applications to ask netmap to transmit or
receive packets starting at a user-specified offset from the
beginning of the netmap buffer. This is meant to ease those
packet manipulation operations such as pushing or popping packet
headers, that may be useful to implement software switches,
routers and other packet processors.
To use the feature, drivers (e.g., iflib, vtnet, etc.) must have
explicit support. This change does not add support for any driver,
but introduces the necessary kernel changes. However, offsets support
is already included for VALE ports and pipes.
15 files changed:
sys/dev/netmap/netmap.c
sys/dev/netmap/netmap_bdg.c
sys/dev/netmap/netmap_bdg.h
sys/dev/netmap/netmap_freebsd.c
sys/dev/netmap/netmap_generic.c
sys/dev/netmap/netmap_kern.h
sys/dev/netmap/netmap_mem2.c
sys/dev/netmap/netmap_mem2.h
sys/dev/netmap/netmap_null.c
sys/dev/netmap/netmap_pipe.c
sys/dev/netmap/netmap_vale.c
sys/net/netmap.h
sys/net/netmap_legacy.h
sys/net/netmap_user.h
sys/net/netmap_virt.h