mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-11-26 19:44:21 +08:00
Merge branch 'kunit' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git
This commit is contained in:
commit
5132d079ba
@ -260,30 +260,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
|
||||
@ -292,13 +292,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;
|
||||
}
|
||||
|
||||
|
@ -115,21 +115,21 @@ static void test_copy(struct xe_migrate *m, struct xe_bo *bo,
|
||||
region |
|
||||
XE_BO_NEEDS_CPU_ACCESS);
|
||||
if (IS_ERR(remote)) {
|
||||
KUNIT_FAIL(test, "Failed to allocate remote bo for %s: %li\n",
|
||||
str, PTR_ERR(remote));
|
||||
KUNIT_FAIL(test, "Failed to allocate remote bo for %s: %pe\n",
|
||||
str, remote);
|
||||
return;
|
||||
}
|
||||
|
||||
err = xe_bo_validate(remote, NULL, false);
|
||||
if (err) {
|
||||
KUNIT_FAIL(test, "Failed to validate system bo for %s: %li\n",
|
||||
KUNIT_FAIL(test, "Failed to validate system bo for %s: %i\n",
|
||||
str, err);
|
||||
goto out_unlock;
|
||||
}
|
||||
|
||||
err = xe_bo_vmap(remote);
|
||||
if (err) {
|
||||
KUNIT_FAIL(test, "Failed to vmap system bo for %s: %li\n",
|
||||
KUNIT_FAIL(test, "Failed to vmap system bo for %s: %i\n",
|
||||
str, err);
|
||||
goto out_unlock;
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ static void rtc_time64_to_tm_test_date_range(struct kunit *test)
|
||||
|
||||
days = div_s64(secs, 86400);
|
||||
|
||||
#define FAIL_MSG "%d/%02d/%02d (%2d) : %ld", \
|
||||
#define FAIL_MSG "%d/%02d/%02d (%2d) : %lld", \
|
||||
year, month, mday, yday, days
|
||||
|
||||
KUNIT_ASSERT_EQ_MSG(test, year - 1900, result.tm_year, FAIL_MSG);
|
||||
|
@ -579,12 +579,12 @@ void __printf(2, 3) kunit_log_append(struct string_stream *log, const char *fmt,
|
||||
|
||||
void __noreturn __kunit_abort(struct kunit *test);
|
||||
|
||||
void __kunit_do_failed_assertion(struct kunit *test,
|
||||
const struct kunit_loc *loc,
|
||||
enum kunit_assert_type type,
|
||||
const struct kunit_assert *assert,
|
||||
assert_format_t assert_format,
|
||||
const char *fmt, ...);
|
||||
void __printf(6, 7) __kunit_do_failed_assertion(struct kunit *test,
|
||||
const struct kunit_loc *loc,
|
||||
enum kunit_assert_type type,
|
||||
const struct kunit_assert *assert,
|
||||
assert_format_t assert_format,
|
||||
const char *fmt, ...);
|
||||
|
||||
#define _KUNIT_FAILED(test, assert_type, assert_class, assert_format, INITIALIZER, fmt, ...) do { \
|
||||
static const struct kunit_loc __loc = KUNIT_CURRENT_LOC; \
|
||||
|
@ -124,7 +124,7 @@ static void cmdline_do_one_range_test(struct kunit *test, const char *in,
|
||||
n, e[0], r[0]);
|
||||
|
||||
p = memchr_inv(&r[1], 0, sizeof(r) - sizeof(r[0]));
|
||||
KUNIT_EXPECT_PTR_EQ_MSG(test, p, NULL, "in test %u at %u out of bound", n, p - r);
|
||||
KUNIT_EXPECT_PTR_EQ_MSG(test, p, NULL, "in test %u at %td out of bound", n, p - r);
|
||||
}
|
||||
|
||||
static void cmdline_test_range(struct kunit *test)
|
||||
|
@ -10,6 +10,7 @@
|
||||
*/
|
||||
|
||||
#include <linux/device.h>
|
||||
#include <linux/dma-mapping.h>
|
||||
|
||||
#include <kunit/test.h>
|
||||
#include <kunit/device.h>
|
||||
@ -35,7 +36,7 @@ struct kunit_device {
|
||||
|
||||
#define to_kunit_device(d) container_of_const(d, struct kunit_device, dev)
|
||||
|
||||
static struct bus_type kunit_bus_type = {
|
||||
static const struct bus_type kunit_bus_type = {
|
||||
.name = "kunit",
|
||||
};
|
||||
|
||||
@ -133,6 +134,9 @@ static struct kunit_device *kunit_device_register_internal(struct kunit *test,
|
||||
return ERR_PTR(err);
|
||||
}
|
||||
|
||||
kunit_dev->dev.dma_mask = &kunit_dev->dev.coherent_dma_mask;
|
||||
kunit_dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
|
||||
|
||||
kunit_add_action(test, device_unregister_wrapper, &kunit_dev->dev);
|
||||
|
||||
return kunit_dev;
|
||||
|
@ -33,13 +33,13 @@ static char *filter_glob_param;
|
||||
static char *filter_param;
|
||||
static char *filter_action_param;
|
||||
|
||||
module_param_named(filter_glob, filter_glob_param, charp, 0400);
|
||||
module_param_named(filter_glob, filter_glob_param, charp, 0600);
|
||||
MODULE_PARM_DESC(filter_glob,
|
||||
"Filter which KUnit test suites/tests run at boot-time, e.g. list* or list*.*del_test");
|
||||
module_param_named(filter, filter_param, charp, 0400);
|
||||
module_param_named(filter, filter_param, charp, 0600);
|
||||
MODULE_PARM_DESC(filter,
|
||||
"Filter which KUnit test suites/tests run at boot-time using attributes, e.g. speed>slow");
|
||||
module_param_named(filter_action, filter_action_param, charp, 0400);
|
||||
module_param_named(filter_action, filter_action_param, charp, 0600);
|
||||
MODULE_PARM_DESC(filter_action,
|
||||
"Changes behavior of filtered tests using attributes, valid values are:\n"
|
||||
"<none>: do not run filtered tests as normal\n"
|
||||
|
@ -129,7 +129,7 @@ static void parse_filter_attr_test(struct kunit *test)
|
||||
GFP_KERNEL);
|
||||
for (j = 0; j < filter_count; j++) {
|
||||
parsed_filters[j] = kunit_next_attr_filter(&filter, &err);
|
||||
KUNIT_ASSERT_EQ_MSG(test, err, 0, "failed to parse filter '%s'", filters[j]);
|
||||
KUNIT_ASSERT_EQ_MSG(test, err, 0, "failed to parse filter from '%s'", filters);
|
||||
}
|
||||
|
||||
KUNIT_EXPECT_STREQ(test, kunit_attr_filter_name(parsed_filters[0]), "speed");
|
||||
|
@ -32,7 +32,7 @@ struct some_bytes {
|
||||
BUILD_BUG_ON(sizeof(instance.data) != 32); \
|
||||
for (size_t i = 0; i < sizeof(instance.data); i++) { \
|
||||
KUNIT_ASSERT_EQ_MSG(test, instance.data[i], v, \
|
||||
"line %d: '%s' not initialized to 0x%02x @ %d (saw 0x%02x)\n", \
|
||||
"line %d: '%s' not initialized to 0x%02x @ %zu (saw 0x%02x)\n", \
|
||||
__LINE__, #instance, v, i, instance.data[i]); \
|
||||
} \
|
||||
} while (0)
|
||||
@ -41,7 +41,7 @@ struct some_bytes {
|
||||
BUILD_BUG_ON(sizeof(one) != sizeof(two)); \
|
||||
for (size_t i = 0; i < sizeof(one); i++) { \
|
||||
KUNIT_EXPECT_EQ_MSG(test, one.data[i], two.data[i], \
|
||||
"line %d: %s.data[%d] (0x%02x) != %s.data[%d] (0x%02x)\n", \
|
||||
"line %d: %s.data[%zu] (0x%02x) != %s.data[%zu] (0x%02x)\n", \
|
||||
__LINE__, #one, i, one.data[i], #two, i, two.data[i]); \
|
||||
} \
|
||||
kunit_info(test, "ok: " TEST_OP "() " name "\n"); \
|
||||
|
@ -225,7 +225,7 @@ static void gso_test_func(struct kunit *test)
|
||||
|
||||
segs = skb_segment(skb, features);
|
||||
if (IS_ERR(segs)) {
|
||||
KUNIT_FAIL(test, "segs error %lld", PTR_ERR(segs));
|
||||
KUNIT_FAIL(test, "segs error %pe", segs);
|
||||
goto free_gso_skb;
|
||||
} else if (!segs) {
|
||||
KUNIT_FAIL(test, "no segments");
|
||||
|
@ -146,6 +146,7 @@ class LinuxSourceTreeOperationsUml(LinuxSourceTreeOperations):
|
||||
"""Runs the Linux UML binary. Must be named 'linux'."""
|
||||
linux_bin = os.path.join(build_dir, 'linux')
|
||||
params.extend(['mem=1G', 'console=tty', 'kunit_shutdown=halt'])
|
||||
print('Running tests with:\n$', linux_bin, ' '.join(shlex.quote(arg) for arg in params))
|
||||
return subprocess.Popen([linux_bin] + params,
|
||||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
|
Loading…
Reference in New Issue
Block a user