selftests/bpf: Add selftest for bits iter
authorYafang Shao <laoar.shao@gmail.com>
Fri, 17 May 2024 02:30:34 +0000 (10:30 +0800)
committerAndrii Nakryiko <andrii@kernel.org>
Wed, 29 May 2024 23:01:48 +0000 (16:01 -0700)
commit6ba7acdb93b4ecb554d5838fca3f5f0fcf9fff14
treea7fa5ceb4f4fb94fd757e1c64161aea51fda867f
parent4665415975b0827e9646cab91c61d02a6b364d59
selftests/bpf: Add selftest for bits iter

Add test cases for the bits iter:

- Positive cases
  - Bit mask representing a single word (8-byte unit)
  - Bit mask representing data spanning more than one word
  - The index of the set bit

- Nagative cases
  - bpf_iter_bits_destroy() is required after calling
    bpf_iter_bits_new()
  - bpf_iter_bits_destroy() can only destroy an initialized iter
  - bpf_iter_bits_next() must use an initialized iter
  - Bit mask representing zero words
  - Bit mask representing fewer words than expected
  - Case for ENOMEM
  - Case for NULL pointer

Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20240517023034.48138-3-laoar.shao@gmail.com
tools/testing/selftests/bpf/prog_tests/verifier.c
tools/testing/selftests/bpf/progs/verifier_bits_iter.c [new file with mode: 0644]