-
Notifications
You must be signed in to change notification settings - Fork 4k
Open
Description
Environment
- OS: Arch Linux
- Package version: bcc-libbpf-tools=0.36.1-1
- Kernel: "vanilla" kernel. Version 6.18.9.arch1-2
Steps to reproduce
- Run
sudo biosnoop. Also reproducible withbiotopandbiostacks(maybe more)
Expected Behavior
Works as usual
Actual Behavior
Exits with the following error message:
*** stack smashing detected ***: terminated
fish: Job 1, 'sudo biotop' terminated by signal SIGABRT (Abort)
Exit code is 134.
Possible Root Cause
wc -L /proc/kallsymsreports306 /proc/kallsymsforlinux-zen. There's at least one symbol with a very long name, up to 287 characters. It's probably one of the mangled symbols of Rust code.
The
ksyms__loadfunction uses an on-stack string (char sym_name[256]) to hold the name of each symbol it reads, and reading any name longer than 255 characters causes a buffer overflow.
Misc
- Downstream issue: https://gitlab.archlinux.org/archlinux/packaging/packages/bcc/-/issues/6
Reactions are currently unavailable