mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-23 11:04:44 +08:00
61c5767603
A test to check that all supported clocks work on host and inside a new time namespace. Use both ways to get time: through VDSO and by entering the kernel with implicit syscall. Introduce a new timens directory in selftests framework for the next timens tests. Output on success: 1..10 ok 1 Passed for CLOCK_BOOTTIME (syscall) ok 2 Passed for CLOCK_BOOTTIME (vdso) ok 3 Passed for CLOCK_BOOTTIME_ALARM (syscall) ok 4 Passed for CLOCK_BOOTTIME_ALARM (vdso) ok 5 Passed for CLOCK_MONOTONIC (syscall) ok 6 Passed for CLOCK_MONOTONIC (vdso) ok 7 Passed for CLOCK_MONOTONIC_COARSE (syscall) ok 8 Passed for CLOCK_MONOTONIC_COARSE (vdso) ok 9 Passed for CLOCK_MONOTONIC_RAW (syscall) ok 10 Passed for CLOCK_MONOTONIC_RAW (vdso) # Pass 10 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 Output with lack of permissions: 1..10 not ok 1 # SKIP need to run as root Output without support of time namespaces: 1..10 not ok 1 # SKIP Time namespaces are not supported Co-developed-by: Andrei Vagin <avagin@openvz.org> Signed-off-by: Andrei Vagin <avagin@gmail.com> Signed-off-by: Dmitry Safonov <dima@arista.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/r/20191112012724.250792-29-dima@arista.com
27 lines
595 B
C
27 lines
595 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
|
|
#ifndef __SELFTEST_TIMENS_LOG_H__
|
|
#define __SELFTEST_TIMENS_LOG_H__
|
|
|
|
#define pr_msg(fmt, lvl, ...) \
|
|
ksft_print_msg("[%s] (%s:%d)\t" fmt "\n", \
|
|
lvl, __FILE__, __LINE__, ##__VA_ARGS__)
|
|
|
|
#define pr_p(func, fmt, ...) func(fmt ": %m", ##__VA_ARGS__)
|
|
|
|
#define pr_err(fmt, ...) \
|
|
({ \
|
|
ksft_test_result_error(fmt "\n", ##__VA_ARGS__); \
|
|
-1; \
|
|
})
|
|
|
|
#define pr_fail(fmt, ...) \
|
|
({ \
|
|
ksft_test_result_fail(fmt, ##__VA_ARGS__); \
|
|
-1; \
|
|
})
|
|
|
|
#define pr_perror(fmt, ...) pr_p(pr_err, fmt, ##__VA_ARGS__)
|
|
|
|
#endif
|