power: rename files for CPU frequency managementThis patch renames the existing core power library source filesfrom rte_power.* to rte_power_cpufreq.* for better claritySigned-off-by: Sivaprasad
power: rename files for CPU frequency managementThis patch renames the existing core power library source filesfrom rte_power.* to rte_power_cpufreq.* for better claritySigned-off-by: Sivaprasad Tummala <sivaprasad.tummala@amd.com>
show more ...
examples: move alignment attribute on types for MSVCMove location of __rte_aligned(a) to new conventional location. The newplacement between {struct,union} and the tag allows the desiredalignment
examples: move alignment attribute on types for MSVCMove location of __rte_aligned(a) to new conventional location. The newplacement between {struct,union} and the tag allows the desiredalignment to be imparted on the type regardless of the toolchain beingused for both C and C++. Additionally, it avoids confusion by Doxygenwhen generating documentation.Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>Reviewed-by: Morten Brørup <mb@smartsharesystems.com>Acked-by: Morten Brørup <mb@smartsharesystems.com>Acked-by: Akhil Goyal <gakhil@marvell.com>
power: use a dynamic logtypeUse dynamic log type for power library.Convert existing examples with either writing to stderr, or their owndynamic logtype.Signed-off-by: Stephen Hemminger <stephe
power: use a dynamic logtypeUse dynamic log type for power library.Convert existing examples with either writing to stderr, or their owndynamic logtype.Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>Acked-by: David Hunt <david.hunt@intel.com>
examples: remove unnecessary null checksThe function rte_free() already handles NULL argument;therefore the checks in this code are unnecessary.Signed-off-by: Stephen Hemminger <stephen@networkp
examples: remove unnecessary null checksThe function rte_free() already handles NULL argument;therefore the checks in this code are unnecessary.Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
examples/distributor: update dynamic configurationIn this patch, * It is possible to switch the running mode of the distributorusing the command line argument. * With "-c" parameter, you c
examples/distributor: update dynamic configurationIn this patch, * It is possible to switch the running mode of the distributorusing the command line argument. * With "-c" parameter, you can run RX and Distributoron the same core. * Without "-c" parameter, you can run RX and Distributoron the different core. * Consecutive termination of the lcores fixed.The termination order was wrong, and you couldn't terminate theapplication while traffic was capturing. The current order isRX -> Distributor -> TX -> Workers * When "-c" parameter is active, the wasted distributor core isalso deactivated in the main function.Signed-off-by: Abdullah Ömer Yamaç <omer.yamac@ceng.metu.edu.tr>
drivers/bus: set device NUMA node to unknown by defaultThe dev->device.numa_node field is set by each bus driver forevery device it manages to indicate on which NUMA node this device lies.When t
drivers/bus: set device NUMA node to unknown by defaultThe dev->device.numa_node field is set by each bus driver forevery device it manages to indicate on which NUMA node this device lies.When this information is unknown, the assigned value is not consistentacross the bus drivers.Set the default value to SOCKET_ID_ANY (-1) by all bus driverswhen the NUMA information is unavailable. This change impactsrte_eth_dev_socket_id() in the same manner.Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
eal: remove unneeded includes from a public headerDo not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>,because they are not used by this file.Include the needed headers directl
eal: remove unneeded includes from a public headerDo not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>,because they are not used by this file.Include the needed headers directly from the files that need them.Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>Acked-by: Bruce Richardson <bruce.richardson@intel.com>
examples/distributor: fix distributor on Rx coreThis patch fixes the syntax error when using the single-corefor both Rx and distributor functions.Fixes: 4a7f40c0ff9a ("examples/distributor: add
examples/distributor: fix distributor on Rx coreThis patch fixes the syntax error when using the single-corefor both Rx and distributor functions.Fixes: 4a7f40c0ff9a ("examples/distributor: add dedicated core")Cc: stable@dpdk.orgSigned-off-by: Abdullah Ömer Yamaç <omer.yamac@ceng.metu.edu.tr>Acked-by: Ferruh Yigit <ferruh.yigit@xilinx.com>Tested-by: David Hunt <david.hunt@intel.com>
examples/distributor: reduce Tx queue number to 1Distributor application creates one Tx queue per core. Howeverthe transmit is done only from a single core. Hence creatingone Tx queue is enough.
examples/distributor: reduce Tx queue number to 1Distributor application creates one Tx queue per core. Howeverthe transmit is done only from a single core. Hence creatingone Tx queue is enough.Fixes: 07db4a975094 ("examples/distributor: new sample app")Cc: stable@dpdk.orgSigned-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>Acked-by: Bruce Richardson <bruce.richardson@intel.com>
examples: skip build when missing dependenciesTrying to disable the vhost library, meson will complain it can't buildthe vhost* and vdpa examples when passing -Dexamples=all.-Dexamples=all skips
examples: skip build when missing dependenciesTrying to disable the vhost library, meson will complain it can't buildthe vhost* and vdpa examples when passing -Dexamples=all.-Dexamples=all skips examples if the example itself announces it can'tbe built (for external dependencies, internal dependencies and otherreasons).Since examples/meson.build will evaluate the internal dependenciesin any case, let's move the check there and resolve the issue foroptional internal libraries.Fixes: 0bf583222297 ("lib: allow disabling optional libraries")Signed-off-by: David Marchand <david.marchand@redhat.com>Acked-by: Bruce Richardson <bruce.richardson@intel.com>
ethdev: add namespaceAdd 'RTE_ETH' namespace to all enums & macros in a backward compatibleway. The macros for backward compatibility can be removed in next LTS.Also updated some struct names to
ethdev: add namespaceAdd 'RTE_ETH' namespace to all enums & macros in a backward compatibleway. The macros for backward compatibility can be removed in next LTS.Also updated some struct names to have 'rte_eth' prefix.All internal components switched to using new names.Syntax fixed on lines that this patch touches.Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>Acked-by: Jerin Jacob <jerinj@marvell.com>Acked-by: Wisam Jaddo <wisamm@nvidia.com>Acked-by: Rosen Xu <rosen.xu@intel.com>Acked-by: Chenbo Xia <chenbo.xia@intel.com>Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>Acked-by: Somnath Kotur <somnath.kotur@broadcom.com>
ethdev: fix max Rx packet lengthThere is a confusion on setting max Rx packet length, this patch aims toclarify it.'rte_eth_dev_configure()' API accepts max Rx packet size via'uint32_t max_rx_p
ethdev: fix max Rx packet lengthThere is a confusion on setting max Rx packet length, this patch aims toclarify it.'rte_eth_dev_configure()' API accepts max Rx packet size via'uint32_t max_rx_pkt_len' field of the config struct 'structrte_eth_conf'.Also 'rte_eth_dev_set_mtu()' API can be used to set the MTU, and resultstored into '(struct rte_eth_dev)->data->mtu'.These two APIs are related but they work in a disconnected way, theystore the set values in different variables which makes hard to figureout which one to use, also having two different method for a relatedfunctionality is confusing for the users.Other issues causing confusion is:* maximum transmission unit (MTU) is payload of the Ethernet frame. And 'max_rx_pkt_len' is the size of the Ethernet frame. Difference is Ethernet frame overhead, and this overhead may be different from device to device based on what device supports, like VLAN and QinQ.* 'max_rx_pkt_len' is only valid when application requested jumbo frame, which adds additional confusion and some APIs and PMDs already discards this documented behavior.* For the jumbo frame enabled case, 'max_rx_pkt_len' is an mandatory field, this adds configuration complexity for application.As solution, both APIs gets MTU as parameter, and both saves the resultin same variable '(struct rte_eth_dev)->data->mtu'. For this'max_rx_pkt_len' updated as 'mtu', and it is always valid independentfrom jumbo frame.For 'rte_eth_dev_configure()', 'dev->data->dev_conf.rxmode.mtu' is userrequest and it should be used only within configure function and resultshould be stored to '(struct rte_eth_dev)->data->mtu'. After that pointboth application and PMD uses MTU from this variable.When application doesn't provide an MTU during 'rte_eth_dev_configure()'default 'RTE_ETHER_MTU' value is used.Additional clarification done on scattered Rx configuration, inrelation to MTU and Rx buffer size.MTU is used to configure the device for physical Rx/Tx size limitation,Rx buffer is where to store Rx packets, many PMDs use mbuf data buffersize as Rx buffer size.PMDs compare MTU against Rx buffer size to decide enabling scattered Rxor not. If scattered Rx is not supported by device, MTU bigger than Rxbuffer size should fail.Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>Acked-by: Somnath Kotur <somnath.kotur@broadcom.com>Acked-by: Huisong Li <lihuisong@huawei.com>Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>Acked-by: Rosen Xu <rosen.xu@intel.com>Acked-by: Hyong Youb Kim <hyonkim@cisco.com>
net: add macro to extract MAC address bytesAdded macros to simplify print of MAC address.The six bytes of a MAC address are extracted ina macro here, to improve code readablity.Signed-off-by: A
net: add macro to extract MAC address bytesAdded macros to simplify print of MAC address.The six bytes of a MAC address are extracted ina macro here, to improve code readablity.Signed-off-by: Aman Deep Singh <aman.deep.singh@intel.com>Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
examples: fix pkg-config overrideMove pkg-config override to beginning in the Makefile to allowuse PKGCONF variable to detect the libdpdk availability.Fixes: fda34680eb9a ("examples: remove lega
examples: fix pkg-config overrideMove pkg-config override to beginning in the Makefile to allowuse PKGCONF variable to detect the libdpdk availability.Fixes: fda34680eb9a ("examples: remove legacy sections of makefiles")Cc: stable@dpdk.orgSigned-off-by: Jerin Jacob <jerinj@marvell.com>Acked-by: Bruce Richardson <bruce.richardson@intel.com>
examples: add eal cleanup to examplesAccording to the programming guide, the rte_eal_init should be used pairswith rte_eal_cleanup.This patch add rte_eal_cleanup to examples to encourage new use
examples: add eal cleanup to examplesAccording to the programming guide, the rte_eal_init should be used pairswith rte_eal_cleanup.This patch add rte_eal_cleanup to examples to encourage new users ofDPDK to use it.Fixes: aec9c13c5257 ("eal: add function to release internal resources")Fixes: 3d0fad56b74a ("examples/fips_validation: add crypto FIPS application")Fixes: c8e6ceecebc1 ("examples/ioat: add new sample app for ioat driver")Fixes: 4ff457986f76 ("examples/l2fwd-event: add default poll mode routines")Fixes: 08bd1a174461 ("examples/l3fwd-graph: add graph-based l3fwd skeleton")Fixes: c5eebf85badc ("examples/ntb: add example for NTB")Fixes: b77f66002812 ("examples/pipeline: add new example application")Fixes: edbed86d1cc3 ("examples/vdpa: introduce a new sample for vDPA")Fixes: c19beb3f38cd ("examples/vhost_blk: introduce vhost storage sample")Fixes: f5188211c721 ("examples/vhost_crypto: add sample application")Cc: stable@dpdk.orgSigned-off-by: Chengchang Tang <tangchengchang@huawei.com>
examples: reduce indentation in build filesAs with the lib and drivers directories, we can use "continue" keyword toreduce the indentation level of the majority of the foreach block. At thesame t
examples: reduce indentation in build filesAs with the lib and drivers directories, we can use "continue" keyword toreduce the indentation level of the majority of the foreach block. At thesame time, we can also replace tab indentation with spaces.Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
examples: warn about broken pkg-configSince the examples are designed to be built by end-users using Make, wecan detect and warn about broken pkg-config on the user's system as partof the build p
examples: warn about broken pkg-configSince the examples are designed to be built by end-users using Make, wecan detect and warn about broken pkg-config on the user's system as partof the build process.Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
examples: restore trace pointBefore make removal, those examples were built with experimental flagfor tracepoints to be compiled in but the pkg-config part of thosemakefiles were missed.Fixes:
examples: restore trace pointBefore make removal, those examples were built with experimental flagfor tracepoints to be compiled in but the pkg-config part of thosemakefiles were missed.Fixes: 78d44153de8f ("ethdev: add tracepoints")Cc: stable@dpdk.orgSigned-off-by: David Marchand <david.marchand@redhat.com>Acked-by: Bruce Richardson <bruce.richardson@intel.com>
examples: stop processing meson file if build impossibleOnce it has been determined that an example cannot be built, there islittle point in continuing to process the meson.build file for thatexa
examples: stop processing meson file if build impossibleOnce it has been determined that an example cannot be built, there islittle point in continuing to process the meson.build file for thatexample, so we can use subdir_done() to return to the calling file.This can potentially prevent problems where later statement in the filemay cause an error on systems where the app cannot be built, e.g. onWindows or FreeBSD.Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
eal: rename lcore master and slaveReplace master lcore with main lcore andreplace slave lcore with worker lcore.Keep the old functions and macros but mark them as deprecatedfor this release.T
eal: rename lcore master and slaveReplace master lcore with main lcore andreplace slave lcore with worker lcore.Keep the old functions and macros but mark them as deprecatedfor this release.The "--master-lcore" command line option is also deprecatedand any usage will print a warning and use "--main-lcore"as replacement.Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
build: replace use of old build macrosUse the newer macros defined by meson in all DPDK source code, to ensurethere are no errors when the old non-standard macros are removed.Signed-off-by: Bruc
build: replace use of old build macrosUse the newer macros defined by meson in all DPDK source code, to ensurethere are no errors when the old non-standard macros are removed.Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>Acked-by: Luca Boccassi <bluca@debian.org>Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>Acked-by: Rosen Xu <rosen.xu@intel.com>Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
examples: remove legacy sections of makefilesThe example app makefiles contained sections using the legacy method ofcompiling with make. These are no longer needed, and are removed,leaving only t
examples: remove legacy sections of makefilesThe example app makefiles contained sections using the legacy method ofcompiling with make. These are no longer needed, and are removed,leaving only the section that uses pkg-config for the make build.Signed-off-by: Ciara Power <ciara.power@intel.com>Acked-by: Nicolas Chautru <nicolas.chautru@intel.com>
examples: fix port mask parsing failure handlingGiving invalid or zero portmask as command line option tothese applications will have an unexpected response.The reason behind this is that the ret
examples: fix port mask parsing failure handlingGiving invalid or zero portmask as command line option tothese applications will have an unexpected response.The reason behind this is that the return value of functionthat parses portmask is stored in a variable whose datatype isunsigned int, hence returning -1 in case of zero orinvalid portmask causes an unexpected behaviour.If we return 0 instead of -1 this issue can be resolved.The program already contains the functionality to print"invalid portmask" and program usage if zero is returned.Signed-off-by: Sarosh Arif <sarosh.arif@emumba.com>Acked-by: Bruce Richardson <bruce.richardson@intel.com>
build/pkg-config: improve static linking flagsRather than setting -Bstatic in the linker flags when doing a static link,and then having to explicitly set -Bdynamic again afterwards, we can update
build/pkg-config: improve static linking flagsRather than setting -Bstatic in the linker flags when doing a static link,and then having to explicitly set -Bdynamic again afterwards, we can updatethe pkg-config file to use -l:libfoo.a syntax to explicitly refer to thestatic library in question. Since this syntax is not supported by meson'spkg-config module directly, we can post-process the .pc files instead toadjust them.Once done, we can simplify the examples' makefiles and the docs by removingthe explicit static flag.Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>Acked-by: Luca Boccassi <bluca@debian.org>Acked-by: Sunil Pai G <sunil.pai.g@intel.com>Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
ethdev: add tracepointsAdd tracepoints at important and mandatory APIs for tracing support.Signed-off-by: Sunil Kumar Kori <skori@marvell.com>Acked-by: David Marchand <david.marchand@redhat.com>
1234