Projects
Eulaceura:Factory
lwip
_service:obs_scm:0066-adapt-to-dpdk-19.11-and-d...
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:obs_scm:0066-adapt-to-dpdk-19.11-and-dpdk-21.11.patch of Package lwip
From a8ca1b0361d5b31e437fd70d17860248dd44ddf7 Mon Sep 17 00:00:00 2001 From: Lemmy Huang <huangliming5@huawei.com> Date: Thu, 15 Jun 2023 09:06:58 +0800 Subject: [PATCH] adapt to dpdk-19.11 and dpdk-21.11 Signed-off-by: Lemmy Huang <huangliming5@huawei.com> --- src/Makefile | 3 +++ src/include/arch/sys_arch.h | 1 + src/include/dpdk_cksum.h | 3 +++ src/include/dpdk_version.h | 52 +++++++++++++++++++++++++++++++++++++ src/include/eventpoll.h | 1 + src/include/reg_sock.h | 2 ++ 6 files changed, 62 insertions(+) create mode 100644 src/include/dpdk_version.h diff --git a/src/Makefile b/src/Makefile index f445601b..480470fb 100644 --- a/src/Makefile +++ b/src/Makefile @@ -19,6 +19,9 @@ ARFLAGS = crDP ifeq ($(shell $(CC) -dumpmachine | cut -d"-" -f1), x86_64) CFLAGS += -mssse3 endif +ifeq ($(DPDK_VERSION_1911), 1) + CFLAGS += -DDPDK_VERSION_1911=1 +endif SRCS = DIRS = api core netif diff --git a/src/include/arch/sys_arch.h b/src/include/arch/sys_arch.h index 04e3192a..5e95f3d3 100644 --- a/src/include/arch/sys_arch.h +++ b/src/include/arch/sys_arch.h @@ -79,6 +79,7 @@ typedef struct sys_thread *sys_thread_t; #if GAZELLE_ENABLE extern int eth_dev_poll(void); #include <rte_ring.h> +#include "dpdk_version.h" /* gazelle custom rte ring interface diff --git a/src/include/dpdk_cksum.h b/src/include/dpdk_cksum.h index e41644b5..b48c9267 100644 --- a/src/include/dpdk_cksum.h +++ b/src/include/dpdk_cksum.h @@ -34,8 +34,11 @@ #define __DPDK_CKSUM_H__ #include "lwipopts.h" + #if GAZELLE_ENABLE +#include <stdbool.h> #include <rte_ethdev.h> +#include "dpdk_version.h" #if CHECKSUM_OFFLOAD_ALL #include <rte_mbuf_core.h> diff --git a/src/include/dpdk_version.h b/src/include/dpdk_version.h new file mode 100644 index 00000000..43b254a8 --- /dev/null +++ b/src/include/dpdk_version.h @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT + * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * This file is part of the lwIP TCP/IP stack. + * + * Author: Huawei Technologies + * + */ + +#ifndef __DPDK_VERSION_H__ +#define __DPDK_VERSION_H__ + +#if DPDK_VERSION_1911 +#define __rte_ring_enqueue_elems(r, prod_head, obj_table, esize, n) \ + ENQUEUE_PTRS(r, &r[1], prod_head, (obj_table), n, void *) + +#define __rte_ring_dequeue_elems(r, cons_head, obj_table, esize, n) \ + DEQUEUE_PTRS(r, &r[1], cons_head, (obj_table), n, void *) + +#define RTE_MBUF_F_RX_IP_CKSUM_BAD PKT_RX_IP_CKSUM_BAD +#define RTE_MBUF_F_RX_L4_CKSUM_BAD PKT_RX_L4_CKSUM_BAD +#define RTE_MBUF_F_TX_IPV4 PKT_TX_IPV4 +#define RTE_MBUF_F_TX_IP_CKSUM PKT_TX_IP_CKSUM +#define RTE_MBUF_F_TX_TCP_CKSUM PKT_TX_TCP_CKSUM +#define RTE_MBUF_F_TX_TCP_SEG PKT_TX_TCP_SEG + +#endif /* DPDK_VERSION_1911 */ + +#endif /* __DPDK_VERSION_H__ */ diff --git a/src/include/eventpoll.h b/src/include/eventpoll.h index a10c84bf..dd65a4d5 100644 --- a/src/include/eventpoll.h +++ b/src/include/eventpoll.h @@ -35,6 +35,7 @@ #include <sys/epoll.h> +#include "arch/sys_arch.h" #include "lwip/api.h" #include "list.h" diff --git a/src/include/reg_sock.h b/src/include/reg_sock.h index e349e854..5d5710d7 100644 --- a/src/include/reg_sock.h +++ b/src/include/reg_sock.h @@ -33,6 +33,8 @@ #ifndef __REG_SOCK_H__ #define __REG_SOCK_H__ +#include <stdbool.h> + enum reg_ring_type { REG_RING_TCP_LISTEN = 0, REG_RING_TCP_LISTEN_CLOSE, -- 2.22.0.windows.1
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2