d1fac9ec trace-cmd record: Always disable func_stack_trace in tracecmd_disable_all_tracing()
75e3b868 trace-cmd: utest: include libgen.h for POSIX basename()
176bc1f1 trace-cmd record: Fix compression when files are greater than 2GB
9da3427e trace-cmd lib: Use proper printf format specifiers
5f20c477 trace-cmd: Version 3.3.1
39acb4cc trace-cmd list: Use tracefs_filter_functions()
4eef18ff trace-cmd show: Add --max_latency
e4540079 trace-cmd list: Use tracefs_instances() to list instances
908d122e trace-cmd stat: Use tracefs_instances() instead of walking them
cc6de736 trace-cmd reset: Bail out immediately if user provides an invalid option
3c4fd59b trace-cmd reset: Add option to preserve specific dynamic events
19ceba14 trace-cmd reset: Update man page for -k option
bbea061f trace-cmd reset: Add bash tab completion for -B and -k
7f126040 trace-cmd utest: Add test cases for trace-cmd reset
5e8b3c16 trace-cmd lib: Prevent a memory leak in handle_options()
6295bcc1 trace-cmd record: Prevent a memory leak in show_error()
7abca575 trace-cmd lib: Check the return value of do_lseek() in trace_get_options()
22a1605c trace-cmd dump: Prevent buffer overrun in dump_clock()
52946308 trace-cmd record: Prevent memory leak in setup_network()
1b901134 trace-cmd lib: Prevent memory leak in tracecmd_create_event_hook()
59d2c3f9 trace-cmd mem: Prevent a memory leak in trace_mem()
969c36d2 trace-cmd record: Check the length of the protocol version received
201f95fd trace-cmd sqlhist: Fix missing initialization of a var
f10d39b8 trace-cmd .gitignore: Ignore utest/trace-utest in git
c76f2404 trace-cmd: Prevent buffer overflow in update_pid_filters()
db45fec2 trace-cmd: libtracecmd: Rename private functions to fix static building
d6cdfc23 trace-cmd: libtracecmd: Remove some unneeded line breaks
d14d790a trace-cmd lib: Prevent a memory leak in tracecmd_tsync_with_guest()
b948fbed trace-cmd lib: Prevent memory leak in tracecmd_msg_wait_for_cmd()
a1b5eee6 trace-cmd sqlhist: Initialize name in trace_sqlhist()
fee20bfb trace-cmd: Fix memory leak in stop_mapping_vcpus()
5f1eeba9 trace-cmd record: Fix stdin redirection to /dev/null
a1b8a0f5 trace-cmd meson: Add options for doc and utest build
24eed8d8 trace-cmd lib: Prevent a leaked FD in __tracecmd_create_buffer_recorder()
d6241881 trace-cmd sqlhist: Initialize err value to tracefs_sql()
179125a4 trace-cmd documentation: Fix typo in man of trace-cmd attach
e81cd4e3 trace-cmd lib: Copy message buffer content in get_trace_req_args()
b44a9a9f trace-cmd list: Check if any functions were found
9c44659e trace-cmd: Add trace-cmd set to bash completion (like start)
f4ede17d trace-cmd list: Show events in bash completion
2149da9c trace-cmd: Add sqlhist to bash completion
477bf923 trace-cmd: Install completion script in /usr/share/bash-completion/completions
6448ea34 trace-cmd show: Update help message for --hist and --trigger options
2fbeb317 trace-cmd list: Show all functions that match string by default
f339229f trace-cmd record: Fix compression on big-endian systems
e57b3d3e libtracecmd: Add missing error handling to trace-compress.c
b1db6f61 libtracecmd: Version 1.5.3
d0a17b4f trace-cmd: Version 3.3.2
24cdb0be trace-cmd completion: Fix trace-cmd report to show files
68bd953b trace-cmd: libtrace-cmd: Fix glob() return value checks
2d5c06e6 trace-cmd: record: Fix glob() return value checks
2c46eb6b trace-cmd split: Only open one file descriptor per CPU
9da7e594 trace-cmd: Version 3.3.3
Link: https://github.com/openwrt/openwrt/pull/20548
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Building perf on mips/malta fails on intel-pt-decoder due to a header issue
previously seen in f434643857 ("perf: fix build on PowerPC"):
In file included from util/intel-pt-decoder/intel-pt-insn-decoder.c:12:
util/intel-pt-decoder/../../../arch/x86/include/asm/insn.h: In function 'insn_field_set':
util/intel-pt-decoder/../../../arch/x86/include/asm/insn.h:56:21: error: implicit declaration of function '__cpu_to_le32'; did you mean 'cpu_to_le32'? [-Wimplicit-function-declaration]
56 | p->little = __cpu_to_le32(v);
| ^~~~~~~~~~~~~
| cpu_to_le32
util/intel-pt-decoder/../../../arch/x86/include/asm/insn.h: In function 'insn_set_byte':
util/intel-pt-decoder/../../../arch/x86/include/asm/insn.h:64:20: error: implicit declaration of function '__le32_to_cpu'; did you mean 'le32_to_cpu'? [-Wimplicit-function-declaration]
64 | p->value = __le32_to_cpu(p->little);
| ^~~~~~~~~~~~~
| le32_to_cpu
Extend the previous powerpc fix to mips, disabling intel-pt-decoder build.
cc: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/19426
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Since upstream commit:
b809fc656e763296f227b9b31e8f225e5977a8af ("perf build: Shellcheck support
for OUTPUT directory")
perf will attempt to run shellcheck on the test shell scripts, however
there is no point in doing this in OpenWrt and while perf checks for
shellcheck presence on your host it can fail to build in some cases.
So, simply disable it for now.
Link: https://github.com/openwrt/openwrt/pull/19361
Signed-off-by: Robert Marko <robimarko@gmail.com>
BUILD_BPF_SKEL was set to 1 by default in upstream commit:
9925495d96efc14d885ba66c5696f664fe0e663c ("perf build: Default
BUILD_BPF_SKEL, warn/disable for missing deps")
Prior to that, it was disabled by default and you had to enable it to
build BPF skeleton support.
So in order to fix perf compilation with kernel 6.12, lets disable
BUILD_BPF_SKEL.
Fixes: #19310
Link: https://github.com/openwrt/openwrt/pull/19361
Signed-off-by: Robert Marko <robimarko@gmail.com>
libs/slang2 is getting picked up from the packages feed, if the slang2
is compiled first and then if you try to compile perf, it fails
due to unmet dependency.
Fixes:
Package perf is missing dependencies for the following libraries:
libslang.so.2
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19123
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Support new libpcap dependency and drop an old kernel version dependency.
Also improve formatting and avoid using unneeded deferred make variables.
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18712
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Change the version schema of perf to be compatible with APK as
described in this commit: e8725a932e.
Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/16930
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Remove backtick from gdb description text, as that seems to
be recognized as a shell action by compilation with apk,
causing error.
Example from test buildbot:
rstrip.sh: /builder/shared-workdir/build/sdk/build_dir/target-aarch64_generic_musl/gdb-15.2/ipkg-aarch64_generic/gdb/usr/bin/gdb: executable
bash: -c: line 1: unexpected EOF while looking for matching ``'
bash: -c: line 2: syntax error: unexpected end of file
make[3]: *** [Makefile:123: /builder/shared-workdir/build/sdk/bin/packages/aarch64_generic/base/gdb-15.2-r1.apk] Error 2
Local compilation:
rstrip.sh: /OpenWrt/aarch64/build_dir/target-aarch64_cortex-a53_musl/gdb-15.2/ipkg-aarch64_cortex-a53/gdb/usr/bin/gdb: executable
bash: -c: line 1: unexpected EOF while looking for matching ``'
make[2]: *** [Makefile:123: /OpenWrt/aarch64/bin/packages/aarch64_cortex-a53/base/gdb-15.2-r1.apk] Error 2
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/16908
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
These options are not recognized by the valgrind configure script,
remove them.
Link: https://github.com/openwrt/openwrt/pull/16633
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The valgrind configure script checks if host_cpu is set to armv7 or arm.
By default --host is set to arm-openwrt-linux and the host_cpu variable
is set to arm. Then the valgrind build tries to compile valgrind for
armv6 and fails. Set it explicitly to armv7 to compile valgrind with
armv7 support.
Fixes: 1a55d90320 ("valgrind: Update to version 3.23")
Link: https://github.com/openwrt/openwrt/pull/16633
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Use local tarballs instead of upstream generated ones. Smaller.
Fix version to be compatible with apk.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16219
Signed-off-by: Robert Marko <robimarko@gmail.com>
ply is a light-weight dynamic tracer for Linux that leverages the kernel's
BPF VM in concert with kprobes/tracepoints to attach probes to arbitrary
points in the kernel.
Most tracers that generate BPF bytecode are based on the LLVM-based BCC
toolchain; ply on the other hand has no external dependencies outside libc,
making it suitable for use on constrained embedded systems.
Currently ply supports x86_64, aarch64, arm, riscv64, riscv32, powerpc,
mips(el), and mips64(el) architectures.
Further documentation, examples and implementation details may be found at:
https://github.com/iovisor/ply.
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Newer compilers default to building with C++17 as default, which has the
register keyword removed and thus errors.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Enable building multiple test programs and related kernel modules, with
initial support for the bpf_testmod.ko module required since kernel 6.4.
Explicitly disable LTO and clean up makefile variables and formatting.
Fix a musl-related build failure by adding a kernel 6.6 patch:
360-selftests-bpf-portability-of-unprivileged-tests.patch
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Building perf's intel-pt-decoder fails on both PPC32 and PPC64:
/home/stijn/Development/OpenWrt/openwrt/staging_dir/toolchain-powerpc64_e5500_gcc-13.2.0_musl/lib/gcc/powerpc64-openwrt-linux-musl/13.2.0/../../../../powerpc64-openwrt-linux-musl/bin/ld.bfd:
/home/stijn/Development/OpenWrt/openwrt/build_dir/target-powerpc64_e5500_musl/linux-qoriq_generic/linux-6.1.86/tools/
perf-target-powerpc64_e5500_musl/perf-in.o: in function `insn_set_byte':
/home/stijn/Development/OpenWrt/openwrt/build_dir/target-powerpc64_e5500_musl/linux-qoriq_generic/linux-6.1.86/tools/perf/util/intel-pt-decoder/../../../arch/x86/include/asm/insn.h:64:
undefined reference to `__le32_to_cpu'
Add NO_AUXTRACE=1 to MAKE_FLAGS for LINUX_KARCH powerpc, which disables
build of intel-pt-decoder on both PPC32 and PPC64.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
- use Makefile.perf to prevent overriding MAKEFLAGS
- fix path to PKG_CONFIG
- link libstdc++ statically (only used for demangling)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Different from OPKG, APK uses a deterministic version schema which chips
the version into chunks and compares them individually. This enforces a
certain schema which was previously entirely flexible.
- Releases are added at the very and end prefixed with an `r` like
`1.2.3-r3`.
- Hashes are prefixed with a `~` like `1.2.3~abc123`.
- Dates become semantic versions, like `2024.04.01`
- Extra tags are possible like `_git`, `_alpha` and more.
For full details see the APK test list:
https://gitlab.alpinelinux.org/alpine/apk-tools/-/blob/master/test/version.data
Signed-off-by: Paul Spooren <mail@aparcar.org>
Update the gdb package to 14.1
* mpfr is now required, remove the 'without' and add dependency
* remove mpc 'without' that is parsed wrongly, causing "-Lno/lib"
* refresh patches
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
ledumon:
This program creates a new userspace LED class device and monitors it.
For this it es using the kmod-leds-uled.ko kernel module.
ledhwbmon:
This program monitors LED brightness level changes having its origin
in hardware/firmware, i.e. outside of kernel control.
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Add the 'tmon' packages. This is as a tool to help visualize,
tune, and test the complex thermal subsystem.
We get a compile warning for the tool that the printf format does not
fit. This commit contains a patch that fixes this warning. This patch
has also been sent upstream to the Linux kernel [1].
Links:
[1] https://lore.kernel.org/all/20231204141335.2798194-1-fe@dev.tdt.de/
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
New gdb has got libzstd support, and libzstd gets detected
at buildbot build. Explicitly disable it to avoid dependency.
Fixes: f79de8ec65 ("gdb: Update to 13.2")
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Update the devel/gdb package to version 13.2
* Remove the upstreamed patch 001-Add-support-for-readline-8.2.patch
* Adjust 130-gdb-ctrl-c.patch to upstream changes
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Make use of new toolchain define. TOOLCHAIN_DIR should be used only for
toolchain related packages and for everything else TOOLCHAIN_ROOT_DIR
and other define should be used instead.
Switch to new entry where possible.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
ChangeLog:
46952ef trace-cmd: Version 3.2
f5871a1 libtracecmd: Version 1.4.0
d498af1 trace-cmd build: Add trace-attach.c to meson build
736df06 trace-cmd: Add initial support for meson
e183566 libtracecmd: Add initial support for meson
c508713 trace-cmd test: Quiet valgrind from reporting forked children
8ec026f trace-cmd test: Close handle after opening
4c179a6 trace-cmd library: Fix memory leaks of followers
aa21520 trace-cmd: Add Makefile target for memory test
925e15f trace-cmd and library: Update the version to the development
4fa31c0 trace-cmd attach: Add new command "attach"
7e721ef trace-cmd library: Add tracecmd_get_tsc2nsec() API
8908555 tracecmd library: Unlock records in tracecmd_iterate_events()
2668b13 trace-cmd agent: Add "IP" to -N argument in help message
22ad81e trace-cmd record: Remove redundant check of instance in allocate_instance()
d7ce897 libtracecmd: Free buf_from in error path of tracecmd_compress_copy_from()
6776d7a trace-cmd: Update v7 trace.dat documentation to clarify the strings section
9d6f3ba trace-cmd record/extract: Do not destroy existing instances
9c9d5ed trace-cmd extract: Do not extract top level unless told to
4b92132 libtracecmd: Fix tracecmd_compress_copy_from() write size return
f30abfd documentation: trace-cmd-report: Document filter scope
7a390c5 trace-cmd-report: Support global filters
04ad2c6 trace-cmd report: Ensure filter is applied to single input file
edf9424 trace-cmd: Open code execvp routine to avoid multiple execve syscalls
Signed-off-by: Nick Hainke <vincent@systemli.org>
Release Notes:
https://valgrind.org/docs/manual/dist.news.html
This improves support for the memory allocator used in musl libc 1.2.2
and later which is currently used by OpenWrt.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Build and package kernel self-tests used for BPF testing, program and JIT
development. This package, together with the existing 'kmod-bpf-test', was
extensively used for past upstream Linux JIT submissions [1].
Currently this includes only 'test_verifier'; building 'test_progs' will
fail due to known endian limitations with bpftool skeletons.
[1]:https://lore.kernel.org/bpf/cover.1633392335.git.Tony.Ambardar@gmail.com
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Based on Paul Fertser <fercerpav@gmail.com>'s guidance:
Change AUTORELEASE in rules.mk to:
```
AUTORELEASE = $(if $(DUMP),0,$(shell sed -i "s/\$$(AUTORELEASE)/$(call commitcount,1)/" $(CURDIR)/Makefile))
```
then update all affected packages by:
```
for i in $(git grep -l PKG_RELEASE:=.*AUTORELEASE | sed 's^.*/\([^/]*\)/Makefile^\1^';);
do
make package/$i/clean
done
```
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>