Dirk Mueller
928144f175
Submit home:dpitchumani:branches:network/dpdk to network/dpdk Description : - Update to LTS version 23.11. Some are the fixes are below, * app/crypto-perf: add missing op resubmission * app/crypto-perf: fix copy segment size * app/crypto-perf: fix data comparison * app/crypto-perf: fix encrypt operation verification * app/crypto-perf: fix next segment mbuf * app/crypto-perf: fix out-of-place mbuf size * app/crypto-perf: verify strdup return * app/dma-perf: verify strdup return * app/dumpcap: verify strdup return * app/graph: fix build reason * app/pdump: verify strdup return * app/testpmd: fix --stats-period option check * app/testpmd: fix GRO packets flush on timeout * app/testpmd: fix async flow create failure handling * app/testpmd: fix async indirect action list creation * app/testpmd: fix auto-completion for indirect action list * app/testpmd: fix burst option parsing * app/testpmd: fix crash in multi-process forwarding * app/testpmd: fix error message for invalid option * app/testpmd: fix flow modify tag typo * app/testpmd: hide --bitrate-stats in help if disabled * app/testpmd: return if no packets in GRO heavy weight mode * app/testpmd: verify strdup return * build: fix linker warnings about undefined symbols * build: fix reasons conflict * build: link static libs with whole-archive in subproject * build: pass cflags in subproject * buildtools/cmdline: fix IP address initializer * buildtools/cmdline: fix generated code for IP addresses * bus/dpaa: verify strdup return * bus/fslmc: verify strdup return * bus/vdev: fix devargs in secondary process * bus/vdev: verify strdup return * ci: update versions of actions in GHA * common/cnxk: fix RSS RETA configuration * common/cnxk: fix Tx MTU configuration * common/cnxk: fix VLAN check for inner header * common/cnxk: fix inline device pointer check * common/cnxk: fix link config for SDP * common/cnxk: fix mbox region copy * common/cnxk: fix mbox struct attributes * common/cnxk: fix memory leak in CPT init * common/cnxk: fix possible out-of-bounds access * common/cnxk: remove CN9K inline IPsec FP opcodes * common/cnxk: remove dead code * common/mlx5: fix calloc parameters * common/mlx5: fix duplicate read of general capabilities * common/mlx5: fix query sample info capability * common/qat: fix legacy flag * common/sfc_efx/base: use C11 static assert * config: fix CPU instruction set for cross-build * crypto/cnxk: fix CN9K ECDH public key verification * crypto/qat: fix crash with CCM null AAD pointer * cryptodev: remove unused extern variable * dma/dpaa2: fix logtype register * dma/idxd: verify strdup return * dmadev: fix calloc parameters * doc: add --latencystats option in testpmd guide * doc: add link speeds configuration in features table * doc: add traffic manager in features table * doc: fix aging poll frequency option in cnxk guide * doc: fix commands in eventdev test tool guide * doc: fix configuration in baseband 5GNR driver guide * doc: fix default IP fragments maximum in programmer guide * doc: fix typo in packet framework guide * doc: fix typo in profiling guide * doc: fix typos in cryptodev overview * doc: remove cmdline polling mode deprecation notice * doc: update link to Windows DevX in mlx5 guide * drivers/net: fix buffer overflow for packet types list * dts: fix smoke tests driver regex * dts: strip whitespaces from stdout and stderr * eal/x86: add AMD vendor check for TSC calibration * eal: verify strdup return * ethdev: fix NVGRE encap flow action description * event/cnxk: fix dequeue timeout configuration * event/cnxk: verify strdup return * event/dlb2: remove superfluous memcpy * eventdev/crypto: fix enqueueing * eventdev: fix Doxygen processing of vector struct * eventdev: fix calloc parameters * eventdev: improve Doxygen comments on configure struct * examples/ipsec-secgw: fix Rx queue ID in Rx callback * examples/ipsec-secgw: fix cryptodev to SA mapping * examples/ipsec-secgw: fix typo in error message * examples/ipsec-secgw: fix width of variables * examples/l3fwd: fix Rx over not ready port * examples/l3fwd: fix Rx queue configuration * examples/packet_ordering: fix Rx with reorder mode disabled * examples/qos_sched: fix memory leak in args parsing * examples/vhost: verify strdup return * gro: fix reordering of packets * hash: remove some dead code * kernel/freebsd: fix module build on FreeBSD 14 * lib: add newline in logs * lib: remove redundant newline from logs * lib: use dedicated logtypes and macros * ml/cnxk: fix xstats calculation * net/af_xdp: fix leak on XSK configuration failure * net/af_xdp: fix memzone leak on config failure * net/bnx2x: fix calloc parameters * net/bnx2x: fix warnings about memcpy lengths * net/bnxt: fix 50G and 100G forced speed * net/bnxt: fix array overflow * net/bnxt: fix backward firmware compatibility * net/bnxt: fix deadlock in ULP timer callback * net/bnxt: fix null pointer dereference * net/bnxt: fix number of Tx queues being created * net/bnxt: fix speed change from 200G to 25G on Thor * net/bnxt: modify locking for representor Tx * net/bonding: fix flow count query * net/cnxk: add cookies check for multi-segment offload * net/cnxk: fix MTU limit * net/cnxk: fix Rx packet format check condition * net/cnxk: fix aged flow query * net/cnxk: fix buffer size configuration * net/cnxk: fix flow RSS configuration * net/cnxk: fix indirect mbuf handling in Tx * net/cnxk: fix mbuf fields in multi-segment Tx * net/cnxk: improve Tx performance for SW mbuf free * net/ena/base: fix metrics excessive memory consumption * net/ena/base: limit exponential backoff * net/ena/base: restructure interrupt handling * net/ena: fix fast mbuf free * net/ena: fix mbuf double free in fast free mode * net/failsafe: fix memory leak in args parsing * net/gve: fix DQO for chained descriptors * net/hns3: enable PFC for all user priorities * net/hns3: fix VF multiple count on one reset * net/hns3: fix disable command with firmware * net/hns3: fix reset level comparison * net/hns3: refactor PF mailbox message struct * net/hns3: refactor VF mailbox message struct * net/hns3: refactor handle mailbox function * net/hns3: refactor send mailbox function * net/hns3: remove QinQ insert support for VF * net/hns3: support new device * net/i40e: remove incorrect 16B descriptor read block * net/i40e: remove redundant judgment in flow parsing * net/iavf: fix crash on VF start * net/iavf: fix memory leak on security context error * net/iavf: fix no polling mode switching * net/iavf: remove error logs for VLAN offloading * net/iavf: remove incorrect 16B descriptor read block * net/ice: fix link update * net/ice: fix memory leaks * net/ice: fix tunnel TSO capabilities * net/ice: remove incorrect 16B descriptor read block * net/igc: fix timesync disable * net/ionic: fix RSS query * net/ionic: fix device close * net/ionic: fix missing volatile type for cqe pointers * net/ixgbe: fix memoy leak after device init failure * net/ixgbe: increase VF reset timeout * net/ixgbevf: fix RSS init for x550 NICs * net/mana: fix memory leak on MR allocation * net/mana: handle MR cache expansion failure * net/mana: prevent values overflow returned from RDMA layer * net/memif: fix crash with Tx burst larger than 255 * net/memif: fix extra mbuf refcnt update in zero copy Tx * net/mlx5/hws: check not supported fields in VXLAN * net/mlx5/hws: enable multiple integrity items * net/mlx5/hws: fix ESP flow matching validation * net/mlx5/hws: fix VLAN inner type * net/mlx5/hws: fix VLAN item in non-relaxed mode * net/mlx5/hws: fix direct index insert on depend WQE * net/mlx5/hws: fix memory access in L3 decapsulation * net/mlx5/hws: fix port ID for root table * net/mlx5/hws: fix tunnel protocol checks * net/mlx5/hws: skip item when inserting rules by index * net/mlx5: fix DR context release ordering * net/mlx5: fix GENEVE TLV option management * net/mlx5: fix GENEVE option item translation * net/mlx5: fix HWS meter actions availability * net/mlx5: fix HWS registers initialization * net/mlx5: fix IP-in-IP tunnels recognition * net/mlx5: fix VLAN ID in flow modify * net/mlx5: fix VLAN handling in meter split * net/mlx5: fix age position in hairpin split * net/mlx5: fix async flow create error handling * net/mlx5: fix condition of LACP miss flow * net/mlx5: fix connection tracking action validation * net/mlx5: fix conntrack action handle representation * net/mlx5: fix counters map in bonding mode * net/mlx5: fix drop action release timing * net/mlx5: fix error packets drop in regular Rx * net/mlx5: fix flow action template expansion * net/mlx5: fix flow configure validation * net/mlx5: fix flow counter cache starvation * net/mlx5: fix flow tag modification * net/mlx5: fix indirect action async job initialization * net/mlx5: fix jump action validation * net/mlx5: fix meter policy priority * net/mlx5: fix modify flex item * net/mlx5: fix non-masked indirect list meter translation * net/mlx5: fix parameters verification in HWS table create * net/mlx5: fix rollback on failed flow configure * net/mlx5: fix stats query crash in secondary process * net/mlx5: fix sync flow meter action * net/mlx5: fix sync meter processing in HWS * net/mlx5: fix template clean up of FDB control flow rule * net/mlx5: fix use after free when releasing Tx queues * net/mlx5: fix warning about copy length * net/mlx5: prevent ioctl failure log flooding * net/mlx5: prevent querying aged flows on uninit port * net/mlx5: remove GENEVE options length limitation * net/mlx5: remove device status check in flow creation * net/mlx5: remove duplication of L3 flow item validation * net/netvsc: fix VLAN metadata parsing * net/nfp: fix IPsec data endianness * net/nfp: fix NFD3 metadata process * net/nfp: fix NFDk metadata process * net/nfp: fix Rx descriptor * net/nfp: fix Rx memory leak * net/nfp: fix calloc parameters * net/nfp: fix device close * net/nfp: fix device resource freeing * net/nfp: fix getting firmware VNIC version * net/nfp: fix initialization failure flow * net/nfp: fix resource leak for CoreNIC firmware * net/nfp: fix resource leak for PF initialization * net/nfp: fix resource leak for VF * net/nfp: fix resource leak for device initialization * net/nfp: fix resource leak for exit of CoreNIC firmware * net/nfp: fix resource leak for exit of flower firmware * net/nfp: fix resource leak for flower firmware * net/nfp: fix switch domain free check * net/nfp: fix uninitialized variable * net/nfp: free switch domain ID on close * net/nfp: verify strdup return * net/sfc: fix calloc parameters * net/softnic: fix include of log library * net/tap: do not overwrite flow API errors * net/tap: fix traffic control handle calculation * net/thunderx: fix DMAC control register update * net/virtio: fix vDPA device init advertising control queue * net/virtio: remove duplicate queue xstats * net/vmxnet3: fix initialization on FreeBSD * net/vmxnet3: ignore Rx queue interrupt setup on FreeBSD * net: add macros for VLAN metadata parsing * net: fix TCP/UDP checksum with padding data * pipeline: fix calloc parameters * rawdev: fix calloc parameters * rcu: fix acked token in debug log * rcu: use atomic operation on acked token * regexdev: fix logtype register * telemetry: fix connected clients count * telemetry: fix empty JSON dictionaries * test/cfgfile: fix typo in error messages * test/event: fix crash in Tx adapter freeing * test/event: skip test if no driver is present * test/mbuf: fix external mbuf case with assert enabled * test/power: fix typo in error message * test: assume C source files are UTF-8 encoded * test: do not count skipped tests as executed * test: fix probing in secondary process * test: verify strdup return * vdpa/mlx5: fix queue enable drain CQ * version: 23.11.1-rc2 * vhost: fix VDUSE device destruction failure * vhost: fix deadlock during vDPA SW live migration * vhost: fix memory leak in Virtio Tx split path * vhost: fix virtqueue access check in VDUSE setup * vhost: fix virtqueue access check in datapath * vhost: fix virtqueue access check in vhost-user setup - Fix macro aarch64_machine for thunderx and aarch64 build - Drop building KMP as there are no Kernel modules available. - Drop the below patches as KNI is removed from DPDK repository * 0002-SLE15-SP3-compatibility-patch-for-kni.patch * kni-fix-build-with-Linux-6.10.patch * kni-fix-build-with-Linux-6.8.patch * preamble - Updated the below patch for DPDK v23.11 * 0001-fix-cpu-compatibility.patch OBS-URL: https://build.opensuse.org/package/show/network/dpdk?expand=0&rev=164
70 lines
2.2 KiB
Diff
70 lines
2.2 KiB
Diff
From e2950fec9cd9c235a7847ed97b6914174857bf93 Mon Sep 17 00:00:00 2001
|
|
From: "mvarlese@suse.de" <mvarlese@suse.de>
|
|
Date: Wed, 29 Apr 2020 12:24:16 +0200
|
|
Subject: [PATCH] fix cpu compatibility
|
|
|
|
Added 0001-fix-cpu-compatibility.patch to address issue with older CPUs (bsc#1125961, bsc#1099474)
|
|
|
|
Updated 2024-08-26 for version 23.11
|
|
|
|
diff --git a/drivers/bus/vdev/vdev.c b/drivers/bus/vdev/vdev.c
|
|
index 7974b27295..25eec8bf6e 100644
|
|
--- a/drivers/bus/vdev/vdev.c
|
|
+++ b/drivers/bus/vdev/vdev.c
|
|
@@ -51,7 +51,11 @@ static struct vdev_custom_scans vdev_custom_scans =
|
|
static rte_spinlock_t vdev_custom_scan_lock = RTE_SPINLOCK_INITIALIZER;
|
|
|
|
/* register a driver */
|
|
-void
|
|
+#if defined(__x86_64__) || defined(__i386__)
|
|
+void __attribute__((target ("sse2")))
|
|
+#else
|
|
+ void
|
|
+#endif
|
|
rte_vdev_register(struct rte_vdev_driver *driver)
|
|
{
|
|
TAILQ_INSERT_TAIL(&vdev_driver_list, driver, next);
|
|
diff --git a/lib/eal/common/eal_common_bus.c b/lib/eal/common/eal_common_bus.c
|
|
index acac14131a..a19f5e5431 100644
|
|
--- a/lib/eal/common/eal_common_bus.c
|
|
+++ b/lib/eal/common/eal_common_bus.c
|
|
@@ -22,7 +22,11 @@ rte_bus_name(const struct rte_bus *bus)
|
|
return bus->name;
|
|
}
|
|
|
|
-void
|
|
+#if defined(__x86_64__) || defined(__i386__)
|
|
+void __attribute__((target ("sse2")))
|
|
+#else
|
|
+ void
|
|
+#endif
|
|
rte_bus_register(struct rte_bus *bus)
|
|
{
|
|
RTE_VERIFY(bus);
|
|
diff --git a/lib/eal/include/rte_common.h b/lib/eal/include/rte_common.h
|
|
index c1ba32d00e..525a575c08 100644
|
|
--- a/lib/eal/include/rte_common.h
|
|
+++ b/lib/eal/include/rte_common.h
|
|
@@ -208,8 +208,20 @@ typedef uint16_t unaligned_uint16_t;
|
|
*/
|
|
#ifndef RTE_INIT_PRIO /* Allow to override from EAL */
|
|
#ifndef RTE_TOOLCHAIN_MSVC
|
|
+#if defined(__x86_64__) || defined(__i386__)
|
|
#define RTE_INIT_PRIO(func, prio) \
|
|
-static void __attribute__((constructor(RTE_PRIO(prio)), used)) func(void)
|
|
+static void \
|
|
+ __attribute__((constructor(RTE_PRIO(prio)), used)) \
|
|
+ __attribute__((target ("sse2"))) \
|
|
+ __attribute__((target ("no-sse3"))) \
|
|
+ __attribute__((target ("no-sse4"))) \
|
|
+ func(void)
|
|
+#else
|
|
+#define RTE_INIT_PRIO(func, prio) \
|
|
+static void \
|
|
+ __attribute__((constructor(RTE_PRIO(prio)), used)) \
|
|
+ func(void)
|
|
+#endif
|
|
#else
|
|
/* definition from the Microsoft CRT */
|
|
typedef int(__cdecl *_PIFV)(void);
|