Re: [PATCH v2 bpf-next 0/5] btf_dedup algorithm and test fixes

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

 



On 03/01/2019 12:31 AM, Andrii Nakryiko wrote:
> This patchset fixes a bug in btf_dedup() algorithm, which under specific hash
> collision causes infinite loop. It also exposes ability to tune BTF
> deduplication table size, with double purpose of allowing applications to
> adjust size according to the size of BTF data, as well as allowing a simple way
> to force hash collisions by setting table size to 1.
> 
> - Patch #1 fixes bug in btf_dedup testing code that's checking strings
> - Patch #2 fixes pointer arg formatting in btf.h
> - Patch #3 adds option to specify custom dedup table size
> - Patch #4 fixes aforementioned bug in btf_dedup
> - Patch #5 adds test that validates the fix
> 
> v1->v2:
> - remove "Fixes" from formatting change patch
> - extract roundup_pow2_max func for dedup table size
> - btf_equal_struct -> btf_shallow_equal_struct
> - explain in comment why we can't rely on just btf_dedup_is_equiv
> 
> Andrii Nakryiko (5):
>   selftests/bpf: fix btf_dedup testing code
>   libbpf: fix formatting for btf_ext__get_raw_data
>   btf: allow to customize dedup hash table size
>   btf: fix bug with resolving STRUCT/UNION into corresponding FWD
>   selftests/bpf: add btf_dedup test of FWD/STRUCT resolution
> 
>  tools/lib/bpf/btf.c                    | 73 +++++++++++++++++++-------
>  tools/lib/bpf/btf.h                    |  3 +-
>  tools/testing/selftests/bpf/.gitignore |  1 +
>  tools/testing/selftests/bpf/test_btf.c | 49 ++++++++++++++++-
>  4 files changed, 103 insertions(+), 23 deletions(-)
> 

Applied, thanks!



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux