mm/damon/core-test: test damon_split_region_at()'s access rate copying
damon_split_region_at() should set access rate related fields of the resulting regions same. It may forgotten, and actually there was the mistake before. Test it with the unit test case for the function. Link: https://lkml.kernel.org/r/20231119171529.66863-2-sj@kernel.org Signed-off-by: SeongJae Park <sj@kernel.org> Cc: Brendan Higgins <brendanhiggins@google.com> Cc: David Gow <davidgow@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
a5989d4ed4
commit
50668b53f8
@ -122,18 +122,25 @@ static void damon_test_split_at(struct kunit *test)
|
||||
{
|
||||
struct damon_ctx *c = damon_new_ctx();
|
||||
struct damon_target *t;
|
||||
struct damon_region *r;
|
||||
struct damon_region *r, *r_new;
|
||||
|
||||
t = damon_new_target();
|
||||
r = damon_new_region(0, 100);
|
||||
r->nr_accesses_bp = 420000;
|
||||
r->nr_accesses = 42;
|
||||
r->last_nr_accesses = 15;
|
||||
damon_add_region(r, t);
|
||||
damon_split_region_at(t, r, 25);
|
||||
KUNIT_EXPECT_EQ(test, r->ar.start, 0ul);
|
||||
KUNIT_EXPECT_EQ(test, r->ar.end, 25ul);
|
||||
|
||||
r = damon_next_region(r);
|
||||
KUNIT_EXPECT_EQ(test, r->ar.start, 25ul);
|
||||
KUNIT_EXPECT_EQ(test, r->ar.end, 100ul);
|
||||
r_new = damon_next_region(r);
|
||||
KUNIT_EXPECT_EQ(test, r_new->ar.start, 25ul);
|
||||
KUNIT_EXPECT_EQ(test, r_new->ar.end, 100ul);
|
||||
|
||||
KUNIT_EXPECT_EQ(test, r->nr_accesses_bp, r_new->nr_accesses_bp);
|
||||
KUNIT_EXPECT_EQ(test, r->nr_accesses, r_new->nr_accesses);
|
||||
KUNIT_EXPECT_EQ(test, r->last_nr_accesses, r_new->last_nr_accesses);
|
||||
|
||||
damon_free_target(t);
|
||||
damon_destroy_ctx(c);
|
||||
|
Loading…
Reference in New Issue
Block a user