Re: [PATCH v2 3/3] tracing/kprobes: Use APIs that matches symbols without .XXX suffix
From: Song Liu
Date: Wed Aug 07 2024 - 16:44:03 EST
> On Aug 7, 2024, at 1:40 PM, Song Liu <songliubraving@xxxxxxxx> wrote:
>
>
>
>> On Aug 7, 2024, at 1:08 PM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>>
>> On Wed, 7 Aug 2024 19:41:11 +0000
>> Song Liu <songliubraving@xxxxxxxx> wrote:
>>
>>
>>> It appears there are multiple APIs that may need change. For example, on gcc
>>> built kernel, /sys/kernel/tracing/available_filter_functions does not show
>>> the suffix:
>>>
>>> [root@(none)]# grep cmos_irq_enable /proc/kallsyms
>>> ffffffff81db5470 t __pfx_cmos_irq_enable.constprop.0
>>> ffffffff81db5480 t cmos_irq_enable.constprop.0
>>> ffffffff822dec6e t cmos_irq_enable.constprop.0.cold
>>>
>>> [root@(none)]# grep cmos_irq_enable /sys/kernel/tracing/available_filter_functions
>>> cmos_irq_enable
>>
>> Strange, I don't see that:
>>
>> ~# grep cmos_irq_enable /proc/kallsyms
>> ffffffff8f4b2500 t __pfx_cmos_irq_enable.constprop.0
>> ffffffff8f4b2510 t cmos_irq_enable.constprop.0
>>
>> ~# grep cmos_irq_enable /sys/kernel/tracing/available_filter_functions
>> cmos_irq_enable.constprop.0
>
> Ah, this is caused by my change. Let me fix that in the next version.
PS: Current code still remove .llvm.<hash> suffix from available_filter_functions.
I will change kallsyms_lookup_buildid() to not do the cleanup.
Thanks,
Song