summaryrefslogtreecommitdiffstats
path: root/dynamic-layers
Commit message (Collapse)AuthorAgeFilesLines
* bpftrace: fix the runtime ptest errorsWentao Zhang2024-04-093-1/+52
| | | | | | | | | | | | | | | https://github.com/bpftrace/bpftrace/pull/2935 changed the test scripts, then the runtime ptest got the following errors: | KeyError: 'BPFTRACE_AOT_RUNTIME_TEST_EXECUTABLE' | Output: /bin/sh: line 1: /usr/bin/: Is a directory\n The changes in run-ptest is to solve these problems. After fixing the previously mentioned problems, we got the the following errors while running the runtime ptest: | error: <unknown>:0:0: in function BEGIN i64 (ptr): 0x56056cec80f0: i64 = GlobalAddress<ptr @__atomic_compare_exchange> 0 too many arguments The new patch in the bb file is to solve this problem. Signed-off-by: Wentao Zhang <wentao.zhang@windriver.com>
* qt6/qttools: remove bbappendSamuli Piippo2024-03-211-1/+0
| | | | | | clang dependency is already added in meta-qt6 recipe. Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
* bcc: remove LUAJIT setting and related examplesChangqing Li2024-03-181-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current LUAJIT actually not works, below is snip of src/lua/CMakeLists.txt [snip] find_package(LuaJIT) find_program(LUAJIT luajit) if (LUAJIT_LIBRARIES AND LUAJIT) FILE(GLOB_RECURSE SRC_LUA ${CMAKE_CURRENT_SOURCE_DIR}/bcc/*.lua ${CMAKE_CURRENT_SOURCE_DIR}/bcc/vendor/*.lua ${CMAKE_CURRENT_SOURCE_DIR}/bpf/*.lua) ADD_CUSTOM_COMMAND( OUTPUT bcc.lua COMMAND ${LUAJIT} ${CMAKE_CURRENT_SOURCE_DIR}/src/squish.lua ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${SRC_LUA} ${CMAKE_CURRENT_SOURCE_DIR}/squishy ) ADD_CUSTOM_COMMAND( OUTPUT bcc.o COMMAND ${LUAJIT} -bg bcc.lua bcc.o DEPENDS bcc.lua ) [snip] LUAJIT will be set when luajit is found. For oe, maybe we need to DEPENDS on luajit-native. But there are still 2 problems after I change DEPENDS from luajit to luajit-native and export LUA_PATH="${RECIPE_SYSROOT_NATIVE}/usr/share/luajit-2.1/?.lua" 1. luajit seems not support cross compile, if our target arch is different with build host, from above snip, luajit will compile out bcc.o with host arch, int this way, compile will failed with below error: "error adding symbols: file in wrong format". Refer [1], seems like option "-a" can used to generate other arch object. But luajit-native don't have this option: cortexa57-wrs-linux/bcc/0.29.1/recipe-sysroot-native/usr/bin/luajit [options]... [script [args]...]. Available options are: -e chunk Execute string 'chunk'. -l name Require library 'name'. -b ... Save or list bytecode. -j cmd Perform LuaJIT control command. -O[opt] Control LuaJIT optimizations. -i Enter interactive mode after executing 'script'. -v Show version information. -E Ignore environment variables. – Stop handling options. 2. if target arch is the same as build host(my test env is x86-64), bcc-lua is built out, but still have 2 problems, first, "bcc-lua /usr/share/bcc/examples/lua/bashreadline.lua" has a runtime error [2]. second, bcc-lua may try to find modules on host path: root@qemux86-64:/usr/share/bcc/examples/lua# bcc-lua ./kprobe-latency.lua bcc-lua: bcc.lua:3052: module 'syscall' not found: no field package.preload['syscall'] no file './syscall.lua' no file '/build/tmp-glibc/work/x86_64-linux/luajit-native/2.1/recipe-sysroot-native/usr/share/luaj' no file '/usr/local/share/lua/5.1/syscall.lua' no file '/usr/local/share/lua/5.1/syscall/init.lua' no file '/build/tmp-glibc/work/x86_64-linux/luajit-native/2.1/recipe-sysroot-native/usr/share/lua/' no file '/build/tmp-glibc/work/x86_64-linux/luajit-native/2.1/recipe-sysroot-native/usr/share/lua/' no file './syscall.so' no file '/usr/local/lib/lua/5.1/syscall.so' no file '/build/tmp-glibc/work/x86_64-linux/luajit-native/2.1/recipe-sysroot-native/usr/lib/lua/5.' no file '/usr/local/lib/lua/5.1/loadall.so' so remove LUAJIT setting and related examples first [1] https://luajit.org/running.html [2] https://github.com/iovisor/bcc/issues/1621 Signed-off-by: Changqing Li <changqing.li@windriver.com>
* bpftrace: Upgrade to 0.20+ and fix with llvm 18Khem Raj2024-03-067-91/+418
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Do not set LLVM_PACKAGE_VERSION explicitlyKhem Raj2024-03-061-1/+0
| | | | | | | bcc's build system can detect it correctly these days from sysroot cmake files provided by llvm. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftool: Add dependency on clang-libllvmKhem Raj2024-02-011-0/+1
| | | | | | Provides libLLVM when using clang Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Upgrade to 0.29.1Khem Raj2024-01-234-85/+6
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: drop python3-distutils runtime dependencyMartin 'JaMa' Jansa2024-01-211-1/+1
| | | | | distutils package no longer exists after python 3.12 upgrade. I haven't run ptest for this, but at least it will parse well now.
* bpftrace: Do not strip uprobe_testWentao Zhang2023-12-291-0/+4
| | | | | | | | | | | | | | | | | | | | | "runtime:regression" in ptest gets the following FAILED: | nm: ./testprogs/uprobe_test: no symbols Keep the debug info of uprobe_test to pass this ptest item. the steps to repruduce: $export BPFTRACE_RUNTIME_TEST_EXECUTABLE=/usr/bin $cd /usr/lib/bpftrace/ptest/tests $python3 runtime/engine/main.py --filter="regression.*" *** | [ FAILED ] regression.address_probe_invalid_expansion | Command: /usr/bin/bpftrace -e "uprobe:./testprogs/uprobe_test:0x$ | (nm ./testprogs/uprobe_test | awk '$3 == "function1" | {print $1}') { @[probe] = count(); exit() }" | Unclean exit code: 1 | Output: nm: ./testprogs/uprobe_test: no symbols\nNo probes to attach\n *** Signed-off-by: Wentao Zhang <wentao.zhang@windriver.com>
* bpftrace: Replace python with python3 in ptestWentao Zhang2023-12-212-0/+54
| | | | | | | | "runtime:call" in ptest gets the following FAILED: | python: No such file or directory Replace python with python3 in this ptest item. Signed-off-by: Wentao Zhang <wentao.zhang@windriver.com>
* bpftrace: Build tests for rv64 againKhem Raj2023-09-211-4/+0
| | | | | | The issue has been fixed upstream Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: CMakeLists.txt: don't modify .gitconfig on build host nor try to update ↵Martin Jansa2023-09-072-0/+90
| | | | | | | | | | | | | | | | | | | | | | git submodules * bitbake fetcher will correctly handle safe.directory issues and blazesym or libbpf submodules are managed by gitsm:// fetcher we don't want to call git from CMake in do_configure * prevents many safe.directory entries in users .gitconfig when bcc was built in many different TMPDIRs added in https://github.com/iovisor/bcc/pull/4186 causing: [safe] directory = /OE/build/oe-core/tmp-glibc/work/cortexa57-oe-linux/bcc/0.28.0+git/git directory = /OE/build/oe-core/tmp-glibc/work/cortexa57-oe-linux/bcc/0.28.0+git/git/libbpf-tools/blazesym to be added for every TMPDIR where it was built Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
* bcc: move to the right dynamic-layerMartin Jansa2023-09-078-0/+0
| | | | | | | | | | | | | | | | | | | | | | | * it depends not only on meta-oe, but on meta-python as well and because meta-python depends on meta-oe, we can enable this when ever meta-python is included * fixes: NOTE: Resolving any missing task queue dependencies ERROR: Nothing RPROVIDES 'python3-pyroute2' (but /OE/build/oe-core/meta-clang/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.28.0.bb RDEPENDS on or otherwise requires it) NOTE: Runtime target 'python3-pyroute2' is unbuildable, removing... Missing or unbuildable dependency chain was: ['python3-pyroute2'] ERROR: Nothing RPROVIDES 'python3-netaddr' (but /OE/build/oe-core/meta-clang/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.28.0.bb RDEPENDS on or otherwise requires it) NOTE: Runtime target 'python3-netaddr' is unbuildable, removing... Missing or unbuildable dependency chain was: ['python3-netaddr'] ERROR: Nothing RPROVIDES 'bcc-dev' (but /OE/build/oe-core/meta-clang/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.28.0.bb RDEPENDS on or otherwise requires it) No eligible RPROVIDERs exist for 'bcc-dev' NOTE: Runtime target 'bcc-dev' is unbuildable, removing... Missing or unbuildable dependency chain was: ['bcc-dev'] ERROR: Nothing RPROVIDES 'bcc' (but /OE/build/oe-core/meta-clang/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.28.0.bb RDEPENDS on or otherwise requires it) No eligible RPROVIDERs exist for 'bcc' NOTE: Runtime target 'bcc' is unbuildable, removing... Missing or unbuildable dependency chain was: ['bcc']
* bpftrace: Fix v0.18.0 build with PTEST_ENABLEDMichal Wojcik2023-07-201-0/+1
| | | | | | Building bpftrace tests after upgrade requires pahole and llvm-objcopy. Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
* bcc: fix some of python script with wrong shebangXiangyu Chen2023-07-121-1/+1
| | | | | | | | | examples/tracing/nflatency.py has already upgraded the shebang to python3 on upstream, so when we apply the do_install:append function, the shebang of nflatency.py become /usr/bin/env python33 Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: Fix build with llvm 17Khem Raj2023-07-102-0/+59
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: Upgrade to 0.18.0Khem Raj2023-07-102-3/+3
| | | | | | Allow clang/llvm 17 to build it Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Upgrade to 0.28.0Khem Raj2023-07-062-9/+5
| | | | | | Add python3-setuptools-native to depends Signed-off-by: Khem Raj <raj.khem@gmail.com>
* qt6/qttools: Fix build with clangKhem Raj2023-06-091-0/+1
| | | | | | | | See [1] [1] https://codereview.qt-project.org/c/yocto/meta-qt6/+/476890 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: updating the shebang of python scripts in tools to python3Xiangyu Chen2023-05-301-0/+2
| | | | | | | | | the upstream changed the shebang of python scripts in tools folder[1], this would cause do_install:append cannot conver all scripts. [1] https://github.com/iovisor/bcc/commit/3f5e402bcadf44ce0250864db52673bf7317797b Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
* recipes: Update patch statusKhem Raj2023-03-304-2/+7
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* qtpdf: Inherit clang-nativeKhem Raj2023-03-221-0/+3
| | | | | | | This ensures bundled gn is built propertly using gnu rumtime for build host Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: Fix build with clang16Khem Raj2023-03-202-1/+23
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* android-tools: remove recipe and dynamic-layerEtienne Cordonnier2023-03-1553-2415/+0
| | | | | | | The recipe has been patched to remove the clang dependency and moved to meta-openembedded at https://github.com/openembedded/meta-openembedded/tree/master/meta-oe/dynamic-layers/selinux/recipes-devtool/android-tools Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* bpftrace: Upgrade to 0.17.0Khem Raj2023-03-101-1/+2
| | | | | | Use system provided bpf and bcc Signed-off-by: Khem Raj <raj.khem@gmail.com>
* android-tools: add adb daemonEtienne Cordonnier2023-03-083-0/+236
| | | | Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools: remove bashismEtienne Cordonnier2023-03-081-1/+1
| | | | Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools: allow removing fastboot from TOOLS_TO_BUILDEtienne Cordonnier2023-03-082-2/+4
| | | | | | | | The fastboot makefile is creating the directory $(OUT_DIR)/usr/bin, so removing fastboot from TOOLS_TO_BUILD in a bbappend resulted in a build failure because of the missing directory $(OUT_DIR)/usr/bin. Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* bcc: Fix tests build with clang16Khem Raj2023-03-082-0/+35
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Add missing dependency to get zip utility during buildKhem Raj2023-03-081-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Update to latest tipKhem Raj2023-03-081-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* android-tools: make it work with devtoolEtienne Cordonnier2023-03-0743-137/+1143
| | | | | | | | | | devtool modify android-tools was failing with an error: - regenerate patches in the git format working with devtool - add debian patches to yocto instead of applying them manually with do_unpack_and_patch_debian, to make it work with devtool Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools: fix libcrypto_utils link errorEtienne Cordonnier2023-03-061-1/+2
| | | | | | | | | | | | | | When building android-tools, this chain of dependency pulls the openssl library libcrypto.so.3 in recipe-sysroot: clang-native -> cmake-native -> curl-native -> openssl-native The issue is that libcrypto_utils attempt to link against the libcrypto.so produced by boringssl (debian/out/usr/lib/android/libcrypto.so), but the -L flags added by yocto to CPPFLAGS appear before the -L flag provided in the patch, and therefore the wrong library is used. Link explicitly against libcrypto.so.0 in order to ignore the openssl library and use boringssl instead. Note: to debug this add -Wl,--verbose to LDFLAGS Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools: make native version compileEtienne Cordonnier2023-03-062-2/+4
| | | | | | | | | | | Those 2 warnings (caused by the combination of -nostdlib and the options added by meta-clang) were treated as errors: """ clang-14: warning: argument unused during compilation: '-rtlib=libgcc' [-Wunused-command-line-argument] clang-14: warning: argument unused during compilation: '--unwindlib=libgcc' [-Wunused-command-line-argument] """ Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools-conf: fix typoEtienne Cordonnier2023-03-061-1/+1
| | | | Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools-conf: remove PACKAGE_ARCH = MACHINE_ARCHEtienne Cordonnier2023-03-061-2/+0
| | | | | | | | | | | | android-tools inherits the native class, and RDEPENDS on android-tools-conf. This line causes an error when trying to build android-tools-native: """ ERROR: Required build target 'android-tools-native' has no buildable providers. Missing or unbuildable dependency chain was: ['android-tools-native', 'clang-native-x86_64'] """ Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools: fix incremental builds by using ln -sfEtienne Cordonnier2023-03-0612-12/+12
| | | | | | | This avoids an error about the file already existing when debugging the recipe and starting incremental builds. Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools: correctly pass DEB_HOST_ARCH to libbacktraceEtienne Cordonnier2023-03-062-5/+3
| | | | | | | | | | | - The code was producing the error "tool: command not found" and the else branch was always executed, even for libbacktrace. - There is no variable "deb_host_arch" defined in rules.yocto, so it's not clear what the first line of the patch with DEB_HOST_ARCH=${deb_host_arch} was supposed to do. "${deb_host_arch}" is always undefined in this context. Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* android-tools: fix Upstream-Status formattingMartin Jansa2023-01-291-1/+1
| | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* bcc: Upgrade to 0.26.0Khem Raj2023-01-161-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: Simplify ptest script and use posix syntaxMichal Wojcik2022-10-202-33/+29
| | | | Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
* bpftrace: Disable ptests on riscv64Khem Raj2022-10-191-6/+13
| | | | | | | Clang crashes compiling some tests so until its fixed in riscv64 backend we have to disable it for atleast rv64 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Add ptest supportMichal Wojcik2022-10-173-1/+70
| | | | | | | | Use bcc cc and python test suites and parse their results in ptest form. Running whole suite on qemu may take up to 25 minutes, so running it with "ptest-runner -t 1800 bcc" is recommended. Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
* bpftrace: Add ptest supportMichal Wojcik2022-09-302-3/+67
| | | | | | | | | Use existing bpftrace unit and runtime tests and parse their results in ptest form. Running whole suite may take up to 40 minutes, so running it with "ptest-runner -t 2400 bpftrace" is recommended. Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
* bpftrace: Upgrade package to latest master (a277ec4)Michal Wojcik2022-09-291-1/+1
| | | | | | Include segfault workaround for LLVM 15 OpaquePointers (a277ec4). Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
* bpftrace: Upgrade package to latest master (475ad59)Michal Wojcik2022-09-281-3/+2
| | | | | | Upgrade package to include segmentation fault fix added in bb2b5d8. Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
* bpftrace: Upgrade to 0.16.0Khem Raj2022-09-072-214/+1
| | | | | | The patch is already applied upstream so drop it. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Upgrade to 0.25.0Khem Raj2022-08-141-1/+1
| | | | | | | Changes are here [1] [1] https://github.com/iovisor/bcc/releases/tag/v0.25.0 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: De-vendor libbpfDaniel Thompson2022-05-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | Currently bcc builds against a vendored copy of libbpf. This causes problems for bpftrace which is built against bcc and the system libbpf. The resulting version skew between the vendored and system versions of libbpf resulting in a SEGV whenever bpftrace is used. Although --help and -l (list probe points) work OK that is because they do not actually use BPF! Anything that does use BPF will crash immediately, including bpftrace --info and simple one-liners such as: ~# bpftrace -e 't:raw_syscalls:sys_exit { printf("%s", comm); }' Attaching 1 probe... Segmentation fault Note that this issue is very closely related to similar problems compiling bpftrace against mixed headers from the two libbpf versions. Fixes: https://github.com/iovisor/bpftrace/issues/2173 Fixes: bb3e56b06f9d ("bpftrace: Fix build with new libbpf") Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
* bcc: Fixes to allow libbpf to be de-vendoredDaniel Thompson2022-05-272-0/+125
| | | | | | | | | | | | De-vendoring libbpf resolves a SEGV everytime we run bpftrace. Unfortunately it is not currently possible to de-vendor libbpf because bcc does not build. Fix this with brute force and ignorance... and in a seperate patch so this can be treated as an explanation of the problem and ripped out in favour of the right fix. Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>