[PATCH v8 0/2] bpftool: Refactor config parsing and add CET symbol matching

chenyuan_fl@163.com posted 2 patches 1 month ago
tools/bpf/bpftool/common.c  | 93 +++++++++++++++++++++++++++++++++++++
tools/bpf/bpftool/feature.c | 86 ++--------------------------------
tools/bpf/bpftool/link.c    | 38 ++++++++++++++-
tools/bpf/bpftool/main.h    |  9 ++++
4 files changed, 142 insertions(+), 84 deletions(-)
[PATCH v8 0/2] bpftool: Refactor config parsing and add CET symbol matching
Posted by chenyuan_fl@163.com 1 month ago
From: Yuan CHen <chenyuan@kylinos.cn>

1. **Refactor kernel config parsing**  
   - Moves duplicate config file handling from feature.c to common.c  
   - Keeps all existing functionality while enabling code reuse  

2. **Add CET-aware symbol matching**  
   - Adjusts kprobe hook detection for x86_64 CET (endbr32/64 prefixes)  
   - Matches symbols at both original and CET-adjusted addresses  

Changed in PATCH v4:
* Refactor repeated code into a function.
* Add detection for the x86 architecture.

Changed int PATH v5:
* Remove detection for the x86 architecture.

 Changed in PATCH v6:
* Add new helper patch (1/2) to refactor kernel config reading
* Use the new read_kernel_config() in CET symbol matching (2/2) to check CONFIG_X86_KERNEL_IBT

Changed in PATCH v7:
* Display actual kprobe attachment addresses instead of symbol addresses

Yuan Chen (2):
  bpftool: Refactor kernel config reading into common helper
  bpftool: Add CET-aware symbol matching for x86_64 architectures

 tools/bpf/bpftool/common.c  | 93 +++++++++++++++++++++++++++++++++++++
 tools/bpf/bpftool/feature.c | 86 ++--------------------------------
 tools/bpf/bpftool/link.c    | 38 ++++++++++++++-
 tools/bpf/bpftool/main.h    |  9 ++++
 4 files changed, 142 insertions(+), 84 deletions(-)

-- 
2.39.5
Re: [PATCH v8 0/2] bpftool: Refactor config parsing and add CET symbol matching
Posted by Quentin Monnet 1 month ago
2025-08-29 07:11 UTC+0100 ~ chenyuan_fl@163.com
> From: Yuan CHen <chenyuan@kylinos.cn>
> 
> 1. **Refactor kernel config parsing**  
>    - Moves duplicate config file handling from feature.c to common.c  
>    - Keeps all existing functionality while enabling code reuse  
> 
> 2. **Add CET-aware symbol matching**  
>    - Adjusts kprobe hook detection for x86_64 CET (endbr32/64 prefixes)  
>    - Matches symbols at both original and CET-adjusted addresses  
> 
> Changed in PATCH v4:
> * Refactor repeated code into a function.
> * Add detection for the x86 architecture.
> 
> Changed int PATH v5:
> * Remove detection for the x86 architecture.
> 
>  Changed in PATCH v6:
> * Add new helper patch (1/2) to refactor kernel config reading
> * Use the new read_kernel_config() in CET symbol matching (2/2) to check CONFIG_X86_KERNEL_IBT
> 
> Changed in PATCH v7:
> * Display actual kprobe attachment addresses instead of symbol addresses

Hi Yuan,

Is there any difference between v7 and v8 of your series? They seem
identical, from what I can see.

Quentin
Re: [PATCH v8 0/2] bpftool: Refactor config parsing and add CET symbol matching
Posted by Quentin Monnet 1 month ago
2025-09-01 10:32 UTC+0100 ~ Quentin Monnet <qmo@kernel.org>
> 2025-08-29 07:11 UTC+0100 ~ chenyuan_fl@163.com
>> From: Yuan CHen <chenyuan@kylinos.cn>
>>
>> 1. **Refactor kernel config parsing**  
>>    - Moves duplicate config file handling from feature.c to common.c  
>>    - Keeps all existing functionality while enabling code reuse  
>>
>> 2. **Add CET-aware symbol matching**  
>>    - Adjusts kprobe hook detection for x86_64 CET (endbr32/64 prefixes)  
>>    - Matches symbols at both original and CET-adjusted addresses  
>>
>> Changed in PATCH v4:
>> * Refactor repeated code into a function.
>> * Add detection for the x86 architecture.
>>
>> Changed int PATH v5:
>> * Remove detection for the x86 architecture.
>>
>>  Changed in PATCH v6:
>> * Add new helper patch (1/2) to refactor kernel config reading
>> * Use the new read_kernel_config() in CET symbol matching (2/2) to check CONFIG_X86_KERNEL_IBT
>>
>> Changed in PATCH v7:
>> * Display actual kprobe attachment addresses instead of symbol addresses
> 
> Hi Yuan,
> 
> Is there any difference between v7 and v8 of your series? They seem
> identical, from what I can see.


From Yuan's reply (please let's stick to the ML :) )

> The v7 and v8 patches are identical in code changes. The only update
> in v8 is the addition of "Ack-by" tags in commit messages.

OK thanks for confirming! No need to repost just to add the Ack tags
next time, maintainers can pick them up automatically before applying to
their tree.

Thanks,
Quentin