#
ae67895b |
| 08-Dec-2023 |
David Marchand <david.marchand@redhat.com> |
lib: add more logging helpers
Add helpers for logging messages in libraries instead of calling RTE_LOG() directly. Those helpers take care of adding a \n: this will make the transition to RTE_LOG_LI
lib: add more logging helpers
Add helpers for logging messages in libraries instead of calling RTE_LOG() directly. Those helpers take care of adding a \n: this will make the transition to RTE_LOG_LINE trivial.
Note: - for acl and sched libraries that still has some debug multilines messages, a direct call to RTE_LOG is used: this will make it easier to notice such special cases,
Signed-off-by: David Marchand <david.marchand@redhat.com>
show more ...
|
#
d93000bb |
| 04-Jul-2023 |
Fengnan Chang <changfengnan@bytedance.com> |
mem: fix memsegs exhausted message
When there is not enough space to memsegs, we should prompt which configuration should be modified instead of printing some numbers.
Fixes: dd61b34d580b ("mem: er
mem: fix memsegs exhausted message
When there is not enough space to memsegs, we should prompt which configuration should be modified instead of printing some numbers.
Fixes: dd61b34d580b ("mem: error if requesting more segments than MAX_MEMSEG") Fixes: 66cc45e293ed ("mem: replace memseg with memseg lists") Cc: stable@dpdk.org
Signed-off-by: Fengnan Chang <changfengnan@bytedance.com> Acked-by: Anatoly Burakov <anatoly.burakov@intel.com> Acked-by: Chengwen Feng <fengchengwen@huawei.com>
show more ...
|
#
51a5a72e |
| 29-May-2023 |
Fengnan Chang <changfengnan@bytedance.com> |
eal/linux: fix legacy mem init with many segments
Under legacy mode, if the number of continuous memsegs greater than RTE_MAX_MEMSEG_PER_LIST, eal init will failed even though another memseg list is
eal/linux: fix legacy mem init with many segments
Under legacy mode, if the number of continuous memsegs greater than RTE_MAX_MEMSEG_PER_LIST, eal init will failed even though another memseg list is empty, because only one memseg list used to check in remap_needed_hugepages. Fix this by make remap_segment return how many segments mapped, remap_segment try to map most contiguous segments it can, if it exceed its capacity, remap_needed_hugepages will continue to map other left pages.
For example: hugepage configure: cat /sys/devices/system/node/node*/hugepages/hugepages-2048kB/nr_hugepages 10241 10239
startup log: EAL: Detected memory type: socket_id:0 hugepage_sz:2097152 EAL: Detected memory type: socket_id:1 hugepage_sz:2097152 EAL: Creating 4 segment lists: n_segs:8192 socket_id:0 hugepage_sz:2097152 EAL: Creating 4 segment lists: n_segs:8192 socket_id:1 hugepage_sz:2097152 EAL: Requesting 13370 pages of size 2MB from socket 0 EAL: Requesting 7110 pages of size 2MB from socket 1 EAL: Attempting to map 14220M on socket 1 EAL: Allocated 14220M on socket 1 EAL: Attempting to map 26740M on socket 0 EAL: Could not find space for memseg. Please increase 32768 and/or 65536 in configuration. EAL: Couldn't remap hugepage files into memseg lists EAL: FATAL: Cannot init memory EAL: Cannot init memory
Fixes: 66cc45e293ed ("mem: replace memseg with memseg lists") Cc: stable@dpdk.org
Signed-off-by: Fengnan Chang <changfengnan@bytedance.com> Signed-off-by: Lin Li <lilintjpu@bytedance.com> Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
show more ...
|
#
29631ee5 |
| 04-Oct-2022 |
Min Zhou <zhoumin@loongson.cn> |
eal/loongarch: support LoongArch architecture
Add all necessary elements for DPDK to compile and run EAL on LoongArch64 Soc.
This includes:
- EAL library implementation for LoongArch ISA. - meson
eal/loongarch: support LoongArch architecture
Add all necessary elements for DPDK to compile and run EAL on LoongArch64 Soc.
This includes:
- EAL library implementation for LoongArch ISA. - meson build structure for 'loongarch' architecture. RTE_ARCH_LOONGARCH define is added for architecture identification. - xmm_t structure operation stubs as there is no vector support in the current version for LoongArch.
Compilation was tested on Debian and CentOS using loongarch64 cross-compile toolchain from x86 build hosts. Functions were tested on Loongnix and Kylin which are two Linux distributions supported LoongArch host based on Linux 4.19 maintained by Loongson Corporation.
We also tested DPDK on LoongArch with some external applications, including: Pktgen-DPDK, OVS, VPP.
The platform is currently marked as linux-only because there is no other OS than Linux support LoongArch host currently.
The i40e PMD driver is disabled on LoongArch because of the absence of vector support in the current version.
Similar to RISC-V, the compilation of following modules has been disabled by this commit and will be re-enabled in later commits as fixes are introduced: net/ixgbe, net/memif, net/tap, example/l3fwd.
Signed-off-by: Min Zhou <zhoumin@loongson.cn>
show more ...
|
#
90bf3f89 |
| 21-Apr-2022 |
Deepak Khandelwal <deepak.khandelwal@intel.com> |
mem: skip attaching external memory in secondary process
Currently, EAL init in secondary processes will attach all fbarrays in the memconfig to have access to the primary process's page tables. How
mem: skip attaching external memory in secondary process
Currently, EAL init in secondary processes will attach all fbarrays in the memconfig to have access to the primary process's page tables. However, fbarrays corresponding to external memory segments should not be attached at initialization, because this will happen as part of `rte_extmem_attach` [1] or `rte_malloc_heap_memory_attach` [2] calls.
1: https://doc.dpdk.org/api/rte__memory_8h.html#a2796da68de6825f8edf53759f8e4d230 2: https://doc.dpdk.org/api/rte__malloc_8h.html#af6360dea35bdf162feeb2b62cf149fd3
Fixes: ff3619d6244b ("malloc: allow attaching to external memory chunks") Cc: stable@dpdk.org
Suggested-by: Anatoly Burakov <anatoly.burakov@intel.com> Signed-off-by: Deepak Khandelwal <deepak.khandelwal@intel.com> Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
show more ...
|
#
30a1de10 |
| 15-Feb-2022 |
Sean Morrissey <sean.morrissey@intel.com> |
lib: remove unneeded header includes
These header includes have been flagged by the iwyu_tool and removed.
Signed-off-by: Sean Morrissey <sean.morrissey@intel.com>
|
#
52d7d91e |
| 03-Feb-2022 |
Dmitry Kozlyuk <dkozlyuk@nvidia.com> |
eal: refactor --huge-unlink storage
In preparation to extend --huge-unlink option semantics refactor how it is stored in the internal configuration. It makes future changes more isolated.
Signed-of
eal: refactor --huge-unlink storage
In preparation to extend --huge-unlink option semantics refactor how it is stored in the internal configuration. It makes future changes more isolated.
Signed-off-by: Dmitry Kozlyuk <dkozlyuk@nvidia.com> Acked-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
show more ...
|
#
99a2dd95 |
| 20-Apr-2021 |
Bruce Richardson <bruce.richardson@intel.com> |
lib: remove librte_ prefix from directory names
There is no reason for the DPDK libraries to all have 'librte_' prefix on the directory names. This prefix makes the directory names longer and also m
lib: remove librte_ prefix from directory names
There is no reason for the DPDK libraries to all have 'librte_' prefix on the directory names. This prefix makes the directory names longer and also makes it awkward to add features referring to individual libraries in the build - should the lib names be specified with or without the prefix. Therefore, we can just remove the library prefix and use the library's unique name as the directory name, i.e. 'eal' rather than 'librte_eal'
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|