]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mm/damon/tests/core-kunit: extend damos_test_commit_filter_for() for union fields
authorSeongJae Park <sj@kernel.org>
Tue, 11 Nov 2025 18:44:02 +0000 (10:44 -0800)
committerAndrew Morton <akpm@linux-foundation.org>
Thu, 20 Nov 2025 21:43:59 +0000 (13:43 -0800)
damos_commit_filter() also updates union fields of 'struct damos_filter'.
Extend damos_test_commit_filter_for() to cover the expectations of the
union fields.

Link: https://lkml.kernel.org/r/20251111184415.141757-4-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Cc: Brendan Higgins <brendan.higgins@linux.dev>
Cc: David Gow <davidgow@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/damon/tests/core-kunit.h

index 31f90cfcabf3a3941a5a711db9660493108d7158..5052d8db96576971ffdd3175348a02d700c7bb4a 100644 (file)
@@ -504,6 +504,26 @@ static void damos_test_commit_filter_for(struct kunit *test,
        KUNIT_EXPECT_EQ(test, dst->type, src->type);
        KUNIT_EXPECT_EQ(test, dst->matching, src->matching);
        KUNIT_EXPECT_EQ(test, dst->allow, src->allow);
+       switch (src->type) {
+       case DAMOS_FILTER_TYPE_MEMCG:
+               KUNIT_EXPECT_EQ(test, dst->memcg_id, src->memcg_id);
+               break;
+       case DAMOS_FILTER_TYPE_ADDR:
+               KUNIT_EXPECT_EQ(test, dst->addr_range.start,
+                               src->addr_range.start);
+               KUNIT_EXPECT_EQ(test, dst->addr_range.end,
+                               src->addr_range.end);
+               break;
+       case DAMOS_FILTER_TYPE_TARGET:
+               KUNIT_EXPECT_EQ(test, dst->target_idx, src->target_idx);
+               break;
+       case DAMOS_FILTER_TYPE_HUGEPAGE_SIZE:
+               KUNIT_EXPECT_EQ(test, dst->sz_range.min, src->sz_range.min);
+               KUNIT_EXPECT_EQ(test, dst->sz_range.max, src->sz_range.max);
+               break;
+       default:
+               break;
+       }
 }
 
 static void damos_test_commit_filter(struct kunit *test)