diff --git a/0001-examples-vm_power_manager-add-missing-header.patch b/0001-examples-vm_power_manager-add-missing-header.patch new file mode 100644 index 0000000..28eb3f6 --- /dev/null +++ b/0001-examples-vm_power_manager-add-missing-header.patch @@ -0,0 +1,32 @@ +From a351bb62c81223c8e4727484ae54766ca8a6926f Mon Sep 17 00:00:00 2001 +From: Guillaume Gardet +Date: Thu, 29 Aug 2024 16:33:19 +0200 +Subject: [PATCH] examples/vm_power_manager: add missing header + +strtol is defined in stdlib.h + +Bugzilla ID: 1530 + +Signed-off-by: Guillaume Gardet + +EDIT: drop .mailmap part for backport +--- + .mailmap | 1 + + examples/vm_power_manager/guest_cli/vm_power_cli_guest.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c +index 5eddb47847..c153a1f8e0 100644 +--- a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c ++++ b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c +@@ -6,6 +6,7 @@ + #include + #include + #include ++#include + #include + + #include +-- +2.46.0 + diff --git a/0001-fix-cpu-compatibility.patch b/0001-fix-cpu-compatibility.patch index c4a99d0..99e941d 100644 --- a/0001-fix-cpu-compatibility.patch +++ b/0001-fix-cpu-compatibility.patch @@ -5,10 +5,10 @@ Subject: [PATCH] fix cpu compatibility Added 0001-fix-cpu-compatibility.patch to address issue with older CPUs (bsc#1125961, bsc#1099474) -Updated 2023-02-26 for version 22.11 +Updated 2024-08-26 for version 23.11 diff --git a/drivers/bus/vdev/vdev.c b/drivers/bus/vdev/vdev.c -index 41bc07dde7..750180cb84 100644 +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 = @@ -25,7 +25,7 @@ index 41bc07dde7..750180cb84 100644 { 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 deb9fb8a12..cb7bec607f 100644 +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) @@ -42,13 +42,13 @@ index deb9fb8a12..cb7bec607f 100644 { RTE_VERIFY(bus); diff --git a/lib/eal/include/rte_common.h b/lib/eal/include/rte_common.h -index 15765b408d..4291706faa 100644 +index c1ba32d00e..525a575c08 100644 --- a/lib/eal/include/rte_common.h +++ b/lib/eal/include/rte_common.h -@@ -179,8 +179,20 @@ typedef uint16_t unaligned_uint16_t; - * Lowest number is the first to run. +@@ -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) @@ -64,6 +64,6 @@ index 15765b408d..4291706faa 100644 + __attribute__((constructor(RTE_PRIO(prio)), used)) \ + func(void) +#endif - #endif - - /** + #else + /* definition from the Microsoft CRT */ + typedef int(__cdecl *_PIFV)(void); diff --git a/0001-kni-fix-build-with-Linux-6.3.patch b/0001-kni-fix-build-with-Linux-6.3.patch deleted file mode 100644 index fbb9c19..0000000 --- a/0001-kni-fix-build-with-Linux-6.3.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Ferruh Yigit -Date: Fri, 14 Apr 2023 16:25:22 +0100 -Subject: kni: fix build with Linux 6.3 -Patch-mainline: yes -Git-commit: 5f34cc454df420b9b2da8deb949fb76cba058b87 -References: kernel 6.3 - -KNI calls `get_user_pages_remote()` API which is using `FOLL_TOUCH` -flag, but `FOLL_TOUCH` is no more in public headers since v6.3, -causing a build error. - -`FOLL_*` defines in Linux kernel first moved to another header [1], -later some of them moved to memory subsystem internal header [2] for 6.3 - -`get_user_pages_remote()` already sets `FOLL_TOUCH` internally, -no need to set this flag externally anyway, moving flag from the call -altogether. - -[1] -Commit b5054174ac7c ("mm: move FOLL_* defs to mm_types.h") - -[2] -Commit 2c2241081f7d ("mm/gup: move private gup FOLL_ flags to internal.h") - -Fixes: e73831dc6c26 ("kni: support userspace VA") -Cc: stable@dpdk.org - -Signed-off-by: Ferruh Yigit -Reviewed-by: David Marchand -Signed-off-by: Jiri Slaby ---- - kernel/linux/kni/kni_dev.h | 6 ++---- - 1 file changed, 2 insertions(+), 4 deletions(-) - -diff --git a/kernel/linux/kni/kni_dev.h b/kernel/linux/kni/kni_dev.h -index a2c6d9fc..21bfb689 100644 ---- a/kernel/linux/kni/kni_dev.h -+++ b/kernel/linux/kni/kni_dev.h -@@ -105,11 +105,9 @@ static inline phys_addr_t iova_to_phys(struct task_struct *tsk, - - /* Read one page struct info */ - #ifdef HAVE_TSK_IN_GUP -- ret = get_user_pages_remote(tsk, tsk->mm, iova, 1, -- FOLL_TOUCH, &page, NULL, NULL); -+ ret = get_user_pages_remote(tsk, tsk->mm, iova, 1, 0, &page, NULL, NULL); - #else -- ret = get_user_pages_remote(tsk->mm, iova, 1, -- FOLL_TOUCH, &page, NULL, NULL); -+ ret = get_user_pages_remote(tsk->mm, iova, 1, 0, &page, NULL, NULL); - #endif - if (ret < 0) - return 0; --- -2.35.3 - diff --git a/0002-SLE15-SP3-compatibility-patch-for-kni.patch b/0002-SLE15-SP3-compatibility-patch-for-kni.patch deleted file mode 100644 index 67ca541..0000000 --- a/0002-SLE15-SP3-compatibility-patch-for-kni.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 430a4b50f2f7e5f21c7c2f81849588c575018501 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jaime=20Caama=C3=B1o=20Ruiz?= -Date: Mon, 21 Sep 2020 14:50:13 +0200 -Subject: [PATCH] SLE15 SP3 compatibility patch for kni - - Add patch to resolve build error reported in Staging:E project - where a kernel backport (jsc#SLE-13536) introduced backward - incompatible changes to the API that break kni module build - * 0001-SLE15-SP3-compatibility-patch-for-kni.patch - -Updated 2023-02-26 for version 22.11 - -diff --git a/kernel/linux/kni/compat.h b/kernel/linux/kni/compat.h -index 3a86d12bbc..66d1afd944 100644 ---- a/kernel/linux/kni/compat.h -+++ b/kernel/linux/kni/compat.h -@@ -14,7 +14,10 @@ - #define SLE_VERSION(a, b, c) KERNEL_VERSION(a, b, c) - #endif - #ifdef CONFIG_SUSE_KERNEL --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 57)) -+#if (defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 15 && \ -+ defined(CONFIG_SUSE_PATCHLEVEL) && CONFIG_SUSE_PATCHLEVEL == 3) -+#define SLE_VERSION_CODE SLE_VERSION(15, 3, 0) -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 57)) - /* SLES12SP3 is at least 4.4.57+ based */ - #define SLE_VERSION_CODE SLE_VERSION(12, 3, 0) - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 28)) -@@ -132,6 +135,7 @@ - #endif - - #if KERNEL_VERSION(5, 6, 0) <= LINUX_VERSION_CODE || \ -+ (SLE_VERSION_CODE && SLE_VERSION_CODE == SLE_VERSION(15, 3, 0)) || \ - (defined(RHEL_RELEASE_CODE) && \ - RHEL_RELEASE_VERSION(8, 3) <= RHEL_RELEASE_CODE) || \ - (defined(CONFIG_SUSE_KERNEL) && defined(HAVE_ARG_TX_QUEUE)) diff --git a/dpdk-22.11.1.tar.xz b/dpdk-22.11.1.tar.xz deleted file mode 100644 index 8a35255..0000000 --- a/dpdk-22.11.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:de076465f7174a0d52714b9072e4837a726baac82d8fe7dc644cad5c8cf74d4c -size 15582084 diff --git a/dpdk-23.11.1.tar.xz b/dpdk-23.11.1.tar.xz new file mode 100644 index 0000000..7e6cd18 --- /dev/null +++ b/dpdk-23.11.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12295b01a3457a2f80f1190303ad72c4f35d5d9fc5cee7be2b06027097f49030 +size 16291592 diff --git a/dpdk.changes b/dpdk.changes index f902f1c..8aa384a 100644 --- a/dpdk.changes +++ b/dpdk.changes @@ -1,3 +1,354 @@ +------------------------------------------------------------------- +Sat Sep 14 12:34:14 UTC 2024 - Dan Partelly + +- Enable (disabled by default) installation of headers needed + to build drivers. + +------------------------------------------------------------------- +Fri Sep 13 05:08:15 UTC 2024 - Duraisankar P + +- Use python macros from build config + +------------------------------------------------------------------- +Thu Sep 5 11:40:32 UTC 2024 - Guillaume GARDET + +- Fix build on aarch64 with gcc14: + * 0001-examples-vm_power_manager-add-missing-header.patch + +------------------------------------------------------------------- +Mon Sep 2 06:15:32 UTC 2024 - Duraisankar P + +- 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 + +------------------------------------------------------------------- +Thu Aug 22 17:33:47 UTC 2024 - Aeneas Jaißle + +- Update to LTS release version v22.11.6 + * http://doc.dpdk.org/guides-22.11/rel_notes/release_22_11.html + +- Drop patch (included upstream): + * kni-fix-build-with-Linux-6.8.patch (22.11.6) + +------------------------------------------------------------------- +Sat Aug 17 13:47:42 UTC 2024 - Aeneas Jaißle + +- Update to LTS release version v22.11.5 + * http://doc.dpdk.org/guides-22.11/rel_notes/release_22_11.html + +- Drop patches (included upstream): + * 0001-kni-fix-build-with-Linux-6.3.patch (22.11.3) + * 0001-kni-fix-build-with-Linux-6.5.patch (22.11.3) + +------------------------------------------------------------------- +Wed Jul 24 06:25:38 UTC 2024 - Jiri Slaby + +- use %autopatch even for older distros, -M *is* supported there + +------------------------------------------------------------------- +Tue Jul 16 08:47:23 UTC 2024 - Jiri Slaby + +- add kni-fix-build-with-Linux-6.10.patch to fix build against + kernel 6.8. +- update kni-fix-build-with-Linux-6.8.patch -- it is upstream now. + +------------------------------------------------------------------- +Thu Jul 4 20:27:14 UTC 2024 - Bernhard Wiedemann + +- Drop leftover Sphinx doctrees to make package build reproducible + +------------------------------------------------------------------- +Thu Jun 20 14:21:26 UTC 2024 - pgajdos@suse.com + +- remove dependency on /usr/bin/python3 using + %python3_fix_shebang and %python3_fix_shebang_path macros + [bsc#1212476] + +------------------------------------------------------------------- +Tue Mar 12 08:50:25 UTC 2024 - Jiri Slaby + +- add kni-fix-build-with-Linux-6.8.patch to fix build against + kernel 6.8. + +------------------------------------------------------------------- +Mon Sep 11 05:40:37 UTC 2023 - Jiri Slaby + +- add 0001-kni-fix-build-with-Linux-6.5.patch to fix build against + kernel 6.5. + ------------------------------------------------------------------- Thu Apr 27 14:50:31 UTC 2023 - Dirk Müller @@ -69,7 +420,7 @@ Wed Apr 5 21:10:54 UTC 2023 - Duraisankar P * Added Patches: 0001-fix-cpu-compatibility.patch * Rebased patches: - 0002-SLE15-SP3-compatibility-patch-for-kni.patch + 0002-SLE15-SP3-compatibility-patch-for-kni.patch ------------------------------------------------------------------- Wed Feb 22 08:58:07 UTC 2023 - Bernhard Wiedemann @@ -80,7 +431,7 @@ Wed Feb 22 08:58:07 UTC 2023 - Bernhard Wiedemann Tue Jun 21 13:20:00 UTC 2022 - Dirk Müller - also strip meson generated runpaths when installing examples - manually (bsc#1200620) + manually (bsc#1200620) ------------------------------------------------------------------- Wed May 25 10:13:44 UTC 2022 - Jiri Slaby @@ -333,7 +684,7 @@ Mon Oct 25 13:41:49 UTC 2021 - Stefan Weiberg 0001-SLE15-SP3-compatibility-patch-for-kni.patch to 0002-SLE15-SP3-compatibility-patch-for-kni.patch -- rename +- rename dpdk-fallthrough-comment-fixes.patch to 0003-dpdk-fallthrough-comment-fixes.patch @@ -408,7 +759,7 @@ Tue Sep 22 08:13:23 UTC 2020 - Jaime Caamaño Ruiz - Update to 19.11.4. For a list of fixes check: https://doc.dpdk.org/guides-19.11/rel_notes/release_19_11.html#id8 -- Add patch to resolve build error reported in Staging:E project +- Add patch to resolve build error reported in Staging:E project where a kernel backport (jsc#SLE-13536) introduced backward incompatible changes to the API that break kni module build * 0001-SLE15-SP3-compatibility-patch-for-kni.patch @@ -824,7 +1175,7 @@ Tue May 19 11:41:34 UTC 2020 - Jaime Caamaño Ruiz Wed Apr 29 11:45:24 UTC 2020 - Jaime Caamaño Ruiz - Update to v19.11.1. For a list of changes, check: - * https://doc.dpdk.org/guides/rel_notes/release_19_11.html#new-features + * https://doc.dpdk.org/guides/rel_notes/release_19_11.html#new-features - Removed patches no longer applying to the code base: * 0001-vhost-fix-possible-denial-of-service-on-SET_VRING_NU.patch * 0002-vhost-fix-possible-denial-of-service-by-leaking-FDs.patch @@ -854,7 +1205,7 @@ Tue Nov 19 15:45:29 UTC 2019 - Jaime Caamaño Ruiz ------------------------------------------------------------------- Mon Sep 30 10:04:59 UTC 2019 - -- Changed to multibuild (bsc#1151455). +- Changed to multibuild (bsc#1151455). - Added dpdk-fix-implicit-fallthrough-warning.patch to address build error with recent kernels (bsc#1144704). @@ -1164,11 +1515,11 @@ Mon Sep 4 11:18:19 CEST 2017 - ndas@suse.de http://dpdk.org/doc/guides/rel_notes/release_17_08.html http://dpdk.org/doc/guides/rel_notes/release_17_05.html http://dpdk.org/doc/guides/rel_notes/release_17_02.html - [-0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch - -0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch - -0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch - -0005-kni-fix-build-with-gcc-7.1.patch - -0006-kni-fix-ethtool-build-with-kernel-4.11.patch + [-0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch + -0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch + -0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch + -0005-kni-fix-build-with-gcc-7.1.patch + -0006-kni-fix-ethtool-build-with-kernel-4.11.patch -0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch] - Use updated patch to enable HAVE_TRANS_START_HELPER for SLE12SP3(bsc#1031705). [+ 0002-kni-fix-build-on-SLE12-SP3.patch] @@ -1238,7 +1589,7 @@ Wed Jun 14 12:55:10 CEST 2017 - ndas@suse.de * net/ixgbe: fix Rx queue blocking issue * net/ixgbe: fix all queues drop setting of DCB * net/ixgbe: fix TC bandwidth setting - more details can be found in + more details can be found in http://dpdk.org/ml/archives/stable/2017-May/001809.html [- 0005-kni-fix-build-with-kernel-4.11.patch] - use default gcc which is now gcc7 (bsc#1042372) @@ -1398,7 +1749,7 @@ Fri Feb 24 13:46:44 CET 2017 - ndas@suse.de Thu Feb 16 18:29:43 CET 2017 - ndas@suse.de - Do not disable cryptodev as EXPREMENTAL tag has been removed. -- Remove CONFIG_RTE_LIBRTE_MBUF_OFFLOAD as cryptodev is not depending +- Remove CONFIG_RTE_LIBRTE_MBUF_OFFLOAD as cryptodev is not depending on it anymore and its removed from the upstream. ------------------------------------------------------------------- @@ -1622,9 +1973,9 @@ Thu Jul 28 16:39:07 CEST 2016 - ndas@suse.de ------------------------------------------------------------------- Mon Jul 11 18:20:57 CEST 2016 - ndas@suse.de -- Added support for aarch64 compilation. +- Added support for aarch64 compilation. [+0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch] -- Disabled aarch64 dpdk-examples package for the time being as it +- Disabled aarch64 dpdk-examples package for the time being as it contains lots of Intel specific code. - Added proper "Group" field for the subpackages . @@ -1644,7 +1995,7 @@ Thu Jun 23 09:56:05 UTC 2016 - mchandras@suse.de ------------------------------------------------------------------- Tue Jun 14 10:04:09 UTC 2016 - ndas@suse.de -- Removed unwanted files(bsc#984437). +- Removed unwanted files(bsc#984437). ------------------------------------------------------------------- Thu Jun 9 17:18:01 CEST 2016 - ndas@suse.de @@ -1659,7 +2010,7 @@ Wed Jun 1 14:16:10 UTC 2016 - mchandras@suse.de ------------------------------------------------------------------- Fri May 27 12:28:02 CEST 2016 - ndas@suse.de -- Applied all the fixes recommended by upstream for +- Applied all the fixes recommended by upstream for v2.2 stable release(bsc#981996). [+0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch, @@ -1710,7 +2061,7 @@ Wed Apr 27 14:55:37 UTC 2016 - mchandras@suse.de ------------------------------------------------------------------- Tue Apr 19 10:45:29 CEST 2016 - ndas@suse.de -- DPDK is most common vhost-user backend, Adding upstream patches to +- DPDK is most common vhost-user backend, Adding upstream patches to help qemu vm live migration with vhost-user (fate#320713). [+ 0004-54f9e32-vhost-handle-dirty-pages-logging-request.patch + 0005-d293dac-vhost-claim-support-of-guest-announce.patch @@ -1747,11 +2098,11 @@ Mon Apr 11 16:12:09 CEST 2016 - ndas@suse.de - dpdk-2.2-warningflags.patch, + 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch + 0002-examples-ip_pipeline-fix-implicit-declaration-of-fun.patch] -- Added CONFIG_RTE_BUILD_COMBINE_LIBS flags to club all all *.so into +- Added CONFIG_RTE_BUILD_COMBINE_LIBS flags to club all all *.so into one library ------------------------------------------------------------------- Mon Mar 21 14:15:08 UTC 2016 - nirmoy.das@suse.com -- Intial version 2.2.0(fate#319169) +- Intial version 2.2.0(fate#319169) diff --git a/dpdk.spec b/dpdk.spec index 3a66da9..473fba2 100644 --- a/dpdk.spec +++ b/dpdk.spec @@ -1,7 +1,7 @@ # -# spec file +# spec file for package dpdk # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,46 +18,54 @@ %define flavor @BUILD_FLAVOR@%{nil} -%define aarch64_machine armv8a +%define aarch64_machine armv8-a %define exclusive_arch aarch64 x86_64 ppc64le %define name_tag %{nil} %define summary_tag %{nil} %if "%{flavor}" == "thunderx" %define name_tag -thunderx %define summary_tag (thunderx) -%define aarch64_machine thunderx %define exclusive_arch aarch64 %endif # http://doc.dpdk.org/guides-22.11/linux_gsg/build_dpdk.html#adjusting-build-options %define platform generic %define machine auto %ifarch aarch64 -%define machine %{aarch64_machine2} +%define machine %{aarch64_machine} %endif # This is in sync with /ABI_VERSION # TODO: automate this sync -%define maj 23 +%define maj 24 %define min 0 #%%define lname libdpdk-%%{maj}_%%{min} %define lname libdpdk-%{maj} +# +%if 0%{?sle_version} >= 150600 +%global pprefix python311 +%{?sle15_python_module_pythons} +%else +%global pythons python3 +%global pprefix python3 +%endif # Add option to build without examples %bcond_without examples # Add option to build without tools %bcond_without tools -# Name: dpdk%{name_tag} -Version: 22.11.1 +Version: 23.11.1 Release: 0 Summary: Set of libraries and drivers for fast packet processing License: BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-only Group: System/Libraries URL: https://www.dpdk.org/ Source: https://fast.dpdk.org/rel/dpdk-%{version}.tar.xz -Source1: preamble # PATCH-FIX-OPENSUSE PATCH-FEATURE-UPSTREAM Patch0: 0001-fix-cpu-compatibility.patch -Patch1: 0002-SLE15-SP3-compatibility-patch-for-kni.patch -Patch2: 0001-kni-fix-build-with-Linux-6.3.patch +# PATCH-FIX-UPSTREAM - https://bugs.dpdk.org/show_bug.cgi?id=1530 +Patch1: 0001-examples-vm_power_manager-add-missing-header.patch +BuildRequires: %{python_module Sphinx} +BuildRequires: %{python_module pyelftools >= 0.22} +BuildRequires: %{pythons} BuildRequires: binutils BuildRequires: doxygen BuildRequires: fdupes @@ -68,9 +76,6 @@ BuildRequires: modutils BuildRequires: patchelf BuildRequires: pesign-obs-integration BuildRequires: pkgconfig -BuildRequires: python3 -BuildRequires: python3-Sphinx -BuildRequires: python3-pyelftools >= 0.22 BuildRequires: rdma-core-devel BuildRequires: pkgconfig(jansson) BuildRequires: pkgconfig(libcrypto) @@ -160,15 +165,6 @@ Example applications utilizing the Data Plane Development Kit, such as L2 and L3 forwarding. %endif -%package kmp -Summary: DPDK KNI kernel module %{summary_tag} -Group: System/Kernel -BuildRequires: %{kernel_module_package_buildreqs} -%suse_kernel_module_package -p %{_sourcedir}/preamble pae 64kb - -%description kmp -The DPDK Kernel NIC Interface (KNI) allows userspace applications access to the Linux* control plane. - %define sdkdir %{_datadir}/dpdk %define docdir %{_docdir}/dpdk %define incdir %{_includedir}/dpdk @@ -176,7 +172,13 @@ The DPDK Kernel NIC Interface (KNI) allows userspace applications access to the %prep # can't use %%{name} because of dpdk-thunderx -%autosetup -p1 -n dpdk-stable-%{version} +%setup -q -n dpdk-stable-%{version} +%if 0%{?suse_version} > 1600 +%autopatch -p1 +%else +# grr, no fs.copyfile() in the old meson in SLE (but it has old enough kernel). +%autopatch -p1 -M 99 +%endif # Skip not supported examples sed -i "/performance-thread/d" examples/meson.build @@ -202,6 +204,7 @@ for flavor in %{flavors_to_build}; do -Dplatform="%{platform}" \ -Dcpu_instruction_set=%{machine} \ -Denable_kmods=true \ + -Denable_driver_sdk=true \ -Ddrivers_install_subdir=%{pmddir} \ -Dkernel_dir="%{_prefix}/src/linux-obj/%{_target_cpu}/$flavor" %meson_build @@ -226,15 +229,12 @@ for flavor in %{flavors_to_build}; do examples="" done -# Fix Kernel modules on Factory (/usr merge) -%if 0%{?suse_version} > 1550 -mkdir -p %{buildroot}%{_prefix}/lib -mv %{buildroot}/lib/modules %{buildroot}%{_prefix}/lib -%endif - # Fix documentation mkdir -p %{buildroot}%docdir mv %{buildroot}%{_datadir}/doc/dpdk %{buildroot}%docdir +rm -r %{buildroot}/%docdir/dpdk/html/.doctrees +# Fix man directory +rm -r %{buildroot}%{_mandir}/man3/* # driver .so files often depend upon the bus drivers for their connect bus, # e.g. ixgbe depends on librte_bus_pci. This means that the bus drivers need @@ -257,8 +257,9 @@ ln -s %{_bindir}/dpdk-devbind.py %{buildroot}%{_sbindir}/dpdk_nic_bind %endif # Fix interpreter -find %{buildroot} -name "*.py" -exec sed -i 's|python$|python3|' \{\} + -find %{buildroot} -name "*.py" -exec sed -i 's|env python|python|' \{\} + +%python3_fix_shebang +%python3_fix_shebang_path %{buildroot}%{_datadir}/%{name}/examples/ipsec-secgw/test/* +%python3_fix_shebang_path %{buildroot}%{_datadir}/%{name}/examples/pipeline/examples/* # Remove duplicates %fdupes %{buildroot}/%docdir @@ -277,6 +278,7 @@ rm -v "%{buildroot}%{_libdir}/librte_*.so*" %{_bindir}/dpdk-pdump %{_bindir}/dpdk-proc-info %{_bindir}/dpdk-test* +%{_bindir}/dpdk-graph* %files -n %{lname} %license license/gpl-2.0.txt license/lgpl-2.1.txt license/bsd-3-clause.txt diff --git a/preamble b/preamble deleted file mode 100644 index 815b8d5..0000000 --- a/preamble +++ /dev/null @@ -1,4 +0,0 @@ -Requires: kernel-%1 -Enhances: kernel-%1 -Supplements: packageand(kernel-%1:%{-n*}) -Conflicts: dpdk-any-kmp