Add a test in order to prevent regressions. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Cc: Vasily Gorbik <gor@linux.ibm.com> Cc: Christian Borntraeger <borntraeger@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
36 lines
784 B
C
36 lines
784 B
C
// SPDX-License-Identifier: GPL-2.0+
|
|
|
|
#include <kunit/test.h>
|
|
#include <linux/module.h>
|
|
|
|
#include "test_modules.h"
|
|
|
|
#define DECLARE_RETURN(i) int test_modules_return_ ## i(void)
|
|
REPEAT_10000(DECLARE_RETURN);
|
|
|
|
/*
|
|
* Test that modules with many relocations are loaded properly.
|
|
*/
|
|
static void test_modules_many_vmlinux_relocs(struct kunit *test)
|
|
{
|
|
int result = 0;
|
|
|
|
#define CALL_RETURN(i) result += test_modules_return_ ## i()
|
|
REPEAT_10000(CALL_RETURN);
|
|
KUNIT_ASSERT_EQ(test, result, 49995000);
|
|
}
|
|
|
|
static struct kunit_case modules_testcases[] = {
|
|
KUNIT_CASE(test_modules_many_vmlinux_relocs),
|
|
{}
|
|
};
|
|
|
|
static struct kunit_suite modules_test_suite = {
|
|
.name = "modules_test_s390",
|
|
.test_cases = modules_testcases,
|
|
};
|
|
|
|
kunit_test_suites(&modules_test_suite);
|
|
|
|
MODULE_LICENSE("GPL");
|