Page MenuHomeFreeBSD

vtnet: move offload functions to virtio_net.h to share them
Needs ReviewPublic

Authored by timo.voelker_fh-muenster.de on Thu, May 28, 12:21 PM.
Tags
None
Referenced Files
F159887611: D57299.id179039.diff
Fri, Jun 19, 3:27 AM
F159818235: D57299.id179039.diff
Thu, Jun 18, 1:16 PM
F159818156: D57299.id179039.diff
Thu, Jun 18, 1:16 PM
Unknown Object (File)
Tue, Jun 16, 1:03 PM
Unknown Object (File)
Mon, Jun 8, 11:21 PM
Unknown Object (File)
Mon, Jun 8, 11:30 AM
Unknown Object (File)
Mon, Jun 8, 11:01 AM
Unknown Object (File)
Mon, Jun 8, 11:00 AM
Subscribers

Details

Summary

Move the functions vtnet_rxq_csum() and vtnet_txq_offload() and the subfunctions they call from if_vtnet.c to virtio_net.h. This allows us to call these functions from if_tuntap.c and if_ptnet.c.

virtio_net.h already contained a copy of these functions, but a copy of an outdated version. The functions evolved in if_vtnet.c. In if_vtnet.c, the copy has never been used because it increments counters in their own functions.

This patch removes the outdated copy from virtio_net.h and moves the new version of the functions from if_vtnet.c to virtio_net.h. if_tuntap.c, if_ptnet.c, and if_vtnet.c just call these functions, and if_vtnet.c increments its counters depending on the return value.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

Call virtio_net_rx_csum() only if VIRTIO_NET_HDR_F_NEEDS_CSUM or VIRTIO_NET_HDR_F_DATA_VALID is set.