vlib: refactor checksum offload support

Type: refactor

This patch refactors the offload flags in vlib_buffer_t.
There are two main reasons behind this refactoring.
First, offload flags are insufficient to represent outer
and inner headers offloads. Second, room for these flags
in first cacheline of vlib_buffer_t is also limited.

This patch introduces a generic offload flag in first
cacheline. And detailed offload flags in 2nd cacheline
of the structure for performance optimization.

Change-Id: Icc363a142fb9208ec7113ab5bbfc8230181f6004
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
This commit is contained in:
Mohsin Kazmi
2021-02-10 11:26:24 +01:00
committed by Damjan Marion
parent 99c6dc6a7a
commit 6809538e64
34 changed files with 376 additions and 263 deletions

View File

@ -39,7 +39,8 @@ class TestOffload(VppTestCase):
" interface loop0\n"
" tx-interface loop1\n"
" node loop1-output\n"
" buffer-flags ip4 offload-ip-cksum offload-udp-cksum\n"
" buffer-flags ip4 offload\n"
" buffer-offload-flags offload-ip-cksum offload-udp-cksum\n"
" data {\n"
" IP4: 1.2.3 -> dead.0000.0001\n"
" UDP: 11.22.33.44 -> 11.22.34.44\n"