| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Avoid line statements from bison to fix:
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/src/debug/bpftrace/0.21.2+git/parser.tab.cc in package bpftrace-src contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/src/debug/bpftrace/0.21.2+git/location.hh in package bpftrace-src contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/src/debug/bpftrace/0.21.2+git/parser.tab.hh in package bpftrace-src contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/src/debug/bpftrace/0.21.2+git/lex.yy.cc in package bpftrace-src contains reference to TMPDIR [buildpaths]
* there are still few more buildpaths issues with ptest enabled:
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/src/debug/bpftrace/0.21.2+git/tests/data/dwarf_data.h in package bpftrace-src contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/lib/bpftrace/ptest/tests/.debug/bpftrace_test in package bpftrace-dbg contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/lib/bpftrace/ptest/tests/bpftrace_test in package bpftrace-ptest contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/lib/bpftrace/ptest/tests/testlibs/cmake_install.cmake in package bpftrace-ptest contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/lib/bpftrace/ptest/tests/testlibs/CTestTestfile.cmake in package bpftrace-ptest contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/lib/bpftrace/ptest/tests/testprogs/cmake_install.cmake in package bpftrace-ptest contains reference to TMPDIR [buildpaths]
WARNING: bpftrace-0.21.2+git-r0 do_package_qa: QA Issue: File /usr/lib/bpftrace/ptest/tests/testprogs/CTestTestfile.cmake in package bpftrace-ptest contains reference to TMPDIR [buildpaths]
* lower buildpaths from ERROR_QA to WARN_QA when ptest is enabled
fixing .cmake files might be simple, but the embedded path to dwarf_data.h
in bpftrace_test will be more complicated, so will leave it to
someone actually using bpftrace (and its ptest).
bpftrace/0.21.2+git/package $ grep -R styhead .
./usr/lib/bpftrace/ptest/tests/testlibs/cmake_install.cmake:# Install script for directory: ${WORKDIR}/git/tests/testlibs
./usr/lib/bpftrace/ptest/tests/testlibs/cmake_install.cmake: set(CMAKE_OBJDUMP "${WORKDIR}/recipe-sysroot-native/usr/bin/aarch64-webos-linux/aarch64-webos-linux-objdump")
./usr/lib/bpftrace/ptest/tests/testlibs/CTestTestfile.cmake:# Source directory: ${WORKDIR}/git/tests/testlibs
./usr/lib/bpftrace/ptest/tests/testlibs/CTestTestfile.cmake:# Build directory: ${WORKDIR}/build/tests/testlibs
grep: ./usr/lib/bpftrace/ptest/tests/.debug/bpftrace_test: binary file matches
grep: ./usr/lib/bpftrace/ptest/tests/bpftrace_test: binary file matches
./usr/lib/bpftrace/ptest/tests/testprogs/cmake_install.cmake:# Install script for directory: ${WORKDIR}/git/tests/testprogs
./usr/lib/bpftrace/ptest/tests/testprogs/cmake_install.cmake: set(CMAKE_OBJDUMP "${WORKDIR}/recipe-sysroot-native/usr/bin/aarch64-webos-linux/aarch64-webos-linux-objdump")
./usr/lib/bpftrace/ptest/tests/testprogs/CTestTestfile.cmake:# Source directory: ${WORKDIR}/git/tests/testprogs
./usr/lib/bpftrace/ptest/tests/testprogs/CTestTestfile.cmake:# Build directory: ${WORKDIR}/build/tests/testprogs
./usr/src/debug/bpftrace/0.21.2+git/tests/data/dwarf_data.h:constexpr inline const char *dwarf_data_cxx_path = "${WORKDIR}/build/tests/data/data_source_cxx";
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dynamic-layers/meta-python
* bpftrace itself doesn't depend on meta-python, but
bpftrace from dynamic-layers/openembedded-layer depends on bcc from dynamic-layers/meta-python
so better to move it there. This way both bcc and bpftrace are either both available
at the same time or neither of them.
* fixes https://github.com/kraj/meta-clang/issues/985
ERROR: Nothing PROVIDES 'bcc' (but /mnt/secondary/poky/meta-clang/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace_0.20.1.bb DEPENDS on or otherwise requires it). Close matches:
bc
byacc
NOTE: Runtime target 'bpftrace' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['bpftrace', 'bcc']
ERROR: Required build target 'core-image-minimal' has no buildable providers.
Missing or unbuildable dependency chain was: ['core-image-minimal', 'bpftrace', 'bcc']
when only openembedded-layer (meta-oe) is in BBLAYERS and meta-python isn't.
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If kernel headers need to be extracted, bcc will attempt to load them
from a temporary directory. An unprivileged attacker could use this to
force bcc to load compromised linux headers. Linux distributions which
provide kernel headers by default are not affected by default.
Reference:
https://nvd.nist.gov/vuln/detail/CVE-2024-2314
Upstream-patch:
https://github.com/iovisor/bcc/commit/008ea09e891194c072f2a9305a3c872a241dc342
Signed-off-by: Divya Chellam <divya.chellam@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
clang dependency is already added in meta-qt6 recipe.
Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Provides libLLVM when using clang
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"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>
|
|
|
|
|
|
|
|
| |
"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>
|
|
|
|
|
|
| |
The issue has been fixed upstream
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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']
|
|
|
|
|
|
| |
Building bpftrace tests after upgrade requires pahole and llvm-objcopy.
Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
Allow clang/llvm 17 to build it
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
Add python3-setuptools-native to depends
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
| |
See [1]
[1] https://codereview.qt-project.org/c/yocto/meta-qt6/+/476890
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
This ensures bundled gn is built propertly using gnu rumtime for build
host
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Use system provided bpf and bcc
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
|
|
|
|
| |
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
| |
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Include segfault workaround for LLVM 15 OpaquePointers (a277ec4).
Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
|
|
|
|
|
|
| |
Upgrade package to include segmentation fault fix added in bb2b5d8.
Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
|
|
|
|
|
|
| |
The patch is already applied upstream so drop it.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|