fix spelling in comments and stringsThe tool comes from https://github.com/jsorefSigned-off-by: Josh Soref <[email protected]>Signed-off-by: Thomas Monjalon <[email protected]>
remove repeated 'the' in the codeRemove the use of double "the" as it does not make sense.Cc: [email protected]Signed-off-by: Sean Morrissey <[email protected]>Signed-off-by: Conor Fogart
remove repeated 'the' in the codeRemove the use of double "the" as it does not make sense.Cc: [email protected]Signed-off-by: Sean Morrissey <[email protected]>Signed-off-by: Conor Fogarty <[email protected]>Acked-by: John McNamara <[email protected]>Reviewed-by: Conor Walsh <[email protected]>Acked-by: Somnath Kotur <[email protected]>Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
drivers: check interrupt file descriptor validityThis patch fixes coverity issue by adding a check for negative value toavoid bad bit shift operation and other invalid use of file descriptors.Co
drivers: check interrupt file descriptor validityThis patch fixes coverity issue by adding a check for negative value toavoid bad bit shift operation and other invalid use of file descriptors.Coverity issue: 373717, 373697, 373685Coverity issue: 373723, 373720, 373719, 373718, 373715, 373714, 373713Coverity issue: 373710, 373707, 373706, 373705, 373704, 373701, 373700Coverity issue: 373698, 373695, 373692, 373690, 373689Coverity issue: 373722, 373721, 373709, 373702, 373696Fixes: d61138d4f0e2 ("drivers: remove direct access to interrupt handle")Signed-off-by: Harman Kalra <[email protected]>Acked-by: Haiyue Wang <[email protected]>Acked-by: David Marchand <[email protected]>
drivers: remove direct access to interrupt handleRemoving direct access to interrupt handle structure fields,rather use respective get set APIs for the same.Making changes to all the drivers acce
drivers: remove direct access to interrupt handleRemoving direct access to interrupt handle structure fields,rather use respective get set APIs for the same.Making changes to all the drivers access the interrupt handle fields.Signed-off-by: Harman Kalra <[email protected]>Acked-by: Hyong Youb Kim <[email protected]>Signed-off-by: David Marchand <[email protected]>Tested-by: Raslan Darawsheh <[email protected]>
bus/vmbus: fix ring buffer mapping in secondary processThe driver code had wrong assumption that all the addresses to ring buffersin the secondary process are the same as those in the primary proc
bus/vmbus: fix ring buffer mapping in secondary processThe driver code had wrong assumption that all the addresses to ring buffersin the secondary process are the same as those in the primary process. Thisis not always correct as the channels could be mapped to differentaddresses in the secondary process.Fix this by keeping track of all the mapped addresses from the primaryprocess in the shared uio_res, and have second process map to the sameaddresses.Fixes: 831dba47bd36 ("bus/vmbus: add Hyper-V virtual bus support")Cc: [email protected]Reported-by: Jonathan Erb <[email protected]>Signed-off-by: Long Li <[email protected]>Acked-by: Stephen Hemminger <[email protected]>
bus/vmbus: fix leak on device scanCaught running ASAN.The device name was leaked on scan.rte_device name field being a const, use a local pointer and releasein error path.Fixes: 831dba47bd36 (
bus/vmbus: fix leak on device scanCaught running ASAN.The device name was leaked on scan.rte_device name field being a const, use a local pointer and releasein error path.Fixes: 831dba47bd36 ("bus/vmbus: add Hyper-V virtual bus support")Cc: [email protected]Signed-off-by: David Marchand <[email protected]>Acked-by: Long Li <[email protected]>
eal: remove sys/queue.h from public headersCurrently there are some public headers that include 'sys/queue.h', whichis not POSIX, but usually provided by the Linux/BSD system library.(Not in POSI
eal: remove sys/queue.h from public headersCurrently there are some public headers that include 'sys/queue.h', whichis not POSIX, but usually provided by the Linux/BSD system library.(Not in POSIX.1, POSIX.1-2001, or POSIX.1-2008. Present on the BSDs.)The file is missing on Windows. During the Windows build, DPDK uses abundled copy, so building a DPDK library works fine. But when OVS or otherapplications use DPDK as a library, because some DPDK public headersinclude 'sys/queue.h', on Windows, it triggers an error due to no suchfile.One solution is to install the 'lib/eal/windows/include/sys/queue.h' intoWindows environment, such as [1]. However, this means DPDK exports thefunctionalities of 'sys/queue.h' into the environment, which might causesymbols, macros, headers clashing with other applications.The patch fixes it by removing the "#include <sys/queue.h>" fromDPDK public headers, so programs including DPDK headers don't dependon the system to provide 'sys/queue.h'. When these public headers usemacros such as TAILQ_xxx, we replace it by the ones with RTE_ prefix.For Windows, we copy the definitions from <sys/queue.h> to rte_os.hin Windows EAL. Note that these RTE_ macros are compatible with<sys/queue.h>, both at the level of API (to use with <sys/queue.h>macros in C files) and ABI (to avoid breaking it).Additionally, the TAILQ_FOREACH_SAFE is not part of <sys/queue.h>,the patch replaces it with RTE_TAILQ_FOREACH_SAFE.[1] http://mails.dpdk.org/archives/dev/2021-August/216304.htmlSuggested-by: Nick Connolly <[email protected]>Suggested-by: Dmitry Kozlyuk <[email protected]>Signed-off-by: William Tu <[email protected]>Acked-by: Dmitry Kozlyuk <[email protected]>Acked-by: Narcisa Vasile <[email protected]>
version: 21.11-rc0Start a new release cycle with empty release notes.The ABI version becomes 22.0.The map files are updated to the new ABI major number (22).The ABI exceptions are dropped and C
version: 21.11-rc0Start a new release cycle with empty release notes.The ABI version becomes 22.0.The map files are updated to the new ABI major number (22).The ABI exceptions are dropped and CI ABI checks are disabled becausecompatibility is not preserved.Signed-off-by: Thomas Monjalon <[email protected]>Acked-by: Ferruh Yigit <[email protected]>Acked-by: David Marchand <[email protected]>
bus: clarify log for non-NUMA-aware devicesPCI, vmbus, and auxiliary drivers printed a warningwhen NUMA node had been reported as (-1) or not reported by OS: EAL: Invalid NUMA socket, defau
bus: clarify log for non-NUMA-aware devicesPCI, vmbus, and auxiliary drivers printed a warningwhen NUMA node had been reported as (-1) or not reported by OS: EAL: Invalid NUMA socket, default to 0This message and its level might confuse users because the configurationis valid and nothing happens that requires attention or intervention.It was also printed without the device identification and with an indent(PCI only), which is confusing unless DEBUG logging is on to printthe header message with the device name.Reduce level to INFO, reword the message, and suppress it when there isonly one NUMA node because NUMA awareness does not matter in this case.Also, remove the indent for PCI.Fixes: f0e0e86aa35d ("pci: move NUMA node check from scan to probe")Fixes: 831dba47bd36 ("bus/vmbus: add Hyper-V virtual bus support")Fixes: 1afce3086cf4 ("bus/auxiliary: introduce auxiliary bus")Cc: [email protected]Signed-off-by: Dmitry Kozlyuk <[email protected]>Reviewed-by: Viacheslav Ovsiienko <[email protected]>Reviewed-by: Xueming Li <[email protected]>Acked-by: Andrew Rybchenko <[email protected]>
log: register with standardized namesLet's try to enforce the convention where most drivers use a pmd. logtypewith their class reflected in it, and libraries use a lib. logtype.Introduce two new
log: register with standardized namesLet's try to enforce the convention where most drivers use a pmd. logtypewith their class reflected in it, and libraries use a lib. logtype.Introduce two new macros:- RTE_LOG_REGISTER_DEFAULT can be used when a single logtype is used in a component. It is associated to the default name provided by the build system,- RTE_LOG_REGISTER_SUFFIX can be used when multiple logtypes are used, and then the passed name is appended to the default name,RTE_LOG_REGISTER is left untouched for existing external usersand for components that do not comply with the convention.There is a new Meson variable log_prefix to adapt the default namefor baseband (pmd.bb.), bus (no pmd.) and mempool (no pmd.) classes.Note: achieved with below commands + reverted change on net/bonding +edits on crypto/virtio, compress/mlx5, regex/mlx5$ git grep -l RTE_LOG_REGISTER drivers/ | while read file; do pattern=${file##drivers/}; class=${pattern%%/*}; pattern=${pattern#$class/}; drv=${pattern%%/*}; case "$class" in baseband) pattern=pmd.bb.$drv;; bus) pattern=bus.$drv;; mempool) pattern=mempool.$drv;; *) pattern=pmd.$class.$drv;; esac sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file; sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file; done$ git grep -l RTE_LOG_REGISTER lib/ | while read file; do pattern=${file##lib/}; pattern=lib.${pattern%%/*}; sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file; sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file; doneSigned-off-by: David Marchand <[email protected]>Signed-off-by: Thomas Monjalon <[email protected]>Acked-by: Bruce Richardson <[email protected]>
drivers: change indentation in build filesSwitch from using tabs to 4 spaces for meson.build indentation.Signed-off-by: Bruce Richardson <[email protected]>
drivers: replace page size definitions with functionThe page size is often retrieved from the macro PAGE_SIZE.If PAGE_SIZE is not defined, it is either using hard coded default,or getting the sys
drivers: replace page size definitions with functionThe page size is often retrieved from the macro PAGE_SIZE.If PAGE_SIZE is not defined, it is either using hard coded default,or getting the system value from the UNIX-only function sysconf().Such definitions are replaced with the generic functionrte_mem_page_size() defined for each supported OS.Removing PAGE_SIZE definitions will fix dlb drivers for musl libc,because #ifdef checks were missing, causing redefinition errors.Signed-off-by: Thomas Monjalon <[email protected]>Acked-by: Andrew Boyer <[email protected]>Acked-by: Andrew Rybchenko <[email protected]>Acked-by: David Marchand <[email protected]>Acked-by: Timothy McDaniel <[email protected]>
build: align wording of non-support reasonsReasons for building not supported generally start with lowercasebecause printed as the second part of a line.Other changes: - "linux" should be "Linu
build: align wording of non-support reasonsReasons for building not supported generally start with lowercasebecause printed as the second part of a line.Other changes: - "linux" should be "Linux" with a capital letter. - ARCH_X86_64 may be simply x86_64. - aarch64 is preferred over arm64.Signed-off-by: Thomas Monjalon <[email protected]>Acked-by: David Marchand <[email protected]>
eal: replace blacklist/whitelist optionsReplace -w / --pci-whitelist with -a / --allow optionsand --pci-blacklist with --block.The -b short option remains unchanged.Allow the old options for no
eal: replace blacklist/whitelist optionsReplace -w / --pci-whitelist with -a / --allow optionsand --pci-blacklist with --block.The -b short option remains unchanged.Allow the old options for now, but print a nagwarning since old options are deprecated.Signed-off-by: Stephen Hemminger <[email protected]>Acked-by: Luca Boccassi <[email protected]>Signed-off-by: Thomas Monjalon <[email protected]>
eal: replace usage of blacklist/whitelist in enumsRename the enum values in the EAL include files.As a backward compatible temporary migration tool, definea replacement mapping for old values.T
eal: replace usage of blacklist/whitelist in enumsRename the enum values in the EAL include files.As a backward compatible temporary migration tool, definea replacement mapping for old values.The old names relating to blacklist and whitelist are replacedby block list and allow list, but applications may be using theolder compatibility macros, marked as deprecated.Signed-off-by: Stephen Hemminger <[email protected]>Acked-by: Luca Boccassi <[email protected]>Acked-by: Gaetan Rivet <[email protected]>Acked-by: Hemant Agrawal <[email protected]>Signed-off-by: Thomas Monjalon <[email protected]>
drivers: add headers install helperA lot of drivers export headers, reproduce the same facility than forlibraries.Note: this change fixes an issue with the crypto scheduler headers whichwere no
drivers: add headers install helperA lot of drivers export headers, reproduce the same facility than forlibraries.Note: this change fixes an issue with the crypto scheduler headers whichwere not installed properly. A separate backport will be sent to stablebranches.Suggested-by: Bruce Richardson <[email protected]>Signed-off-by: David Marchand <[email protected]>Acked-by: Bruce Richardson <[email protected]>
drivers/bus: reword slave process as secondaryCorrect wording is "secondary process".Signed-off-by: Stephen Hemminger <[email protected]>Acked-by: Anatoly Burakov <anatoly.burakov@intel
drivers/bus: reword slave process as secondaryCorrect wording is "secondary process".Signed-off-by: Stephen Hemminger <[email protected]>Acked-by: Anatoly Burakov <[email protected]>
build: remove library name from version map file nameSince each version map file is contained in the subdirectory of the libraryit refers to, there is no need to include the library name in the fi
build: remove library name from version map file nameSince each version map file is contained in the subdirectory of the libraryit refers to, there is no need to include the library name in the filename.This makes things simpler in case of library renaming.Signed-off-by: Bruce Richardson <[email protected]>Acked-by: Luca Boccassi <[email protected]>Acked-by: Andrew Rybchenko <[email protected]>Acked-by: Rosen Xu <[email protected]>
bus/vmbus: remove sending interrupts via INT bitnetvsc is a high speed VMBus device that uses monitor bit to signal thehost. It's not necessary to send interrupts via INT bit.Signed-off-by: Long
bus/vmbus: remove sending interrupts via INT bitnetvsc is a high speed VMBus device that uses monitor bit to signal thehost. It's not necessary to send interrupts via INT bit.Signed-off-by: Long Li <[email protected]>Acked-by: Stephen Hemminger <[email protected]>
build: remove makefilesA decision was made [1] to no longer support Make in DPDK, this patchremoves all Makefiles that do not make use of pkg-config, along withthe mk directory previously used by
build: remove makefilesA decision was made [1] to no longer support Make in DPDK, this patchremoves all Makefiles that do not make use of pkg-config, along withthe mk directory previously used by make.[1] https://mails.dpdk.org/archives/dev/2020-April/162839.htmlSigned-off-by: Ciara Power <[email protected]>Reviewed-by: Ruifeng Wang <[email protected]>Signed-off-by: Thomas Monjalon <[email protected]>
version: 20.11-rc0Start a new release cycle with empty release notes.The ABI version becomes 21.0.The ABI major is back to normal, having only one number (21 vs 20.0).The map files are updated
version: 20.11-rc0Start a new release cycle with empty release notes.The ABI version becomes 21.0.The ABI major is back to normal, having only one number (21 vs 20.0).The map files are updated to the new ABI major number (21).The ABI exceptions are dropped.Travis ABI check is disabled because compatibility is not preserved.Signed-off-by: Thomas Monjalon <[email protected]>Acked-by: Ray Kinsella <[email protected]>
bus/vmbus: use SMP memory barrier for signaling readrte_smp_mb() uses the same locked ADD as the in-kernel vmbus driver,and it has slightly performance improvement over rte_mb().Signed-off-by: L
bus/vmbus: use SMP memory barrier for signaling readrte_smp_mb() uses the same locked ADD as the in-kernel vmbus driver,and it has slightly performance improvement over rte_mb().Signed-off-by: Long Li <[email protected]>
log: introduce logtype register macroIntroduce the RTE_LOG_REGISTER macro to avoid the code duplicationin the logtype registration process.It is a wrapper macro for declaring the logtype, regist
log: introduce logtype register macroIntroduce the RTE_LOG_REGISTER macro to avoid the code duplicationin the logtype registration process.It is a wrapper macro for declaring the logtype, registering it andsetting its level in the constructor context.Signed-off-by: Jerin Jacob <[email protected]>Acked-by: Adam Dybkowski <[email protected]>Acked-by: Sachin Saxena <[email protected]>Acked-by: Akhil Goyal <[email protected]>
bus/pci: introduce Windows support with stubsAddition of stub eal and bus/pci functions to compilebus/pci for Windows.Signed-off-by: Tal Shnaiderman <[email protected]>
bus/vmbus: fix ring buffer mappingvmbus_map_addr is used as the next start virtual address for mapping ringbuffer. However it's updated based on ring_buf, which is a pointer to anaddress on the s
bus/vmbus: fix ring buffer mappingvmbus_map_addr is used as the next start virtual address for mapping ringbuffer. However it's updated based on ring_buf, which is a pointer to anaddress on the stack. The next ring buffer may be mapped to an unexpectedaddress.Fix this by calculating vmbus_map_addr based on returned virtual address.Fixes: 3f9277031a2e ("bus/vmbus: fix check for mmap failure")Cc: [email protected]Signed-off-by: Long Li <[email protected]>Acked-by: Stephen Hemminger <[email protected]>
123