diff --git a/0036-require-at-least-two-segs-per-memseg-lists-in-map-pe.patch b/0036-require-at-least-two-segs-per-memseg-lists-in-map-pe.patch new file mode 100644 index 0000000000000000000000000000000000000000..a025612a216595f7f9f36237650f6807f9c557df --- /dev/null +++ b/0036-require-at-least-two-segs-per-memseg-lists-in-map-pe.patch @@ -0,0 +1,33 @@ +From c766c3d12b1bb5e791cff3f34c733f18ce5cdd18 Mon Sep 17 00:00:00 2001 +From: jiangheng +Date: Thu, 9 May 2024 21:57:54 +0800 +Subject: [PATCH] require at least two segs per memseg lists in map-perfect + mode + +--- + lib/eal/common/eal_common_dynmem.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/lib/eal/common/eal_common_dynmem.c b/lib/eal/common/eal_common_dynmem.c +index 89e2acd..7f270a0 100644 +--- a/lib/eal/common/eal_common_dynmem.c ++++ b/lib/eal/common/eal_common_dynmem.c +@@ -229,8 +229,14 @@ eal_dynmem_memseg_lists_init(void) + "n_segs:%i socket_id:%i hugepage_sz:%" PRIu64 "\n", + n_seglists, n_segs, socket_id, pagesz); + +- if (internal_conf->map_perfect) ++ if (internal_conf->map_perfect) { + need_n_segs = eal_sec_get_num_pages(used_hp, pagesz, socket_id); ++ /* ++ * commit 51a5a72e2a (eal/linux: fix legacy mem init with many segments) require ++ * at least 2 segs per memseg list ++ */ ++ need_n_segs = RTE_MAX(2, need_n_segs); ++ } + else + need_n_segs = n_segs; + +-- +2.27.0 + diff --git a/dpdk.spec b/dpdk.spec index 5abc04680d544a6df505bdcd95eb01bf9e3b837e..0e8b12da6a5c68eed5c101af4271b2ae055ef016 100644 --- a/dpdk.spec +++ b/dpdk.spec @@ -10,7 +10,7 @@ Name: dpdk Version: 23.11 -Release: 15 +Release: 16 URL: http://dpdk.org Source: https://fast.dpdk.org/rel/dpdk-%{version}.tar.xz @@ -57,6 +57,8 @@ Patch6033: 0033-net-hns3-enable-PFC-for-all-user-priorities.patch Patch6034: 0034-app-testpmd-fix-RSS-algorithm-choice.patch Patch6035: 0035-net-hns3-support-new-device.patch +Patch9036: 0036-require-at-least-two-segs-per-memseg-lists-in-map-pe.patch + BuildRequires: meson BuildRequires: python3-pyelftools BuildRequires: diffutils @@ -257,6 +259,9 @@ strip -g $RPM_BUILD_ROOT/lib/modules/%{kern_devel_ver}/extra/dpdk/igb_uio.ko %endif %changelog +* Thu May 09 2024 jiangheng - 23.11-16 +- require at least two segs per memseg lists in map-perfect mode + * Mon May 06 2024 laokz - 23.11-15 - riscv64: Remove unsupported rte_net_i40e for gazelle-pdump