[RESEND] BTF is not generated for gcc-built kernel with the latest pahole

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,
(I resend this because kconfig was too big)

I found that BTF is not generated for gcc-built kernel with that latest
pahole (v1.25).
When I'm using the distro origin pahole (v1.22) it works. (I also checked
v1.23 and v1.24, both partially generated BTF)

e.g.

# echo 'f kfree $arg*' >> /sys/kernel/tracing/dynamic_events
sh: write error: Invalid argument

# cat /sys/kernel/tracing/error_log 
[   21.595724] trace_fprobe: error: BTF is not available or not supported
  Command: f kfree $arg*
                   ^
[   21.596032] trace_fprobe: error: Invalid $-valiable specified
  Command: f kfree $arg*
                   ^

/ # strings /sys/kernel/btf/vmlinux | grep kfree
kfree_on_online
maybe_kfree_parameter
trace_event_raw_rcu_invoke_kfree_bulk_callback
trace_event_data_offsets_rcu_invoke_kfree_bulk_callback
btf_trace_rcu_invoke_kfree_bulk_callback
early_boot_kfree_rcu
__bpf_trace_rcu_invoke_kfree_bulk_callback
perf_trace_rcu_invoke_kfree_bulk_callback
trace_event_raw_event_rcu_invoke_kfree_bulk_callback
trace_raw_output_rcu_invoke_kfree_bulk_callback
__probestub_rcu_invoke_kfree_bulk_callback
__traceiter_rcu_invoke_kfree_bulk_callback
kfree_rcu_cpu_work
kfree_rcu_cpu
kfree_rcu_batch_init
kfree_rcu_scheduler_running
kfree_rcu_shrink_scan
kfree_rcu_shrink_count
kfree_rcu_monitor
kfree_rcu_work


Here is the gcc version which I'm using.

gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04.1)

I also attached the kernel config file.

What is the recommended combination of the tools?
Should I use Clang to build the kernel for BTF?

Thank you,

-- 
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>

Attachment: config.tar.xz
Description: application/xz


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux