path: root/config
AgeCommit message (Collapse)Author
2018-10-27vfio: disable in FreeBSD build with mesonAgalya Babu RadhaKrishnan
FreeBSD compilation was failing through meson build. RTE_EAL_VFIO is not supported in FreeBSD. But RTE_EAL_VFIO was enabled for both linux and freebsd. So RTE_EAL_VFIO is removed from config/rte_config.h and based on the platform RTE_EAL_VFIO flag is enabled/disabled appropriately. Fixes: 844514c735 ("eal: build with meson") Cc: Signed-off-by: Agalya Babu RadhaKrishnan <> Acked-by: Bruce Richardson <>
2018-10-27build: add dependency on telemetry to apps with mesonKevin Laatz
This patch adds telemetry as a dependecy to all applications. Without these changes, the --telemetry flag will not be recognised and applications will fail to run if they want to enable telemetry. Signed-off-by: Bruce Richardson <> Signed-off-by: Kevin Laatz <> Signed-off-by: Radu Nicolau <> Acked-by: Harry van Haaren <>
2018-10-27telemetry: introduce infrastructureCiara Power
This patch adds the infrastructure and initial code for the telemetry library. The telemetry init is registered with eal_init(). We can then check to see if --telemetry was passed as an eal option. If --telemetry was parsed, then we call telemetry init at the end of eal init. Control threads are used to get CPU cycles for telemetry, which are configured in this patch also. Signed-off-by: Ciara Power <> Signed-off-by: Brian Archbold <> Signed-off-by: Kevin Laatz <> Signed-off-by: Radu Nicolau <> Acked-by: Harry van Haaren <>
2018-10-27compress/qat: enable dynamic huffman encodingFiona Trahe
Enable dynamic huffman encoding in the QAT comp PMD. Signed-off-by: Tomasz Jozwiak <> Signed-off-by: Fiona Trahe <> Acked-by: Arek Kusztal <>
2018-10-26config: rename option for C11 memory modelPhil Yang
Keep only single config option RTE_USE_C11_MEM_MODEL for C11 memory model, so all modules can leverage C11 atomic extension by enable this option. Signed-off-by: Phil Yang <> Reviewed-by: Honnappa Nagarahalli <> Reviewed-by: Gavin Hu <> Acked-by: Jerin Jacob <> Reviewed-by: Ferruh Yigit <> Signed-off-by: Thomas Monjalon <>
2018-10-18vhost: add config flag for postcopyMaxime Coquelin
Postcopy live-migration features relies on userfaultfd, which was only introduced in kernel v4.3. This patch introduces a new define to allow building vhost library on kernels not supporting userfaultfd. With legacy build system, user has to explicitly set CONFIG_RTE_LIBRTE_VHOST_POSTCOPY to 'y'. With Meson build system, RTE_LIBRTE_VHOST_POSTCOPY gets automatically defined if userfaultfd kernel header is present. Suggested-by: Ilya Maximets <> Signed-off-by: Maxime Coquelin <> Acked-by: Ilya Maximets <>
2018-10-18net/atlantic: add PMD driver skeletonPavel Belous
Makefile/meson build infrastructure, atl_ethdev minimal skeleton, header with aquantia aQtion NIC device and vendor IDs. Signed-off-by: Igor Russkikh <> Signed-off-by: Pavel Belous <>
2018-10-17crypto/caam_jr: introduce basic driverGagandeep Singh
The caam_jr poll mode crypto driver is supported for NXP SEC 4.x+ (CAAM) hardware accelerator. This driver is by default supported on LE platforms, if it is used on BE platforms like LS104X, config option CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE can be enabled. This patch add skeleton for caam jobring driver with probe and uintialisation functions Signed-off-by: Gagandeep Singh <> Signed-off-by: Hemant Agrawal <> Acked-by: Akhil Goyal <>
2018-10-17crypto/octeontx: add PMD skeletonAnoob Joseph
Adding OCTEON TX crypto PMD skeleton. Updating the maintainers files to claim responsibility. Also enabling driver by default by adding the component in common_base. Signed-off-by: Ankur Dwivedi <> Signed-off-by: Anoob Joseph <> Signed-off-by: Murthy NSSR <> Signed-off-by: Nithin Dabilpuram <> Signed-off-by: Ragothaman Jayaraman <> Signed-off-by: Srisivasubramanian S <> Signed-off-by: Tejasree Kondoj <>
2018-10-17crypto/mvsam: add dynamic loggingTomasz Duszynski
Add dynamic logging support to mvsam crypto PMD. Signed-off-by: Tomasz Duszynski <>
2018-10-16common/dpaax: add library for PA/VA translation tableShreyansh Jain
A common library, valid for dpaaX drivers, which is used to maintain a local copy of PA->VA translations. In case of physical addressing mode (one of the option for FSLMC, and only option for DPAA bus), the addresses of descriptors Rx'd are physical. These need to be converted into equivalent VA for rte_mbuf and other similar calls. Using the rte_mem_virt2iova or rte_mem_virt2phy is expensive. This library is an attempt to reduce the overall cost associated with this translation. A small table is maintained, containing continuous entries representing a continguous physical range. Each of these entries stores the equivalent VA, which is fed during mempool creation, or memory allocation/deallocation callbacks. Signed-off-by: Shreyansh Jain <>
2018-10-11net/enetc: add PMD with basic operationsGagandeep Singh
This patch introduces the enetc PMD with basic initialisation functions includes probe, teardown, hardware initialisation Signed-off-by: Gagandeep Singh <> Acked-by: Shreyansh Jain <> Reviewed-by: Ferruh Yigit <>
2018-10-11net/mvneta: add PMD skeletonZyta Szpak
Add neta pmd driver skeleton providing base for the further development. Signed-off-by: Natalie Samsonov <> Signed-off-by: Yelena Krivosheev <> Signed-off-by: Dmitri Epshtein <> Signed-off-by: Zyta Szpak <> Signed-off-by: Andrzej Ostruszka <> Reviewed-by: Ferruh Yigit <>
2018-10-11malloc: index heaps using heap ID rather than NUMA nodeAnatoly Burakov
Switch over all parts of EAL to use heap ID instead of NUMA node ID to identify heaps. Heap ID for DPDK-internal heaps is NUMA node's index within the detected NUMA node list. Heap ID for external heaps will be order of their creation. This breaks the ABI, so document the changes. Signed-off-by: Anatoly Burakov <>
2018-10-01eventdev: add eth Tx adapter implementationNikhil Rao
This patch implements the Tx adapter APIs by invoking the corresponding eventdev PMD callbacks and also provides the common rte_service function based implementation when the eventdev PMD support is absent. Signed-off-by: Nikhil Rao <>
2018-10-01event/dsw: add device registration and build systemMattias Rönnblom
This patch contains the Meson and GNU Make build system extensions required for the Distributed Event Device, and also the initialization code for the driver itself. Signed-off-by: Mattias Rönnblom <> Acked-by: Jerin Jacob <>
2018-09-19config: remove unused parameterQi Zhang
RTE_LIBRTE_I40E_ITR_INTERVAL is not used. So it should also be removed in config/rte_config.h for meson+ninja build. Fixes: 864a800d706d ("net/i40e: remove VF interrupt handler") Cc: Signed-off-by: Qi Zhang <> Acked-by: Bruce Richardson <>
2018-09-18net/qede: add in meson buildLuca Boccassi
Signed-off-by: Luca Boccassi <> Acked-by: Shahed Shaikh <>
2018-09-17build: add ppc64 meson buildLuca Boccassi
This has been only build-tested for now, on a native ppc64el POWER8E machine running Debian sid. Signed-off-by: Luca Boccassi <> Acked-by: Bruce Richardson <>
2018-09-17compat: fix symbol version support with mesonBruce Richardson
For meson builds, the define to enable the symbol version macros in rte_compat.h was missing. This led to symbols being omitted from shared objects. For example, checking with objdump and comparing make and meson built versions: $ objdump -T make-build/lib/ | grep _flush 0000000000001b60 g DF .text 00000000000000a7 (DPDK_2.0) rte_distributor_flush 0000000000003f10 g DF .text 0000000000000434 DPDK_17.05 rte_distributor_flush $ objdump -T meson-build/lib/ | grep _flush 0000000000001d50 g DF .text 00000000000000fb DPDK_2.0 rte_distributor_flush Adding in the missing define fixes this. Fixes: 5b9656b157d3 ("lib: build with meson") Cc: Reported-by: Luca Boccassi <> Signed-off-by: Bruce Richardson <> Tested-by: Luca Boccassi <>
2018-08-28ethdev: change vtune profiling approachIlia Kurakin
The patch changes rx_burst profiling approach: 1. VTune's instrumentation is removed 2. empty hook callback for profiling is added This way all VTune-specific logic moves to the VTune side. Hook is enabled only when CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE option is turned on. VTune uses this hook to attach to the polling cycle. It is not possible to attach to the rx_burst directly, as it is inline. Signed-off-by: Ilia Kurakin <> Acked-by: Keith Wiles <> Acked-by: Ferruh Yigit <>
2018-09-16build: enable ARM NEON flag when __aarch64__ definedHonnappa Nagarahalli
GCC version 4.8.5 does not pre-define __ARM_NEON. NEON is not optional for ArmV8. Hence NEON related code can be enabled when __aarch64__ is defined. Bugzilla ID: 82 Cc: Reported-by: Raslan Darawsheh <> Reported-by: Thomas F Herbert <> Signed-off-by: Honnappa Nagarahalli <> Reviewed-by: Phil Yang <> Reviewed-by: Gavin Hu <> Acked-by: Jerin Jacob <>
2018-07-25compress/octeontx: introduce octeontx zip PMDSunila Sahu
Octentx zipvf PMD provides hardware acceleration for deflate and lzs compression and decompression operations using Octeontx zip co-processor, which provide 8 virtualized zip devices. This patch add basic initialization routine to register zip VFs to compressdev library. Signed-off-by: Ashish Gupta <> Signed-off-by: Shally Verma <> Signed-off-by: Sunila Sahu <>
2018-07-25compress/zlib: introduce zlib PMDAshish Gupta
Add initial PMD setup routines in compressdev framework. ZLIB PMD appears as virtual compression device. User would need to install zlib prior to enabling this PMD. Signed-off-by: Sunila Sahu <> Signed-off-by: Shally Verma <> Signed-off-by: Ashish Gupta <>
2018-07-25compress/qat: support scatter-gather buffersFiona Trahe
This patch adds Scatter-Gather List (SGL) feature to QAT compression PMD. Signed-off-by: Tomasz Jozwiak <> Signed-off-by: Fiona Trahe <>
2018-07-24doc: add QAT compression guideFiona Trahe
Extend QAT guide to cover crypto and compression and common information, particularly about kernel driver dependency. Update release note. Update compression feature list for qat. Signed-off-by: Fiona Trahe <>
2018-07-24compress/qat: add empty driverFiona Trahe
Add Makefiles, meson files, and empty source files for compression PMD. Handle cases for building either symmetric crypto PMD or compression PMD or both and the common files both depend on. Signed-off-by: Fiona Trahe <> Signed-off-by: Tomasz Jozwiak <>
2018-07-13net/netvsc: add Hyper-V network deviceStephen Hemminger
The driver supports Hyper-V networking directly like virtio for KVM or vmxnet3 for VMware. This code is based off of the FreeBSD driver. The file and variable names are kept the same to help with understanding (with most of the BSD style warts removed). This version supports the latest NetVSP 6.1 version and older versions. Signed-off-by: Haiyang Zhang <> Signed-off-by: Stephen Hemminger <>
2018-07-13bus/vmbus: add Hyper-V virtual bus supportStephen Hemminger
This patch adds support for an additional bus type Virtual Machine BUS (VMBUS) on Microsoft Hyper-V in Windows 10, Windows Server 2016 and Azure. Most of this code was extracted from FreeBSD and some of this is from earlier code donated by Brocade. Only Linux is supported at present, but the code is split to allow future FreeBSD and Windows support. The bus support relies on the uio_hv_generic driver from Linux kernel 4.16. Multiple queue support requires additional sysfs interfaces which is in kernel 5.0 (a.k.a 4.17). Signed-off-by: Stephen Hemminger <>
2018-07-12net/softnic: add connection agentJasvinder Singh
Add connection agent to enable connectivity with external agent (e.g. telnet, netcat, Python script, etc). Signed-off-by: Cristian Dumitrescu <> Signed-off-by: Jasvinder Singh <>
2018-07-12bus/dpaa2: fix default IOVA setting for meson buildsBruce Richardson
By default, the DPAA2_USE_PHYS_IOVA setting with the make build-system is "y", which is overridden to "n" in the config file specifically for the arm64-dpaa2-linuxapp-gcc builds. The lack of this setting in meson builds causes issues for 32-bit build, as the alternative code paths have compiler warnings e.g. for i686 builds. Therefore we should align the meson and make settings, setting the value to "true" by default and overriding it to "false" for dpaa2-specific builds. Fixes: 6ec78c2463ac ("build: add meson support for dpaaX platforms") Signed-off-by: Bruce Richardson <> Acked-by: Hemant Agrawal <>
2018-07-12build: disable pointer to int warnings for 32-bitBruce Richardson
Converting a 32-bit pointer to a 64-bit integer is generally safe, but generates a lot of warnings when compiling 32-bit code with meson. The warnings are not flagged when using make, so just disable them for 32-bit meson builds. Signed-off-by: Bruce Richardson <> Acked-by: Hemant Agrawal <>
2018-07-06eventdev: add interrupt driven queues to Rx adapterNikhil Rao
Add support for interrupt driven queues when eth device is configured for rxq interrupts and servicing weight for the queue is configured to be zero. A interrupt driven packet received counter has been added to rte_event_eth_rx_adapter_stats. Signed-off-by: Nikhil Rao <>
2018-07-11build: fix for host clang and cross gccGavin Hu
The following error hits if host cc compiler is clang(default one in most linux distributions) and the cross compiler is gcc. The root cause is: the hybride compilers add the warning options to the meson project as project arguments, which apply for both host compiling and cross compiling. But some options such as '-Wno-format-truncation' are not supported nor recognized by clang, so they have to be removed from the project arguments for the host compiler to run smoothily and added back as cflags for the cross compiler to compile for cross source files. The fix is remove unrecognized warning options from the meson project arguments shared by gcc and clang, as add them specifically for gcc or clang as cflags. [265/893] Compiling C object 'buildtools/pmdinfogen/pmdinfogen@exe/pmdinfogen.c.o'. warning: unknown warning option '-Wno-format-truncation' [-Wunknown-warning-option] Fixes: a55277a788 ("devtools: add test script for meson builds") Cc: Signed-off-by: Gavin Hu <> Reviewed-by: Phil Yang <> Reviewed-by: Song Zhu <> Reviewed-by: Steve Capper <> Acked-by: Bruce Richardson <>
2018-07-11build: fix meson warningGavin Hu
This is to fix the unnecessary warning output, it is not consistent with the configurations of other platforms. WARNING: Cross file does not specify strip binary, result will not be stripped. Fixes: e53a5299d2 ("build: support vendor specific ARM cross builds") Cc: Signed-off-by: Gavin Hu <> Reviewed-by: Phil Yang <> Reviewed-by: Song Zhu <> Acked-by: Bruce Richardson <> Acked-by: Jerin Jacob <> Tested-by: Ali Alnubani <>
2018-07-11cryptodev: remove max number of sessions parameterPablo de Lara
Most crypto PMDs do not have a limitation of the number of the sessions that can be handled internally. The value that was set before was not actually used at all, since the sessions are created at the application level. Therefore, this value is not parsed from the initial crypto parameters anymore and it is set to 0, meaning that there is no actual limit. Signed-off-by: Pablo de Lara <> Acked-by: Akhil Goyal <>
2018-07-11crypto/aesni_gcm: add dynamic loggingChaitanya Babu Talluri
Registered new dynamic logtype for driver and replaced GCM_LOG_ERR and CDEV_LOG_ERR with the new AESNI_GCM_LOG macro, which uses the new logtype. Signed-off-by: Chaitanya Babu Talluri <> Reviewed-by: Reshma Pattan <> Reviewed-by: Pablo de Lara <>
2018-07-11crypto/zuc: add dynamic loggingAgalya Babu RadhaKrishnan
Registered new dynamic logtype for driver and replaced ZUC_LOG_ERR and CDEV_LOG_ERR with the new ZUC_LOG macro, which uses the new logtype. Signed-off-by: Agalya Babu RadhaKrishnan <> Reviewed-by: Reshma Pattan <> Reviewed-by: Pablo de Lara <>
2018-07-11crypto/kasumi: add dynamic loggingNaga Suresh Somarowthu
Registered new dynamic logtype for driver and replaced KASUMI_LOG_ERR and CDEV_LOG_ERR with the new KASUMI_LOG macro, which uses the new logtype. Signed-off-by: Naga Suresh Somarowthu <> Reviewed-by: Reshma Pattan <> Reviewed-by: Pablo de Lara <>
2018-07-11crypto/aesni_mb: add dynamic loggingNaga Suresh Somarowthu
Registered new dynamic logtype for driver and replaced MB_LOG_ERR and CDEV_LOG_ERR with the new AESNI_MB_LOG macro, which uses the new logtype. Signed-off-by: Naga Suresh Somarowthu <> Reviewed-by: Reshma Pattan <> Reviewed-by: Pablo de Lara <>
2018-07-11crypto/openssl: add dynamic loggingNaga Suresh Somarowthu
Registered new dynamic logtype for driver and replaced OPENSSL_LOG_ERR and CDEV_LOG_ERR macros with new OPENSSL_LOG macro, which uses the new logtype. Signed-off-by: Naga Suresh Somarowthu <> Reviewed-by: Reshma Pattan <> Reviewed-by: Pablo de Lara <>
2018-07-11crypto/scheduler: add dynamic loggingHari Kumar
Registered new dynamic logtype for driver and replaced CS_LOG_ERR and RTE_LOG macros with new CR_SCHED macro, which uses the new logtype. Signed-off-by: Hari Kumar <> Reviewed-by: Reshma Pattan <> Reviewed-by: Pablo de Lara <>
2018-07-11cryptodev: remove debug compilation optionJananee Parthasarathy
For cryptodev dynamic logging, conditional compilation of debug logs is not actually required. Signed-off-by: Jananee Parthasarathy <> Reviewed-by: Reshma Pattan <> Reviewed-by: Pablo de Lara <>
2018-07-03net/i40e: remove VF interrupt handlerQi Zhang
For i40evf, internal rx interrupt and adminq interrupt share the same source, that cause a lot cpu cycles be wasted on interrupt handler on rx path. This is complained by customers which require low latency (when set I40E_ITR_INTERVAL to small value), but have to be sufferred by tremendous interrupts handling that eat significant CPU resources. The patch disable pci interrupt and remove the interrupt handler, replace it with a low frequency (50ms) interrupt polling daemon which is implemented by registering a alarm callback periodly, this save CPU time significently: On a typical x86 server with 2.1GHz CPU, with low latency configure (32us) we saw CPU usage from top commmand reduced from 20% to 0% on management core in testpmd). Also with the new method we can remove compile option: I40E_ITR_INTERVAL which is used to balance between low latency and low CPU usage previously. Now we don't need it since we can reach both at same time. Suggested-by: Jingjing Wu <> Signed-off-by: Qi Zhang <> Acked-by: Beilei Xing <>
2018-06-28crypto/qat: move to dynamic logging for data-path traceTomasz Jozwiak
For all trace on the data-path move to dynamic logging. Add new QAT_DP_LOG macro to separate from non-dp trace. Use the overall RTE_LOG_DP_LEVEL to override and compile out debug data-path trace. Add "unlikely" in two appropriate error checks. Signed-off-by: Tomasz Jozwiak <> Signed-off-by: Fiona Trahe <>
2018-06-28crypto/qat: move to dynamic logging for non-dp traceTomasz Jozwiak
For all trace not on the data-path move to dynamic logging. Signed-off-by: Tomasz Jozwiak <> Signed-off-by: Fiona Trahe <>
2018-06-28crypto/qat: clean up unused and useless traceTomasz Jozwiak
Removed INIT_FUNC trace and other unused macros. Signed-off-by: Tomasz Jozwiak <> Signed-off-by: Fiona Trahe <>
2018-06-28crypto/qat: remove configurable max number of sessionsTomasz Jozwiak
This patch removes CONFIG_RTE_QAT_PMD_MAX_NB_SESSIONS from common_base, config/rte_config.h files and defines QAT_SYM_PMD_MAX_NB_SESSIONS inside qat_sym_pmd.h file instead. Signed-off-by: Tomasz Jozwiak <> Acked-by: Fiona Trahe <>
2018-06-28crypto/qat: add max PCI devices to config fileFiona Trahe
Added CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES to build config files. Signed-off-by: Tomasz Jozwiak <>
2018-06-14net/ifc: make driver name consistentXiao Wang
Make the compiler switch name and document name consistent as ``ifc`` to avoid confusion. Also rename the map file to standard name for meson build in the process. Signed-off-by: Xiao Wang <> Signed-off-by: Bruce Richardson <>