9e0b9d2ec0
This patch adds a framework that allows GRO on tunneled packets. Furthermore, it leverages that framework to provide GRO support for VxLAN-encapsulated packets. Supported VxLAN packets must have an outer IPv4 header, and contain an inner TCP/IPv4 packet. VxLAN GRO doesn't check if input packets have correct checksums and doesn't update checksums for output packets. Additionally, it assumes the packets are complete (i.e., MF==0 && frag_off==0), when IP fragmentation is possible (i.e., DF==0). Signed-off-by: Jiayu Hu <jiayu.hu@intel.com> Reviewed-by: Junjie Chen <junjie.j.chen@intel.com> Tested-by: Lei Yao <lei.a.yao@intel.com>
26 lines
575 B
Makefile
26 lines
575 B
Makefile
# SPDX-License-Identifier: BSD-3-Clause
|
|
# Copyright(c) 2017 Intel Corporation
|
|
|
|
include $(RTE_SDK)/mk/rte.vars.mk
|
|
|
|
# library name
|
|
LIB = librte_gro.a
|
|
|
|
CFLAGS += -O3
|
|
CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR)
|
|
LDLIBS += -lrte_eal -lrte_mbuf -lrte_ethdev -lrte_net
|
|
|
|
EXPORT_MAP := rte_gro_version.map
|
|
|
|
LIBABIVER := 1
|
|
|
|
# source files
|
|
SRCS-$(CONFIG_RTE_LIBRTE_GRO) += rte_gro.c
|
|
SRCS-$(CONFIG_RTE_LIBRTE_GRO) += gro_tcp4.c
|
|
SRCS-$(CONFIG_RTE_LIBRTE_GRO) += gro_vxlan_tcp4.c
|
|
|
|
# install this header file
|
|
SYMLINK-$(CONFIG_RTE_LIBRTE_GRO)-include += rte_gro.h
|
|
|
|
include $(RTE_SDK)/mk/rte.lib.mk
|