summaryrefslogtreecommitdiff
path: root/support/dpdk
diff options
context:
space:
mode:
author童宗振 <[email protected]>2024-07-23 09:27:30 +0000
committer童宗振 <[email protected]>2024-07-23 09:27:30 +0000
commitbdfd6cc86c7db57e3bd1968aca081f972e962d3d (patch)
treeeb2869319fd841ad7888fe80cc3eb70ae91f4ad6 /support/dpdk
parentf1a1d7fa5ff754e7b7df774852a25ef10e2a013c (diff)
Updata dpdk to 23
Diffstat (limited to 'support/dpdk')
-rw-r--r--support/dpdk/dpdk-21.11.4-dpdk-hugepages-path.patch11
-rw-r--r--support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-app.patch11
-rw-r--r--support/dpdk/dpdk-21.11.4-extend-max-virtqueue-pairs.patch11
-rw-r--r--support/dpdk/dpdk-21.11.4-fm10k-rxtx-vec.patch12
-rw-r--r--support/dpdk/dpdk-21.11.4-macro-adjust.patch19
-rw-r--r--support/dpdk/dpdk-21.11.4-mempool-ops-get-count.patch10
-rw-r--r--support/dpdk/dpdk-23.11.1-bypass-flow-err-func.patch (renamed from support/dpdk/dpdk-21.11.4-bypass-flow-err-func.patch)6
-rw-r--r--support/dpdk/dpdk-23.11.1-dpdk-devbind-dump.patch (renamed from support/dpdk/dpdk-21.11.4-dpdk-devbind-dump.patch)33
-rw-r--r--support/dpdk/dpdk-23.11.1-dpdk-hugepages-path.patch11
-rw-r--r--support/dpdk/dpdk-23.11.1-dpdk-pcapng-path.patch (renamed from support/dpdk/dpdk-21.11.4-dpdk-pcapng-path.patch)6
-rw-r--r--support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-app.patch11
-rw-r--r--support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-c.patch (renamed from support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-c.patch)42
-rw-r--r--support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-h.patch (renamed from support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-h.patch)8
-rw-r--r--support/dpdk/dpdk-23.11.1-fix-af-packet-run-as-slave-of-bond.patch (renamed from support/dpdk/dpdk-21.11.4-fix-af-packet-run-as-slave-of-bond.patch)16
-rw-r--r--support/dpdk/dpdk-23.11.1-fix-dup-msl-name-sec-process.patch (renamed from support/dpdk/dpdk-21.11.4-fix-dup-msl-name-sec-process.patch)14
-rw-r--r--support/dpdk/dpdk-23.11.1-fix-legacy_mem_init.patch10
-rw-r--r--support/dpdk/dpdk-23.11.1-fm10k-rxtx-vec.patch12
-rw-r--r--support/dpdk/dpdk-23.11.1-mempool-ops-get-count.patch10
-rw-r--r--support/dpdk/dpdk-23.11.1-memzone-namesize.patch (renamed from support/dpdk/dpdk-21.11.4-memzone-namesize.patch)6
-rw-r--r--support/dpdk/dpdk-23.11.1-mlx5_glue_dlopen_info.patch24
-rw-r--r--support/dpdk/dpdk-23.11.1-mp-max-fds.patch (renamed from support/dpdk/dpdk-21.11.4-mp-max-fds.patch)6
-rw-r--r--support/dpdk/dpdk-23.11.1-revert-fix-devargs-in-secondary-process.patch36
-rw-r--r--[-rwxr-xr-x]support/dpdk/dpdk-23.11.1.tar.xz (renamed from support/dpdk/dpdk-21.11.4.tar.xz)bin15166036 -> 16291592 bytes
-rwxr-xr-xsupport/dpdk/dpdk-config-set.sh6
24 files changed, 193 insertions, 138 deletions
diff --git a/support/dpdk/dpdk-21.11.4-dpdk-hugepages-path.patch b/support/dpdk/dpdk-21.11.4-dpdk-hugepages-path.patch
deleted file mode 100644
index aec7534..0000000
--- a/support/dpdk/dpdk-21.11.4-dpdk-hugepages-path.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- dpdk-stable-21.11.4/usertools/dpdk-hugepages.py 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/usertools/dpdk-hugepages.py 2023-06-26 07:51:06.843528457 -0400
-@@ -14,7 +14,7 @@ from math import log2
- BINARY_PREFIX = "KMG"
-
- # systemd mount point for huge pages
--HUGE_MOUNT = "/dev/hugepages"
-+HUGE_MOUNT = "/var/run/mrzcpd/huge_pages"
-
-
- def fmt_memsize(kb):
diff --git a/support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-app.patch b/support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-app.patch
deleted file mode 100644
index d115246..0000000
--- a/support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-app.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- dpdk-stable-21.11.4/app/dumpcap/main.c 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/app/dumpcap/main.c 2024-07-04 06:40:31.827021420 -0400
-@@ -690,7 +690,7 @@ static void enable_pdump(struct rte_ring
- }
-
- ret = rte_pdump_enable_bpf(intf->port, RTE_PDUMP_ALL_QUEUES,
-- flags, snaplen,
-+ flags, snaplen, 0,
- r, mp, bpf_prm);
- if (ret < 0)
- rte_exit(EXIT_FAILURE,
diff --git a/support/dpdk/dpdk-21.11.4-extend-max-virtqueue-pairs.patch b/support/dpdk/dpdk-21.11.4-extend-max-virtqueue-pairs.patch
deleted file mode 100644
index 2bab48d..0000000
--- a/support/dpdk/dpdk-21.11.4-extend-max-virtqueue-pairs.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- dpdk-stable-21.11.4/drivers/net/virtio/virtio.h 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/drivers/net/virtio/virtio.h 2023-06-26 07:55:50.537496443 -0400
-@@ -127,7 +127,7 @@
- /*
- * Maximum number of virtqueues per device.
- */
--#define VIRTIO_MAX_VIRTQUEUE_PAIRS 8
-+#define VIRTIO_MAX_VIRTQUEUE_PAIRS 32
- #define VIRTIO_MAX_VIRTQUEUES (VIRTIO_MAX_VIRTQUEUE_PAIRS * 2 + 1)
-
- /* VirtIO device IDs. */
diff --git a/support/dpdk/dpdk-21.11.4-fm10k-rxtx-vec.patch b/support/dpdk/dpdk-21.11.4-fm10k-rxtx-vec.patch
deleted file mode 100644
index fd50829..0000000
--- a/support/dpdk/dpdk-21.11.4-fm10k-rxtx-vec.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- dpdk-stable-21.11.4/drivers/net/fm10k/meson.build 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/drivers/net/fm10k/meson.build 2023-06-26 08:03:51.289052958 -0400
-@@ -14,8 +14,6 @@ sources = files(
- 'fm10k_ethdev.c',
- 'fm10k_rxtx.c',
- )
--if arch_subdir == 'x86'
-- sources += files('fm10k_rxtx_vec.c')
--endif
-+
-
- includes += include_directories('base')
diff --git a/support/dpdk/dpdk-21.11.4-macro-adjust.patch b/support/dpdk/dpdk-21.11.4-macro-adjust.patch
deleted file mode 100644
index 0b672e6..0000000
--- a/support/dpdk/dpdk-21.11.4-macro-adjust.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- dpdk-stable-21.11.4/config/rte_config.h 2023-05-17 19:27:18.000000000 +0800
-+++ dpdk-stable-21.11.4-mr4/config/rte_config.h 2023-12-26 17:01:15.180144454 +0800
-@@ -34,7 +34,7 @@
- #define RTE_MAX_MEM_MB_PER_LIST 32768
- #define RTE_MAX_MEMSEG_PER_TYPE 32768
- #define RTE_MAX_MEM_MB_PER_TYPE 65536
--#define RTE_MAX_MEMZONE 2560
-+#define RTE_MAX_MEMZONE 51200
- #define RTE_MAX_TAILQ 32
- #define RTE_LOG_DP_LEVEL RTE_LOG_INFO
- #define RTE_MAX_VFIO_CONTAINERS 64
-@@ -99,7 +99,7 @@
-
- /* rte_graph defines */
- #define RTE_GRAPH_BURST_SIZE 256
--#define RTE_LIBRTE_GRAPH_STATS 1
-+#define RTE_LIBRTE_GRAPH_STATS 0
-
- /****** driver defines ********/
diff --git a/support/dpdk/dpdk-21.11.4-mempool-ops-get-count.patch b/support/dpdk/dpdk-21.11.4-mempool-ops-get-count.patch
deleted file mode 100644
index aadac18..0000000
--- a/support/dpdk/dpdk-21.11.4-mempool-ops-get-count.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- dpdk-stable-21.11.4/lib/mempool/version.map 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/mempool/version.map 2023-06-26 08:05:23.115396557 -0400
-@@ -31,6 +31,7 @@ DPDK_22 {
- rte_mempool_register_ops;
- rte_mempool_set_ops_byname;
- rte_mempool_walk;
-+ rte_mempool_ops_get_count;
-
- local: *;
- };
diff --git a/support/dpdk/dpdk-21.11.4-bypass-flow-err-func.patch b/support/dpdk/dpdk-23.11.1-bypass-flow-err-func.patch
index 63d8c60..0783861 100644
--- a/support/dpdk/dpdk-21.11.4-bypass-flow-err-func.patch
+++ b/support/dpdk/dpdk-23.11.1-bypass-flow-err-func.patch
@@ -1,6 +1,6 @@
---- dpdk-stable-21.11.4/lib/ethdev/rte_flow.c 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/ethdev/rte_flow.c 2023-06-26 07:36:38.124747070 -0400
-@@ -310,12 +310,14 @@ fts_exit(struct rte_eth_dev *dev)
+--- dpdk-stable-23.11.1/lib/ethdev/rte_flow.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/ethdev/rte_flow.c 2024-07-12 15:50:28.645305362 +0800
+@@ -321,12 +321,14 @@
static int
flow_err(uint16_t port_id, int ret, struct rte_flow_error *error)
{
diff --git a/support/dpdk/dpdk-21.11.4-dpdk-devbind-dump.patch b/support/dpdk/dpdk-23.11.1-dpdk-devbind-dump.patch
index e4b4026..0919c23 100644
--- a/support/dpdk/dpdk-21.11.4-dpdk-devbind-dump.patch
+++ b/support/dpdk/dpdk-23.11.1-dpdk-devbind-dump.patch
@@ -1,6 +1,6 @@
---- dpdk-stable-21.11.4/usertools/dpdk-devbind.py 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/usertools/dpdk-devbind.py 2023-06-26 07:47:31.226072861 -0400
-@@ -8,6 +8,7 @@ import os
+--- dpdk-stable-23.11.1/usertools/dpdk-devbind.py 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/usertools/dpdk-devbind.py 2024-07-12 15:50:28.665305357 +0800
+@@ -8,6 +8,7 @@
import subprocess
import argparse
import platform
@@ -8,7 +8,7 @@
from glob import glob
from os.path import exists, basename
-@@ -95,6 +96,7 @@ loaded_modules = None
+@@ -103,6 +104,7 @@
# command-line arg flags
b_flag = None
status_flag = False
@@ -16,7 +16,7 @@
force_flag = False
args = []
-@@ -577,6 +579,11 @@ def show_device_status(devices_type, dev
+@@ -585,6 +587,11 @@
display_devices("%s devices using kernel driver" % device_name, kernel_drv,
if_text + "drv=%(Driver_str)s "
"unused=%(Module_str)s %(Active)s")
@@ -28,7 +28,7 @@
if no_drv:
display_devices("Other %s devices" % device_name, no_drv,
"unused=%(Module_str)s")
-@@ -635,6 +642,8 @@ def parse_args():
+@@ -646,6 +653,8 @@
global status_dev
global force_flag
global args
@@ -37,7 +37,7 @@
parser = argparse.ArgumentParser(
description='Utility to bind and unbind devices from Linux kernel',
-@@ -649,6 +658,9 @@ To display current device status:
+@@ -660,6 +669,9 @@
To display current network device status:
%(prog)s --status-dev net
@@ -47,19 +47,18 @@
To bind eth1 from the current driver and move to use vfio-pci
%(prog)s --bind=vfio-pci eth1
-@@ -669,6 +681,11 @@ To bind 0000:02:00.0 and 0000:02:00.1 to
- help="Print the status of given device group.",
- choices=['baseband', 'compress', 'crypto', 'dma', 'event',
- 'mempool', 'misc', 'net', 'regex'])
-+ parser.add_argument(
+@@ -671,6 +683,10 @@
+ """)
+
+ parser.add_argument(
+ '-d',
+ '--dump',
+ help="Dump the status of kernel net group.")
-+
- bind_group = parser.add_mutually_exclusive_group()
- bind_group.add_argument(
- '-b',
-@@ -701,6 +718,9 @@ For devices bound to Linux kernel driver
++ parser.add_argument(
+ '-s',
+ '--status',
+ action='store_true',
+@@ -712,6 +728,9 @@
if opt.status_dev:
status_flag = True
status_dev = opt.status_dev
diff --git a/support/dpdk/dpdk-23.11.1-dpdk-hugepages-path.patch b/support/dpdk/dpdk-23.11.1-dpdk-hugepages-path.patch
new file mode 100644
index 0000000..540d97b
--- /dev/null
+++ b/support/dpdk/dpdk-23.11.1-dpdk-hugepages-path.patch
@@ -0,0 +1,11 @@
+--- dpdk-stable-23.11.1/usertools/dpdk-hugepages.py 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/usertools/dpdk-hugepages.py 2024-07-12 15:50:28.665305357 +0800
+@@ -14,7 +14,7 @@
+ BINARY_PREFIX = "KMG"
+
+ # systemd mount point for huge pages
+-HUGE_MOUNT = "/dev/hugepages"
++HUGE_MOUNT = "/var/run/mrzcpd/huge_pages"
+
+
+ def fmt_memsize(kb):
diff --git a/support/dpdk/dpdk-21.11.4-dpdk-pcapng-path.patch b/support/dpdk/dpdk-23.11.1-dpdk-pcapng-path.patch
index 859df2a..fca9039 100644
--- a/support/dpdk/dpdk-21.11.4-dpdk-pcapng-path.patch
+++ b/support/dpdk/dpdk-23.11.1-dpdk-pcapng-path.patch
@@ -1,6 +1,6 @@
---- dpdk-stable-21.11.4/lib/pcapng/rte_pcapng.c 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/pcapng/rte_pcapng.c 2023-06-26 07:53:17.116595350 -0400
-@@ -214,10 +214,11 @@ pcapng_add_interface(rte_pcapng_t *self,
+--- dpdk-stable-23.11.1/lib/pcapng/rte_pcapng.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/pcapng/rte_pcapng.c 2024-07-12 15:50:28.665305357 +0800
+@@ -236,10 +236,11 @@
"%s-%s", dev->bus->name, dev->name);
/* DPDK reports in units of Mbps */
diff --git a/support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-app.patch b/support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-app.patch
new file mode 100644
index 0000000..d04ab24
--- /dev/null
+++ b/support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-app.patch
@@ -0,0 +1,11 @@
+--- dpdk-stable-23.11.1/app/dumpcap/main.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/app/dumpcap/main.c 2024-07-12 17:27:43.823952740 +0800
+@@ -804,7 +804,7 @@
+
+ TAILQ_FOREACH(intf, &interfaces, next) {
+ ret = rte_pdump_enable_bpf(intf->port, RTE_PDUMP_ALL_QUEUES,
+- flags, intf->opts.snap_len,
++ flags, intf->opts.snap_len, 0,
+ r, mp, intf->bpf_prm);
+ if (ret < 0) {
+ const struct interface *intf2;
diff --git a/support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-c.patch b/support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-c.patch
index 8d9dc9f..9f324b0 100644
--- a/support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-c.patch
+++ b/support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-c.patch
@@ -1,6 +1,6 @@
---- dpdk-stable-21.11.4/lib/pdump/rte_pdump.c 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/pdump/rte_pdump.c 2024-07-04 06:26:13.010421593 -0400
-@@ -46,6 +46,7 @@ struct pdump_request {
+--- dpdk-stable-23.11.1/lib/pdump/rte_pdump.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/pdump/rte_pdump.c 2024-07-12 17:27:43.833952738 +0800
+@@ -47,6 +47,7 @@
const struct rte_bpf_prm *prm;
uint32_t snaplen;
@@ -8,7 +8,7 @@
};
struct pdump_response {
-@@ -61,6 +62,7 @@ static struct pdump_rxtx_cbs {
+@@ -62,6 +63,7 @@
const struct rte_bpf *filter;
enum pdump_version ver;
uint32_t snaplen;
@@ -16,7 +16,7 @@
} rx_cbs[RTE_MAX_ETHPORTS][RTE_MAX_QUEUES_PER_PORT],
tx_cbs[RTE_MAX_ETHPORTS][RTE_MAX_QUEUES_PER_PORT];
-@@ -96,7 +98,25 @@ pdump_copy(uint16_t port_id, uint16_t qu
+@@ -96,7 +98,25 @@
uint64_t rcs[nb_pkts];
if (cbs->filter)
@@ -41,9 +41,9 @@
+ }
+
- ts = rte_get_tsc_cycles();
ring = cbs->ring;
-@@ -172,7 +192,7 @@ pdump_register_rx_callbacks(enum pdump_v
+ mp = cbs->mp;
+@@ -171,7 +191,7 @@
uint16_t end_q, uint16_t port, uint16_t queue,
struct rte_ring *ring, struct rte_mempool *mp,
struct rte_bpf *filter,
@@ -52,7 +52,7 @@
{
uint16_t qid;
-@@ -192,6 +212,7 @@ pdump_register_rx_callbacks(enum pdump_v
+@@ -191,6 +211,7 @@
cbs->mp = mp;
cbs->snaplen = snaplen;
cbs->filter = filter;
@@ -60,7 +60,7 @@
cbs->cb = rte_eth_add_first_rx_callback(port, qid,
pdump_rx, cbs);
-@@ -229,7 +250,7 @@ pdump_register_tx_callbacks(enum pdump_v
+@@ -228,7 +249,7 @@
uint16_t end_q, uint16_t port, uint16_t queue,
struct rte_ring *ring, struct rte_mempool *mp,
struct rte_bpf *filter,
@@ -69,7 +69,7 @@
{
uint16_t qid;
-@@ -250,6 +271,7 @@ pdump_register_tx_callbacks(enum pdump_v
+@@ -249,6 +270,7 @@
cbs->mp = mp;
cbs->snaplen = snaplen;
cbs->filter = filter;
@@ -77,7 +77,7 @@
cbs->cb = rte_eth_add_tx_callback(port, qid, pdump_tx,
cbs);
-@@ -368,7 +390,7 @@ set_pdump_rxtx_cbs(const struct pdump_re
+@@ -367,7 +389,7 @@
end_q = (queue == RTE_PDUMP_ALL_QUEUES) ? nb_rx_q : queue + 1;
ret = pdump_register_rx_callbacks(p->ver, end_q, port, queue,
ring, mp, filter,
@@ -86,7 +86,7 @@
if (ret < 0)
return ret;
}
-@@ -378,7 +400,7 @@ set_pdump_rxtx_cbs(const struct pdump_re
+@@ -377,7 +399,7 @@
end_q = (queue == RTE_PDUMP_ALL_QUEUES) ? nb_tx_q : queue + 1;
ret = pdump_register_tx_callbacks(p->ver, end_q, port, queue,
ring, mp, filter,
@@ -95,7 +95,7 @@
if (ret < 0)
return ret;
}
-@@ -524,6 +546,7 @@ pdump_validate_port(uint16_t port, char
+@@ -523,6 +545,7 @@
static int
pdump_prepare_client_request(const char *device, uint16_t queue,
uint32_t flags, uint32_t snaplen,
@@ -103,7 +103,7 @@
uint16_t operation,
struct rte_ring *ring,
struct rte_mempool *mp,
-@@ -555,6 +578,7 @@ pdump_prepare_client_request(const char
+@@ -554,6 +577,7 @@
req->mp = mp;
req->prm = prm;
req->snaplen = snaplen;
@@ -111,7 +111,7 @@
}
rte_strscpy(mp_req.name, PDUMP_MP, RTE_MP_MAX_NAME_LEN);
-@@ -583,7 +607,7 @@ pdump_prepare_client_request(const char
+@@ -583,7 +607,7 @@
*/
static int
pdump_enable(uint16_t port, uint16_t queue,
@@ -120,7 +120,7 @@
struct rte_ring *ring, struct rte_mempool *mp,
const struct rte_bpf_prm *prm)
{
-@@ -603,7 +627,7 @@ pdump_enable(uint16_t port, uint16_t que
+@@ -603,7 +627,7 @@
if (snaplen == 0)
snaplen = UINT32_MAX;
@@ -129,7 +129,7 @@
ENABLE, ring, mp, prm);
}
-@@ -613,23 +637,24 @@ rte_pdump_enable(uint16_t port, uint16_t
+@@ -613,23 +637,24 @@
struct rte_mempool *mp,
void *filter __rte_unused)
{
@@ -157,7 +157,7 @@
uint32_t flags, uint32_t snaplen,
struct rte_ring *ring,
struct rte_mempool *mp,
-@@ -647,7 +672,7 @@ pdump_enable_by_deviceid(const char *dev
+@@ -647,7 +672,7 @@
if (snaplen == 0)
snaplen = UINT32_MAX;
@@ -166,7 +166,7 @@
ENABLE, ring, mp, prm);
}
-@@ -658,18 +683,19 @@ rte_pdump_enable_by_deviceid(char *devic
+@@ -658,18 +683,19 @@
struct rte_mempool *mp,
void *filter __rte_unused)
{
@@ -188,7 +188,7 @@
ring, mp, prm);
}
-@@ -686,7 +712,7 @@ rte_pdump_disable(uint16_t port, uint16_
+@@ -686,7 +712,7 @@
if (ret < 0)
return ret;
@@ -197,7 +197,7 @@
DISABLE, NULL, NULL, NULL);
return ret;
-@@ -702,7 +728,7 @@ rte_pdump_disable_by_deviceid(char *devi
+@@ -702,7 +728,7 @@
if (ret < 0)
return ret;
diff --git a/support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-h.patch b/support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-h.patch
index ad426cd..b1b82f7 100644
--- a/support/dpdk/dpdk-21.11.4-dpdk-pdum-offset-h.patch
+++ b/support/dpdk/dpdk-23.11.1-dpdk-pdum-offset-h.patch
@@ -1,6 +1,6 @@
---- dpdk-stable-21.11.4/lib/pdump/rte_pdump.h 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/pdump/rte_pdump.h 2024-07-04 06:26:16.303397053 -0400
-@@ -114,6 +114,7 @@ __rte_experimental
+--- dpdk-stable-23.11.1/lib/pdump/rte_pdump.h 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/pdump/rte_pdump.h 2024-07-12 17:27:43.833952738 +0800
+@@ -109,6 +109,7 @@
int
rte_pdump_enable_bpf(uint16_t port_id, uint16_t queue,
uint32_t flags, uint32_t snaplen,
@@ -8,7 +8,7 @@
struct rte_ring *ring,
struct rte_mempool *mp,
const struct rte_bpf_prm *prm);
-@@ -201,6 +202,7 @@ __rte_experimental
+@@ -192,6 +193,7 @@
int
rte_pdump_enable_bpf_by_deviceid(const char *device_id, uint16_t queue,
uint32_t flags, uint32_t snaplen,
diff --git a/support/dpdk/dpdk-21.11.4-fix-af-packet-run-as-slave-of-bond.patch b/support/dpdk/dpdk-23.11.1-fix-af-packet-run-as-slave-of-bond.patch
index b0321aa..1a42f5c 100644
--- a/support/dpdk/dpdk-21.11.4-fix-af-packet-run-as-slave-of-bond.patch
+++ b/support/dpdk/dpdk-23.11.1-fix-af-packet-run-as-slave-of-bond.patch
@@ -1,13 +1,13 @@
---- dpdk-stable-21.11.4/drivers/net/af_packet/rte_eth_af_packet.c 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/drivers/net/af_packet/rte_eth_af_packet.c 2023-06-26 07:58:57.931154196 -0400
-@@ -322,25 +322,7 @@ eth_dev_start(struct rte_eth_dev *dev)
+--- dpdk-stable-23.11.1/drivers/net/af_packet/rte_eth_af_packet.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/drivers/net/af_packet/rte_eth_af_packet.c 2024-07-12 17:27:43.833952738 +0800
+@@ -330,28 +330,6 @@
static int
eth_dev_stop(struct rte_eth_dev *dev)
{
- unsigned i;
- int sockfd;
- struct pmd_internals *internals = dev->data->dev_private;
-
+-
- for (i = 0; i < internals->nb_queues; i++) {
- sockfd = internals->rx_queue[i].sockfd;
- if (sockfd != -1)
@@ -22,11 +22,14 @@
-
- internals->rx_queue[i].sockfd = -1;
- internals->tx_queue[i].sockfd = -1;
+- dev->data->rx_queue_state[i] = RTE_ETH_QUEUE_STATE_STOPPED;
+- dev->data->tx_queue_state[i] = RTE_ETH_QUEUE_STATE_STOPPED;
- }
-
+-
dev->data->dev_link.link_status = RTE_ETH_LINK_DOWN;
return 0;
-@@ -445,6 +427,25 @@ eth_dev_close(struct rte_eth_dev *dev)
+ }
+@@ -455,6 +433,24 @@
internals = dev->data->dev_private;
req = &internals->req;
@@ -48,7 +51,6 @@
+ internals->tx_queue[q].sockfd = -1;
+ }
+
-+
for (q = 0; q < internals->nb_queues; q++) {
munmap(internals->rx_queue[q].map,
2 * req->tp_block_size * req->tp_block_nr);
diff --git a/support/dpdk/dpdk-21.11.4-fix-dup-msl-name-sec-process.patch b/support/dpdk/dpdk-23.11.1-fix-dup-msl-name-sec-process.patch
index 6491480..4191e59 100644
--- a/support/dpdk/dpdk-21.11.4-fix-dup-msl-name-sec-process.patch
+++ b/support/dpdk/dpdk-23.11.1-fix-dup-msl-name-sec-process.patch
@@ -1,6 +1,14 @@
---- dpdk-stable-21.11.4/lib/eal/linux/eal_memalloc.c 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/eal/linux/eal_memalloc.c 2023-06-26 08:01:31.809052011 -0400
-@@ -1420,8 +1420,8 @@ secondary_msl_create_walk(const struct r
+--- dpdk-stable-23.11.1/lib/eal/linux/eal_memalloc.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/eal/linux/eal_memalloc.c 2024-07-12 17:27:43.833952738 +0800
+@@ -7,6 +7,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <stdint.h>
++#include <inttypes.h>
+ #include <string.h>
+ #include <sys/mman.h>
+ #include <sys/stat.h>
+@@ -1447,8 +1448,8 @@
local_msl = &local_memsegs[msl_idx];
/* create distinct fbarrays for each secondary */
diff --git a/support/dpdk/dpdk-23.11.1-fix-legacy_mem_init.patch b/support/dpdk/dpdk-23.11.1-fix-legacy_mem_init.patch
new file mode 100644
index 0000000..e5bcc4d
--- /dev/null
+++ b/support/dpdk/dpdk-23.11.1-fix-legacy_mem_init.patch
@@ -0,0 +1,10 @@
+--- dpdk-stable-23.11.1/lib/eal/linux/eal_memory.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/eal/linux/eal_memory.c 2024-07-19 16:16:13.738740472 +0800
+@@ -1471,6 +1471,7 @@
+ /* this is an unused list, deallocate it */
+ mem_sz = msl->len;
+ munmap(msl->base_va, mem_sz);
++ msl->len = 0;
+ msl->base_va = NULL;
+ msl->heap = 0;
+
diff --git a/support/dpdk/dpdk-23.11.1-fm10k-rxtx-vec.patch b/support/dpdk/dpdk-23.11.1-fm10k-rxtx-vec.patch
new file mode 100644
index 0000000..09d3886
--- /dev/null
+++ b/support/dpdk/dpdk-23.11.1-fm10k-rxtx-vec.patch
@@ -0,0 +1,12 @@
+--- dpdk-stable-23.11.1/drivers/net/fm10k/meson.build 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/drivers/net/fm10k/meson.build 2024-07-12 17:27:43.843952736 +0800
+@@ -14,8 +14,6 @@
+ 'fm10k_ethdev.c',
+ 'fm10k_rxtx.c',
+ )
+-if arch_subdir == 'x86'
+- sources += files('fm10k_rxtx_vec.c')
+-endif
++
+
+ includes += include_directories('base')
diff --git a/support/dpdk/dpdk-23.11.1-mempool-ops-get-count.patch b/support/dpdk/dpdk-23.11.1-mempool-ops-get-count.patch
new file mode 100644
index 0000000..5580b51
--- /dev/null
+++ b/support/dpdk/dpdk-23.11.1-mempool-ops-get-count.patch
@@ -0,0 +1,10 @@
+--- dpdk-stable-23.11.1/lib/mempool/version.map 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/mempool/version.map 2024-07-12 17:27:43.843952736 +0800
+@@ -31,6 +31,7 @@
+ rte_mempool_register_ops;
+ rte_mempool_set_ops_byname;
+ rte_mempool_walk;
++ rte_mempool_ops_get_count;
+
+ local: *;
+ };
diff --git a/support/dpdk/dpdk-21.11.4-memzone-namesize.patch b/support/dpdk/dpdk-23.11.1-memzone-namesize.patch
index 377d37d..928da4e 100644
--- a/support/dpdk/dpdk-21.11.4-memzone-namesize.patch
+++ b/support/dpdk/dpdk-23.11.1-memzone-namesize.patch
@@ -1,6 +1,6 @@
---- dpdk-stable-21.11.4/lib/eal/include/rte_memzone.h 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/eal/include/rte_memzone.h 2023-06-26 08:07:19.550564337 -0400
-@@ -48,7 +48,7 @@ extern "C" {
+--- dpdk-stable-23.11.1/lib/eal/include/rte_memzone.h 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/eal/include/rte_memzone.h 2024-07-12 17:27:43.843952736 +0800
+@@ -47,7 +47,7 @@
*/
struct rte_memzone {
diff --git a/support/dpdk/dpdk-23.11.1-mlx5_glue_dlopen_info.patch b/support/dpdk/dpdk-23.11.1-mlx5_glue_dlopen_info.patch
new file mode 100644
index 0000000..84f92be
--- /dev/null
+++ b/support/dpdk/dpdk-23.11.1-mlx5_glue_dlopen_info.patch
@@ -0,0 +1,24 @@
+--- dpdk-stable-23.11.1/drivers/common/mlx5/linux/mlx5_common_os.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/drivers/common/mlx5/linux/mlx5_common_os.c 2024-07-17 12:03:35.232571545 +0800
+@@ -325,6 +325,11 @@
+ DRV_LOG(DEBUG, "Looking for rdma-core glue as "
+ "\"%s\"", name);
+ handle = dlopen(name, RTLD_LAZY);
++ if(!handle) {
++ dlmsg = dlerror();
++ if (dlmsg)
++ DRV_LOG(WARNING, "Cannot load glue library: %s", dlmsg);
++ }
+ break;
+ } while (1);
+ path[i] = end + 1;
+@@ -333,9 +338,6 @@
+ }
+ if (!handle) {
+ rte_errno = EINVAL;
+- dlmsg = dlerror();
+- if (dlmsg)
+- DRV_LOG(WARNING, "Cannot load glue library: %s", dlmsg);
+ goto glue_error;
+ }
+ sym = dlsym(handle, "mlx5_glue");
diff --git a/support/dpdk/dpdk-21.11.4-mp-max-fds.patch b/support/dpdk/dpdk-23.11.1-mp-max-fds.patch
index 90f94b8..7cb9cdc 100644
--- a/support/dpdk/dpdk-21.11.4-mp-max-fds.patch
+++ b/support/dpdk/dpdk-23.11.1-mp-max-fds.patch
@@ -1,6 +1,6 @@
---- dpdk-stable-21.11.4/lib/eal/include/rte_eal.h 2023-05-17 07:27:18.000000000 -0400
-+++ dpdk-stable-21.11.4-mr4/lib/eal/include/rte_eal.h 2023-06-26 08:09:03.956818093 -0400
-@@ -157,7 +157,7 @@ int rte_eal_primary_proc_alive(const cha
+--- dpdk-stable-23.11.1/lib/eal/include/rte_eal.h 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/lib/eal/include/rte_eal.h 2024-07-12 17:27:43.843952736 +0800
+@@ -155,7 +155,7 @@
*/
bool rte_mp_disable(void);
diff --git a/support/dpdk/dpdk-23.11.1-revert-fix-devargs-in-secondary-process.patch b/support/dpdk/dpdk-23.11.1-revert-fix-devargs-in-secondary-process.patch
new file mode 100644
index 0000000..d7ae26a
--- /dev/null
+++ b/support/dpdk/dpdk-23.11.1-revert-fix-devargs-in-secondary-process.patch
@@ -0,0 +1,36 @@
+--- dpdk-stable-23.11.1/drivers/bus/vdev/vdev.c 2024-05-17 14:46:11.000000000 +0800
++++ dpdk-stable-23.11.1-mr/drivers/bus/vdev/vdev.c 2024-07-18 13:45:20.751042594 +0800
+@@ -263,21 +263,6 @@
+ return devargs;
+ }
+
+-static struct rte_devargs *
+-vdev_devargs_lookup(const char *name)
+-{
+- struct rte_devargs *devargs;
+- char dev_name[32];
+-
+- RTE_EAL_DEVARGS_FOREACH("vdev", devargs) {
+- devargs->bus->parse(devargs->name, &dev_name);
+- if (strcmp(dev_name, name) == 0) {
+- VDEV_LOG(INFO, "devargs matched %s", dev_name);
+- return devargs;
+- }
+- }
+- return NULL;
+-}
+
+ static int
+ insert_vdev(const char *name, const char *args,
+@@ -291,10 +276,7 @@
+ if (name == NULL)
+ return -EINVAL;
+
+- if (rte_eal_process_type() == RTE_PROC_PRIMARY)
+- devargs = alloc_devargs(name, args);
+- else
+- devargs = vdev_devargs_lookup(name);
++ devargs = alloc_devargs(name, args);
+
+ if (!devargs)
+ return -ENOMEM;
diff --git a/support/dpdk/dpdk-21.11.4.tar.xz b/support/dpdk/dpdk-23.11.1.tar.xz
index 4b35c80..3e47cbe 100755..100644
--- a/support/dpdk/dpdk-21.11.4.tar.xz
+++ b/support/dpdk/dpdk-23.11.1.tar.xz
Binary files differ
diff --git a/support/dpdk/dpdk-config-set.sh b/support/dpdk/dpdk-config-set.sh
new file mode 100755
index 0000000..d0c760e
--- /dev/null
+++ b/support/dpdk/dpdk-config-set.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+echo 'start macro adjust'
+current_path=$(pwd)
+echo "Current work path: $current_path"
+sed 's/^\(#define RTE_LIBRTE_GRAPH_STATS \).*/\10/' -i config/rte_config.h
+echo 'macro adjust end' \ No newline at end of file