path: root/config/defconfig_i686-native-linuxapp-icc
AgeCommit message (Collapse)Author
2018-04-27net/ixgbe: enable vector PMD for icc 32 bitsPablo de Lara
IXGBE vector PMD was re-enabled for 32 bits, but only for gcc. This commit enables it for icc too. Fixes: e6672d2f0f88 ("net/ixgbe: enable ixgbe vector PMD for i686") Cc: Signed-off-by: Pablo de Lara <>
2018-04-11mem: replace memseg with memseg listsAnatoly Burakov
Before, we were aggregating multiple pages into one memseg, so the number of memsegs was small. Now, each page gets its own memseg, so the list of memsegs is huge. To accommodate the new memseg list size and to keep the under-the-hood workings sane, the memseg list is now not just a single list, but multiple lists. To be precise, each hugepage size available on the system gets one or more memseg lists, per socket. In order to support dynamic memory allocation, we reserve all memory in advance (unless we're in 32-bit legacy mode, in which case we do not preallocate memory). As in, we do an anonymous mmap() of the entire maximum size of memory per hugepage size, per socket (which is limited to either RTE_MAX_MEMSEG_PER_TYPE pages or RTE_MAX_MEM_MB_PER_TYPE megabytes worth of memory, whichever is the smaller one), split over multiple lists (which are limited to either RTE_MAX_MEMSEG_PER_LIST memsegs or RTE_MAX_MEM_MB_PER_LIST megabytes per list, whichever is the smaller one). There is also a global limit of CONFIG_RTE_MAX_MEM_MB megabytes, which is mainly used for 32-bit targets to limit amounts of preallocated memory, but can be used to place an upper limit on total amount of VA memory that can be allocated by DPDK application. So, for each hugepage size, we get (by default) up to 128G worth of memory, per socket, split into chunks of up to 32G in size. The address space is claimed at the start, in eal_common_memory.c. The actual page allocation code is in eal_memalloc.c (Linux-only), and largely consists of copied EAL memory init code. Pages in the list are also indexed by address. That is, in order to figure out where the page belongs, one can simply look at base address for a memseg list. Similarly, figuring out IOVA address of a memzone is a matter of finding the right memseg list, getting offset and dividing by page size to get the appropriate memseg. This commit also removes rte_eal_dump_physmem_layout() call, according to deprecation notice [1], and removes that deprecation notice as well. On 32-bit targets due to limited VA space, DPDK will no longer spread memory to different sockets like before. Instead, it will (by default) allocate all of the memory on socket where master lcore is. To override this behavior, --socket-mem must be used. The rest of the changes are really ripple effects from the memseg change - heap changes, compile fixes, and rewrites to support fbarray-backed memseg lists. Due to earlier switch to _walk() functions, most of the changes are simple fixes, however some of the _walk() calls were switched to memseg list walk, where it made sense to do so. Additionally, we are also switching locks from flock() to fcntl(). Down the line, we will be introducing single-file segments option, and we cannot use flock() locks to lock parts of the file. Therefore, we will use fcntl() locks for legacy mem as well, in case someone is unfortunate enough to accidentally start legacy mem primary process alongside an already working non-legacy mem-based primary process. [1] Signed-off-by: Anatoly Burakov <> Tested-by: Santosh Shukla <> Tested-by: Hemant Agrawal <> Tested-by: Gowrishankar Muthukrishnan <>
2018-02-01config: replace Intel license headers with SPDX tagsBruce Richardson
Signed-off-by: Bruce Richardson <>
2017-04-04net/avp: support driver registrationAllain Legacy
Adds the initial framework for registering the driver against the support PCI device identifiers. Signed-off-by: Allain Legacy <> Signed-off-by: Matt Peters <> Acked-by: Vincent Jardin <>
2017-01-17net/sfc: libefx-based driver stubAndrew Rybchenko
Enable the PMD by default on supported configurations. Signed-off-by: Andrew Rybchenko <> Reviewed-by: Andy Moreton <> Reviewed-by: Ferruh Yigit <>
2016-10-08crypto/zuc: add driver for ZUC libraryPablo de Lara
Added new SW PMD which makes use of the libsso SW library, which provides wireless algorithms ZUC EEA3 and EIA3 in software. This PMD supports cipher-only, hash-only and chained operations ("cipher then hash" and "hash then cipher") of the following algorithms: - RTE_CRYPTO_SYM_CIPHER_ZUC_EEA3 - RTE_CRYPTO_SYM_AUTH_ZUC_EIA3 The ZUC hash and cipher algorithms, which are enabled by this crypto PMD are implemented by Intel's libsso software library. Signed-off-by: Pablo de Lara <> Acked-by: Deepak Kumar Jain <>
2016-06-20crypto/kasumi: add driver for KASUMI libraryPablo de Lara
Added new SW PMD which makes use of the libsso_kasumi SW library, which provides wireless algorithms KASUMI F8 and F9 in software. This PMD supports cipher-only, hash-only and chained operations ("cipher then hash" and "hash then cipher") of the following algorithms: - RTE_CRYPTO_SYM_CIPHER_KASUMI_F8 - RTE_CRYPTO_SYM_AUTH_KASUMI_F9 Signed-off-by: Pablo de Lara <> Acked-by: Deepak Kumar Jain <>
2016-03-11aesni_gcm: add driver for AES-GCM crypto operationsDeclan Doherty
This patch provides the implementation of an AES-NI accelerated crypto PMD which is dependent on Intel's multi-buffer library, see the white paper "Fast Multi-buffer IPsec Implementations on IntelĀ® Architecture Processors" This PMD supports AES_GCM authenticated encryption and authenticated decryption using 128-bit AES keys The patch also contains the related unit tests functions Signed-off-by: Declan Doherty <> Signed-off-by: Pablo de Lara <> Acked-by: John Griffin <>
2016-02-11config: add a common x86 flagThomas Monjalon
Intel Architecture (IA), also called x86, is declined in - i686 - x86_x32 - x86_64 The code common to all of these architectures can now be guarded by a single flag RTE_ARCH_X86. Signed-off-by: Thomas Monjalon <> Acked-by: Konstantin Ananyev <>
2014-07-19config: cleanup duplicated commentsThomas Monjalon
Comments to help on basic configuration are already located in common configs. No need to duplicate (and maintain) them in inherited configurations. Signed-off-by: Thomas Monjalon <>
2014-06-16ixgbe: new vectorized functions for Rx/TxBruce Richardson
New file containing optimized receive and transmit functions which use 128bit vector instructions to improve performance. When conditions permit, these functions will be enabled at runtime by the device initialization routines already in the PMD. The compilation of the vectorized RX and TX code paths is controlled by a new setting in the build time configuration for the IXGBE driver. Also added is a setting which allows an optional further performance increase by disabling the use of the olflags field on packet RX. Signed-off-by: Bruce Richardson <> Tested-by: XiaonanX Zhang <> Tested-by: Waterman Cao <> [Thomas: code-style adjustments] Acked-by: Thomas Monjalon <>
2014-06-11remove trailing whitespacesBruce Richardson
This commit removes trailing whitespace from lines in files. Almost all files are affected, as the BSD license copyright header had trailing whitespace on 4 lines in it [hence the number of files reporting 8 lines changed in the diffstat]. Signed-off-by: Bruce Richardson <> Acked-by: Neil Horman <> [Thomas: remove spaces before tabs in libs] [Thomas: remove more trailing spaces in non-C files] Signed-off-by: Thomas Monjalon <>
2014-05-21config: rename "default" configurations as "native"David Marchand
The "default" part in configuration filenames is misleading. Rename this as "native", as this is the RTE_MACHINE that is set in these files. This should make it clearer for people who build DPDK on a system then run it on another one. Signed-off-by: David Marchand <> Acked-by: Bruce Richardson <>