[PATCH v4 14/25] tools/testing/vma: update VMA flag tests to test vma_test[_any_mask]()

Lorenzo Stoakes (Oracle)
2026-03-20T19:39:23Z

Update the existing test logic to assert that vma_test(), vma_test_any()
and vma_test_any_mask() (implicitly tested via vma_test_any()) are
functioning correctly.

We already have tests for other variants like this, so it's simply a
matter of expanding those tests to also include tests for the VMA-specific
helpers.

Signed-off-by: Lorenzo Stoakes (Oracle) <ljs@kernel.org>
---
tools/testing/vma/tests/vma.c | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/tools/testing/vma/tests/vma.c b/tools/testing/vma/tests/vma.c
index 1fae25170ff7..1395d55a1e02 100644
--- a/tools/testing/vma/tests/vma.c
+++ b/tools/testing/vma/tests/vma.c
@@ -183,13 +183,18 @@ static bool test_vma_flags_test(void)
struct vm_area_desc desc = {
.vma_flags = flags,
};
+ struct vm_area_struct vma = {
+ .flags = flags,
+ };

#define do_test(_flag) \
ASSERT_TRUE(vma_flags_test(&flags, _flag)); \
+ ASSERT_TRUE(vma_test(&vma, _flag)); \
ASSERT_TRUE(vma_desc_test(&desc, _flag))

#define do_test_false(_flag) \
ASSERT_FALSE(vma_flags_test(&flags, _flag)); \
+ ASSERT_FALSE(vma_test(&vma, _flag)); \
ASSERT_FALSE(vma_desc_test(&desc, _flag))

do_test(VMA_READ_BIT);
@@ -219,15 +224,17 @@ static bool test_vma_flags_test_any(void)
, 64, 65
#endif
);
- struct vm_area_struct vma;
- struct vm_area_desc desc;
-
- vma.flags = flags;
- desc.vma_flags = flags;
+ struct vm_area_struct vma = {
+ .flags = flags,
+ };
+ struct vm_area_desc desc = {
+ .vma_flags = flags,
+ };

#define do_test(...) \
ASSERT_TRUE(vma_flags_test_any(&flags, __VA_ARGS__)); \
- ASSERT_TRUE(vma_desc_test_any(&desc, __VA_ARGS__))
+ ASSERT_TRUE(vma_desc_test_any(&desc, __VA_ARGS__)); \
+ ASSERT_TRUE(vma_test_any(&vma, __VA_ARGS__));

#define do_test_all_true(...) \
ASSERT_TRUE(vma_flags_test_all(&flags, __VA_ARGS__)); \
--
2.53.0