mirror of
https://github.com/torvalds/linux
synced 2024-10-14 15:29:13 +00:00
drm: tests: Fix invalid printf format specifiers in KUnit tests
The drm_buddy_test's alloc_contiguous test used a u64 for the page size, which was then updated to be an 'unsigned long' to avoid 64-bit multiplication division helpers. However, the variable is logged by some KUNIT_ASSERT_EQ_MSG() using the '%d' or '%llu' format specifiers, the former of which is always wrong, and the latter is no longer correct now that ps is no longer a u64. Fix these to all use '%lu'. Also, drm_mm_test calls KUNIT_FAIL() with an empty string as the message. gcc and clang warns if a printf format string is empty, so give these some more detailed error messages, which should be more useful anyway. Fixes:a64056bb5a
("drm/tests/drm_buddy: add alloc_contiguous test") Fixes:fca7526b7d
("drm/tests/drm_buddy: fix build failure on 32-bit targets") Fixes:fc8d29e298
("drm: selftest: convert drm_mm selftest to KUnit") Reviewed-by: Matthew Auld <matthew.auld@intel.com> Acked-by: Christian König <christian.koenig@amd.com> Tested-by: Guenter Roeck <linux@roeck-us.net> Reviewed-by: Justin Stitt <justinstitt@google.com> Signed-off-by: David Gow <davidgow@google.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
This commit is contained in:
parent
689a930b93
commit
fc9a615200
|
@ -55,30 +55,30 @@ static void drm_test_buddy_alloc_contiguous(struct kunit *test)
|
|||
KUNIT_ASSERT_FALSE_MSG(test,
|
||||
drm_buddy_alloc_blocks(&mm, 0, mm_size,
|
||||
ps, ps, list, 0),
|
||||
"buddy_alloc hit an error size=%u\n",
|
||||
"buddy_alloc hit an error size=%lu\n",
|
||||
ps);
|
||||
} while (++i < n_pages);
|
||||
|
||||
KUNIT_ASSERT_TRUE_MSG(test, drm_buddy_alloc_blocks(&mm, 0, mm_size,
|
||||
3 * ps, ps, &allocated,
|
||||
DRM_BUDDY_CONTIGUOUS_ALLOCATION),
|
||||
"buddy_alloc didn't error size=%u\n", 3 * ps);
|
||||
"buddy_alloc didn't error size=%lu\n", 3 * ps);
|
||||
|
||||
drm_buddy_free_list(&mm, &middle);
|
||||
KUNIT_ASSERT_TRUE_MSG(test, drm_buddy_alloc_blocks(&mm, 0, mm_size,
|
||||
3 * ps, ps, &allocated,
|
||||
DRM_BUDDY_CONTIGUOUS_ALLOCATION),
|
||||
"buddy_alloc didn't error size=%u\n", 3 * ps);
|
||||
"buddy_alloc didn't error size=%lu\n", 3 * ps);
|
||||
KUNIT_ASSERT_TRUE_MSG(test, drm_buddy_alloc_blocks(&mm, 0, mm_size,
|
||||
2 * ps, ps, &allocated,
|
||||
DRM_BUDDY_CONTIGUOUS_ALLOCATION),
|
||||
"buddy_alloc didn't error size=%u\n", 2 * ps);
|
||||
"buddy_alloc didn't error size=%lu\n", 2 * ps);
|
||||
|
||||
drm_buddy_free_list(&mm, &right);
|
||||
KUNIT_ASSERT_TRUE_MSG(test, drm_buddy_alloc_blocks(&mm, 0, mm_size,
|
||||
3 * ps, ps, &allocated,
|
||||
DRM_BUDDY_CONTIGUOUS_ALLOCATION),
|
||||
"buddy_alloc didn't error size=%u\n", 3 * ps);
|
||||
"buddy_alloc didn't error size=%lu\n", 3 * ps);
|
||||
/*
|
||||
* At this point we should have enough contiguous space for 2 blocks,
|
||||
* however they are never buddies (since we freed middle and right) so
|
||||
|
@ -87,13 +87,13 @@ static void drm_test_buddy_alloc_contiguous(struct kunit *test)
|
|||
KUNIT_ASSERT_FALSE_MSG(test, drm_buddy_alloc_blocks(&mm, 0, mm_size,
|
||||
2 * ps, ps, &allocated,
|
||||
DRM_BUDDY_CONTIGUOUS_ALLOCATION),
|
||||
"buddy_alloc hit an error size=%u\n", 2 * ps);
|
||||
"buddy_alloc hit an error size=%lu\n", 2 * ps);
|
||||
|
||||
drm_buddy_free_list(&mm, &left);
|
||||
KUNIT_ASSERT_FALSE_MSG(test, drm_buddy_alloc_blocks(&mm, 0, mm_size,
|
||||
3 * ps, ps, &allocated,
|
||||
DRM_BUDDY_CONTIGUOUS_ALLOCATION),
|
||||
"buddy_alloc hit an error size=%u\n", 3 * ps);
|
||||
"buddy_alloc hit an error size=%lu\n", 3 * ps);
|
||||
|
||||
total = 0;
|
||||
list_for_each_entry(block, &allocated, link)
|
||||
|
|
|
@ -157,7 +157,7 @@ static void drm_test_mm_init(struct kunit *test)
|
|||
|
||||
/* After creation, it should all be one massive hole */
|
||||
if (!assert_one_hole(test, &mm, 0, size)) {
|
||||
KUNIT_FAIL(test, "");
|
||||
KUNIT_FAIL(test, "mm not one hole on creation");
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
@ -171,14 +171,14 @@ static void drm_test_mm_init(struct kunit *test)
|
|||
|
||||
/* After filling the range entirely, there should be no holes */
|
||||
if (!assert_no_holes(test, &mm)) {
|
||||
KUNIT_FAIL(test, "");
|
||||
KUNIT_FAIL(test, "mm has holes when filled");
|
||||
goto out;
|
||||
}
|
||||
|
||||
/* And then after emptying it again, the massive hole should be back */
|
||||
drm_mm_remove_node(&tmp);
|
||||
if (!assert_one_hole(test, &mm, 0, size)) {
|
||||
KUNIT_FAIL(test, "");
|
||||
KUNIT_FAIL(test, "mm does not have single hole after emptying");
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue