mirror of
https://github.com/torvalds/linux.git
synced 2026-05-12 16:18:45 +02:00
linux_kselftest-fixes-7.1-rc3
Fixes extra test number increment in ksft_exit_skip() that results in incorrect KTAP result. Fixes regression introduced by addition of explicit constructor orders for fixture tests. This addition broke the ordering of those relative to non-fixture tests and the reverse-constructor-order detection. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEPZKym/RZuOCGeA/kCwJExA0NQxwFAmn4/0MACgkQCwJExA0N QxwcXxAAjWAn/T16yWs5AV1txbTwEBv3siH6+3nMnZvgM8/VJEJRs0n6zQSjW1LQ MfR6LdZPOkRpKyspz8RxSZnHT3qeKCiOnUaJbmwA4+BXv325N4T0m18Vy+izN1w7 pda3FEoe+vlCmclVv5iD3IsaeYMvMf0/PNy58+hHO1yrzOQ0GdgQCM+xDSwYZYBg GZAYNlGkMql/XToBkBTZCTEC32MorldjKn0bs25MLDtWW+J9X+frgGmYbj2WN+9k w2EjPGpakllDOtgfmj53Sa5BW9B8U25KXzpZryovwi5NHPhxz+VsdNet8YNkd0yy VMqIYCPdvpC7DPMKdEboWlXMm3j7oiOeADXZGA8vEAvcXn0JmTbBy97RIsn+5wME jqAtM4oj+n01QryxDF4pllJU5X5nvam+aO8Nax5jo1u8djQ1eFZToy8QviDT7oSE dNJzWfzadOkWnHhBbEqjI7RxWbOwxU0yKHjun69ucmROP9zcK02Tw0PEb5rGkcu5 1fb/isNtszBe/LNvrERjPTty52g7K80kw05byzYCwjR1IUFLBX+Xjrs9mLuthIbD 7Mk4HlErKLK5YPLc2gwlI4KQNqoSZqirWQFqy0y9pFHL0Ip0ot8Ne190imP6i18A lEzr0J22EuCmAlWs+Wn6RpCq3J3845ybq0lH2Hl+HfJphyPd/Fk= =u8Qv -----END PGP SIGNATURE----- Merge tag 'linux_kselftest-fixes-7.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest Pull kselftest fixes from Shuah Khan: - Fix extra test number increment in ksft_exit_skip() that results in incorrect KTAP result - Fix regression introduced by addition of explicit constructor orders for fixture tests. This addition broke the ordering of those relative to non-fixture tests and the reverse-constructor-order detection * tag 'linux_kselftest-fixes-7.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: selftests: harness: Restore order of test functions selftests: kselftest: fix wrong test number in ksft_exit_skip
This commit is contained in:
commit
a293ec25d5
|
|
@ -450,7 +450,7 @@ static inline __noreturn __printf(1, 2) void ksft_exit_skip(const char *msg, ...
|
|||
*/
|
||||
if (ksft_plan || ksft_test_num()) {
|
||||
ksft_cnt.ksft_xskip++;
|
||||
printf("ok %u # SKIP ", 1 + ksft_test_num());
|
||||
printf("ok %u # SKIP ", ksft_test_num());
|
||||
} else {
|
||||
printf("1..0 # SKIP ");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ static inline void __kselftest_memset_safe(void *s, int c, size_t n)
|
|||
memset(s, c, n);
|
||||
}
|
||||
|
||||
#define KSELFTEST_PRIO_TEST_F 20000
|
||||
#define KSELFTEST_PRIO_TEST 20000
|
||||
#define KSELFTEST_PRIO_XFAIL 20001
|
||||
|
||||
#define TEST_TIMEOUT_DEFAULT 30
|
||||
|
|
@ -194,7 +194,7 @@ static inline void __kselftest_memset_safe(void *s, int c, size_t n)
|
|||
.fixture = &_fixture_global, \
|
||||
.termsig = _signal, \
|
||||
.timeout = TEST_TIMEOUT_DEFAULT, }; \
|
||||
static void __attribute__((constructor)) _register_##test_name(void) \
|
||||
static void __attribute__((constructor(KSELFTEST_PRIO_TEST))) _register_##test_name(void) \
|
||||
{ \
|
||||
__register_test(&_##test_name##_object); \
|
||||
} \
|
||||
|
|
@ -238,7 +238,7 @@ static inline void __kselftest_memset_safe(void *s, int c, size_t n)
|
|||
FIXTURE_VARIANT(fixture_name); \
|
||||
static struct __fixture_metadata _##fixture_name##_fixture_object = \
|
||||
{ .name = #fixture_name, }; \
|
||||
static void __attribute__((constructor)) \
|
||||
static void __attribute__((constructor(KSELFTEST_PRIO_TEST))) \
|
||||
_register_##fixture_name##_data(void) \
|
||||
{ \
|
||||
__register_fixture(&_##fixture_name##_fixture_object); \
|
||||
|
|
@ -364,7 +364,7 @@ static inline void __kselftest_memset_safe(void *s, int c, size_t n)
|
|||
_##fixture_name##_##variant_name##_object = \
|
||||
{ .name = #variant_name, \
|
||||
.data = &_##fixture_name##_##variant_name##_variant}; \
|
||||
static void __attribute__((constructor)) \
|
||||
static void __attribute__((constructor(KSELFTEST_PRIO_TEST))) \
|
||||
_register_##fixture_name##_##variant_name(void) \
|
||||
{ \
|
||||
__register_fixture_variant(&_##fixture_name##_fixture_object, \
|
||||
|
|
@ -468,7 +468,7 @@ static inline void __kselftest_memset_safe(void *s, int c, size_t n)
|
|||
fixture_name##_teardown(_metadata, self, variant); \
|
||||
} \
|
||||
static struct __test_metadata *_##fixture_name##_##test_name##_object; \
|
||||
static void __attribute__((constructor(KSELFTEST_PRIO_TEST_F))) \
|
||||
static void __attribute__((constructor(KSELFTEST_PRIO_TEST))) \
|
||||
_register_##fixture_name##_##test_name(void) \
|
||||
{ \
|
||||
struct __test_metadata *object = mmap(NULL, sizeof(*object), \
|
||||
|
|
@ -1323,7 +1323,7 @@ static int test_harness_run(int argc, char **argv)
|
|||
return KSFT_FAIL;
|
||||
}
|
||||
|
||||
static void __attribute__((constructor)) __constructor_order_first(void)
|
||||
static void __attribute__((constructor(KSELFTEST_PRIO_TEST))) __constructor_order_first(void)
|
||||
{
|
||||
__constructor_order_forward = true;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user