mbox series

[dwarves,0/3] Check DW_OP_[GNU_]entry_value for possible parameter matching

Message ID 20241108180508.1196431-1-yonghong.song@linux.dev (mailing list archive)
Headers show
Series Check DW_OP_[GNU_]entry_value for possible parameter matching | expand

Message

Yonghong Song Nov. 8, 2024, 6:05 p.m. UTC
Currently, pahole relies on dwarf to find whether a particular func
has its parameter mismatched with standard or optimized away.
In both these cases, the func will not be put in BTF and this
will prevent fentry/fexit tracing for these functions.

The current parameter checking focuses on the first location/expression
to match intended parameter register. But in some cases, the first
location/expression does not have expected matching information,
but further location like DW_OP_[GNU_]entry_value can provide
information which matches the expected parameter register.
Patch #3 provides details how this will work.
Patches #1 and #2 have some preparation work done for patch #3.

Yonghong Song (3):
  dwarf_loader: Refactor function parameter__new()
  dwarf_loader: Refactor function check_dwarf_locations()
  dwarf_loader: Check DW_OP_[GNU_]entry_value for possible parameter
    matching

 dwarf_loader.c | 134 +++++++++++++++++++++++++++++++++++++------------
 1 file changed, 102 insertions(+), 32 deletions(-)