This adds a new test case for pte_t printf format. Cc: Petr Mladek <pmladek@xxxxxxxx> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx> Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx> Cc: Sergey Senozhatsky <senozhatsky@xxxxxxxxxxxx> Cc: linux-kernel@xxxxxxxxxxxxxxx Signed-off-by: Anshuman Khandual <anshuman.khandual@xxxxxxx> --- lib/tests/printf_kunit.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/lib/tests/printf_kunit.c b/lib/tests/printf_kunit.c index bc54cca2d7a6f..d94c5067e8b0d 100644 --- a/lib/tests/printf_kunit.c +++ b/lib/tests/printf_kunit.c @@ -763,6 +763,31 @@ errptr(struct kunit *kunittest) #endif } +struct pte_test { + u64 val; + const char *name; +}; + +static struct pte_test pte_test_cases[] = { + { .val = 0xc0ffee, .name = "0x00c0ffee"}, + { .val = 0xdeadbeef, .name = "0xdeadbeef"}, + { .val = 0xaabbcc, .name = "0x00aabbcc"}, +}; + +static void +pte(struct kunit *kunittest) +{ + char buf[64]; + int i; + + for (i = 0; i < ARRAY_SIZE(pte_test_cases); i++) { + pte_t pte = __pte(pte_test_cases[i].val); + + snprintf(buf, sizeof(buf), "%ppte", &pte); + KUNIT_EXPECT_STREQ(kunittest, buf, pte_test_cases[i].name); + } +} + static int printf_suite_init(struct kunit_suite *suite) { total_tests = 0; @@ -811,6 +836,7 @@ static struct kunit_case printf_test_cases[] = { KUNIT_CASE(errptr), KUNIT_CASE(fwnode_pointer), KUNIT_CASE(fourcc_pointer), + KUNIT_CASE(pte), {} }; -- 2.30.2