Commit Graph

120 Commits

Author SHA1 Message Date
Divya Chellam
68dec754fd
dpdk: fix CVE-2024-11614
An out-of-bounds read vulnerability was found in DPDK's Vhost
library checksum offload feature. This issue enables an
untrusted or compromised guest to crash the hypervisor's vSwitch
by forging Virtio descriptors to cause out-of-bounds reads. This
flaw allows an attacker with a malicious VM using a virtio driver
to cause the vhost-user side to crash by sending a packet with a
Tx checksum offload request and an invalid csum_start offset.

References:
https://nvd.nist.gov/vuln/detail/CVE-2024-11614
https://security-tracker.debian.org/tracker/CVE-2024-11614

Upstream-patch:
https://git.dpdk.org/dpdk/commit/?id=4dc4e33ffa108e945fc8a1e2bbc7819791faa61e

Signed-off-by: Divya Chellam <divya.chellam@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2025-05-19 11:56:49 +08:00
Mun Chun Yep
2dbfc6edce dpdk/20.11: update to 20.11.10
Signed-off-by: Mun Chun Yep <mun.chun.yep@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2024-05-15 17:22:33 +08:00
Mun Chun Yep
22659ff34f dpdk/21.11: update to 21.11.7
Signed-off-by: Mun Chun Yep <mun.chun.yep@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2024-05-15 17:22:33 +08:00
Lee Chee Yang
12cd970145 dpdk/21.11: update to 21.11.5
Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-12-13 12:15:56 +08:00
Anuj Mittal
39b68f2521 dpdk-kmods: fix build with 5.18+ kernel
Backport upstream patch to fix build failures:

14:30:02  | /git/linux/igb_uio/igb_uio.c: In function 'igbuio_pci_probe':
14:30:02  | /git/linux/igb_uio/igb_uio.c:515:15: error: implicit declaration of function 'pci_set_dma_mask'; did you mean 'ipi_send_mask'? [-Werror=implicit-function-declaration]
14:30:02  |   515 |         err = pci_set_dma_mask(dev,  DMA_BIT_MASK(64));
14:30:02  |       |               ^~~~~~~~~~~~~~~~
14:30:02  |       |               ipi_send_mask

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-12-13 09:09:44 +08:00
Yogesh Tyagi
daaedac77c dpdk-module/21.11 : update version to 21.11.4
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-07-07 09:45:13 +08:00
Yogesh Tyagi
0668476ba6 dpdk/21.11 : update version to 21.11.4
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-07-07 09:45:13 +08:00
Yogesh Tyagi
2bf8b69429 dpdk-module/21.11 : update version to 21.11.3
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-05-25 12:12:45 +08:00
Yogesh Tyagi
25d31fcf9b dpdk/21.11 : update version to 21.11.3
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-05-25 12:12:45 +08:00
Yogesh Tyagi
a3ca644ecb dpdk-module/20.11 : update version to 20.11.8
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-05-25 12:12:45 +08:00
Yogesh Tyagi
3dd76145b1 dpdk/20.11 : update version to 20.11.8
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-05-25 12:12:45 +08:00
Naveen Saini
2338f2d5e7 xdp-tools: build static library
The problem with shared library is that generated object files are also
required additionally by libxdp. So build the static library instead of
installing .o files as well (which would need us to disable stripping
etc.)

Error log while building libxdp:
| libxdp: Couldn't find a BPF file with name xsk_def_xdp_prog.o
| xsk_configure(): Failed to create xsk socket

Enable production option too. Also see:

https://github.com/xdp-project/xdp-tools/issues/180

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-02-07 11:35:11 +08:00
Anuj Mittal
5471129ec3 xdp-tools: fix multilib build
The project sets libdir path to /usr/lib [1] which is not always
correct and results in failures when $libdir, as an example, is
/usr/lib64. Set the correct value of LIBDIR.

[1] https://github.com/xdp-project/xdp-tools/blob/v1.2/lib/defines.mk#L11

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-01-31 21:57:52 +08:00
Naveen Saini
d9e2b9eefb dpdk/21.11.2: add libxdp library in PACKAGECONFIG
With latest libbpf version (>=0.7.0), additional libxdp
library also require to build net/af_xdp libs.

xdp-tools provides libxdp library.

Ref:
https://git.dpdk.org/dpdk-stable/commit/drivers/net/af_xdp?h=21.11&id=6721fb14eb1f91a0afc629c61eb99e63b247c1f3

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-01-31 15:21:54 +08:00
Naveen Saini
bec785b53a xdp-tools: add recipe
xdp-tools - Library and utilities for use with XDP.

It also provides libxdp library.

https://github.com/xdp-project/xdp-tools

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2023-01-31 15:21:21 +08:00
Naveen Saini
0e62d02f27 dpdk: inherit pkgconfig
meson build using pkg-config method when searching for the dependency.

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
(cherry picked from commit a491d84ccc)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-10-18 01:20:27 +08:00
Yogesh Tyagi
0474fd940e dpdk-module/21.11: ignore CVE-2021-3839 and CVE-2022-0669
These are fixed in 21.11.1 but the CPE data in NVD is incomplete.

Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-09-19 11:22:12 +08:00
Yogesh Tyagi
b479e720ab dpdk: ignore CVE-2022-0669
This is fixed in 21.11.1 but the CPE data in NVD is incomplete.
[ upstream commit link https://git.dpdk.org/dpdk-stable/commit/?h=21.11&id=6cb68162e4b598b7c0747372fa3fcec9cddd19b8 ]

Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-09-08 10:42:41 +08:00
Yogesh Tyagi
010674478c dpdk-module/21.11 : update version to 21.11.2
Drops upstreamed patch:
 * 0001-kni_net.c-use-netif_rx-instead-of-netif_rx_ni.patch

Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-09-06 09:22:02 +08:00
Yogesh Tyagi
ec25349326 dpdk/21.11 : update version to 21.11.2
Drops upstreamed patch:
 * 0002-dma-idxd-fix-AVX2-in-non-datapath-functions.patch

Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-09-06 09:22:02 +08:00
Yogesh Tyagi
7ad385f8e9 dpdk-module/20.11 : update version to 20.11.6
Drops upstreamed patch
 * 0002-kni-update-kernel-API-to-set-random-MAC-address.patch

Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-09-06 09:22:02 +08:00
Yogesh Tyagi
cfaf998653 dpdk/20.11: update to v20.11.6
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-09-06 09:22:02 +08:00
Yogesh Tyagi
ea9013a484 dpdk: ignore CVE-2021-3839
This is fixed in 21.11.1 but the CPE data in NVD is incomplete.

Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-09-05 17:06:42 +08:00
Yongxin Liu
b06ab02b69 dpdk/21.11: fix illegal instruction on non-AVX CPU
Backport a patch from main branch to fix illegal instruction
issue on CPU which has no AVX instructions.

Reference:
https://bugs.dpdk.org/show_bug.cgi?id=1038

Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-07-13 17:11:28 +08:00
Mingli Yu
09098721b1 dpdk-module: use netif_rx() instead of netif_rx_ni()
The netif_rx_ni is removed in below commit after kernel upgraded
to 5.18, so use netif_rx() instead of netif_rx_ni() to fix the gap.
2655926aea9b net: Remove netif_rx_any_context() and netif_rx_ni().

Fixes:
  | TOPDIR/tmp-glibc/work/intel_x86_64-wrs-linux/dpdk-module/21.11.0-r0/git/kernel/linux/kni/kni_net.c: In function 'kni_net_rx_normal':
  | TOPDIR/tmp-glibc/work/intel_x86_64-wrs-linux/dpdk-module/21.11.0-r0/git/kernel/linux/kni/kni_net.c:444:17: error: implicit declaration of function 'netif_rx_ni'; did you mean 'netif_rx'? [-Werror=implicit-function-declaration]
  444 |                 netif_rx_ni(skb);

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-05-19 19:15:07 +08:00
Naveen Saini
ad5fdb707f dpdk/20.11: update to v20.11.5
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-05-06 19:05:16 +08:00
Naveen Saini
6d1f4657c8 dpdk/21.11: update to v21.11.1
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-05-06 19:05:16 +08:00
Yongxin Liu
716b61a2c9 Update LICENSE variable to use SPDX license identifiers
In oe-core commit ceda3238cdbf ("meta/meta-selftest/meta-skeleton: Update
LICENSE variable to use SPDX license identifiers"), all LICENSE variables
were updated to only use SPDX license identifiers.

Fix the following warnings:

WARNING: dpdk-21.11.0-r0 do_package_qa: QA Issue: Recipe LICENSE
includes obsolete licenses LGPLv2.1 GPLv2 [obsolete-license]
WARNING: dpdk-kmods-1.0-r0 do_package_qa: QA Issue: Recipe LICENSE
includes obsolete licenses GPL-2 [obsolete-license]

Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-03-22 13:04:09 +08:00
Anuj Mittal
f66f0fce3b layer.conf: add kirkstone to LAYERSERIES_COMPAT
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-03-02 16:34:44 +08:00
He Zhe
2b4470df8b dpdk-module: Set its COMPATIBLE_MACHINE and COMPATIBLE_HOST to align with dpdk
dpdk-module can now be built against qemux86 and etc. that do not support it
at all. To avoid confusing the users with compile-time errors, let's align it
with dpdk.

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2022-01-26 11:34:03 +08:00
Anuj Mittal
11edbc7a96 dpdk: use += with FILES when packaging PN
The packaging rules are too restrictive and lead to errors when a binary
is generated that is not currently captured by the rules. Use += so it
at least is packaged and doesn't cause errors.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-12-13 15:44:02 +08:00
Naveen Saini
21121e672c dpdk/19.11: drop recipe
dpdk 21.11 support already has been added. So time to drop it.

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-12-10 14:41:55 +08:00
Naveen Saini
d144475b16 dpdk/21.11: add recipe
Release notes:
https://doc.dpdk.org/guides-21.11/rel_notes/release_21_11.html

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-12-10 14:41:55 +08:00
Yongxin Liu
2fa997c389 dpdk-module: replace random_ether_addr() with eth_random_addr()
random_ether_addr() is finally removed in kernel commit ba530fea8ca1
("ethernet: remove random_ether_addr()"). Backport commit e6cbfd9bf30b
("kni: update kernel API to set random MAC address") from dpdk repo
to use eth_random_addr() instead.

Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-12-08 08:58:13 +08:00
Anuj Mittal
6c1b9b6cfe dpdk/19.11: upgrade 19.11.5 -> 19.11.9
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-08-28 00:39:36 +08:00
Naveen Saini
84709a1281 dpdk-kmods: use https protocol
Fetch src over https url.

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-08-20 23:07:24 +08:00
Naveen Saini
17a7102a4f dpdk-kmods: add recipe for igb_uio kernel module
It provides UIO kernek driver for Intel IGB PCI cards.

http://git.dpdk.org/dpdk-kmods/

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-08-13 10:08:11 +08:00
Anuj Mittal
dec6933961 layer.conf: add honister to LAYERSERIES_COMPAT
Mark the layer as compatible with honister and remove gatesgarth.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-08-03 23:51:34 +08:00
Anuj Mittal
7703645765 Convert to using new override syntax
Use the script convert-overrides.py to convert to new syntax.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-08-03 23:48:18 +08:00
Mohamad Noor Alim Hussin
fb2dd96868 dpdk: fix finding librt
The generated pkg-config libdpdk.pc file has the output
with full path of librt such as
<builddir>/recipe-sysroot/usr/lib/librt.so
instead of -lrt.

This will cause an issue when compile DPDK app
with static library as the librt is not found with the
hardcode path in the libdpdk.pc file.

Signed-off-by: Mohamad Noor Alim Hussin <mohamad.noor.alim.hussin@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-06-25 15:57:30 +08:00
Mingli Yu
e73b8ba6a6 dpdk: fix build with GCC 11
Fixes:
 | In function 'memset',
 |     inlined from 'test_table_stub' at test_table_tables.c:151:4:
 | /buildarea/tmp/work/intel_x86_64-wrs-linux/dpdk/19.11.5-r0/recipe-sysroot/usr/include/bits/string_fortified.h:59:10: error: '__builtin_memset' offset [0, 31] is out of the bounds [0, 0] [-Werror=array-bounds]

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-06-10 16:24:12 +08:00
Anuj Mittal
c011004a49 dpdk/20.11: disable afxdp PACKAGECONFIG by default
libbpf is in meta-oe and dpdk layer doesn't depend on oe layer.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-05-07 16:32:22 +08:00
Mohamad Noor Alim Hussin
512bad803b dpdk/20.11: Enable libbpf PACKAGECONFIG for AF_XDP driver
AF_XDP driver depend of libbpf. Enable it so that AF_XDP
driver can be compiled.

Signed-off-by: Mohamad Noor Alim Hussin <mohamad.noor.alim.hussin@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-05-07 08:43:53 +08:00
Zqiang
8fb1422a63 dpdk/20.11: add libvirt PACKAGECONFIG
Fix follow warning
"WARNING: dpdk-20.11.1-r0 do_configure: QA Issue: dpdk:
invalid PACKAGECONFIG: libvirt [invalid-packageconfig]"

Signed-off-by: Zqiang <qiang.zhang@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-04-26 10:43:43 +08:00
Naveen Saini
7ec861d3c9 dpdk-module: add recipe
This recipe builds rte_kni.ko module

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-04-16 09:03:18 +08:00
Naveen Saini
d4ddaf2e54 dpdk/20.11: add recipe
kernel module is provided using seperate dpdk-module recipe.

Release notes:
https://doc.dpdk.org/guides-20.11/rel_notes/release_20_11.html

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-04-16 09:03:18 +08:00
Naveen Saini
d511c4260b dpdk/18.11: drop recipe
Re-structured .inc and .bb

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-04-16 09:03:18 +08:00
Naveen Saini
6965aae1c2 layer.conf: add hardknott to LAYERSERIES_COMPAT
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2021-03-25 09:40:40 +08:00
Yongxin Liu
c1b8e5e910 dpdk/19.11: fix binding for built-in kernel drivers
Since commit 681a67288655 ("usertools: check if module is loaded
before binding") in dpdk, usertools/dpdk-devbind.py only checks
dynamic kernel drivers in /sys/module. So built-in kernel driver
cannot be bound.

Add "usertools-devbind-fix-binding-for-built-in-kernel-dr.patch" to
fix this issue.

Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2020-12-08 09:38:19 +08:00
Anuj Mittal
dd993590cd layer.conf: add gatesgarth to LAYERSERIES_COMPAT
And remove zeus as that is no longer supported or tested.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2020-10-19 11:51:45 +08:00