File Index
Files and directories
Sign in
FILE

vdso_config.h

File preview with syntax highlighting.

linux-6.19.14/tools/testing/selftests/vDSO/vdso_config.h C
 1/* SPDX-License-Identifier: GPL-2.0 */
 2/*
 3 * vdso_config.h: Configuration options for vDSO tests.
 4 * Copyright (c) 2019 Arm Ltd.
 5 */
 6#ifndef __VDSO_CONFIG_H__
 7#define __VDSO_CONFIG_H__
 8
 9/*
10 * Each architecture exports its vDSO implementation with different names
11 * and a different version from the others, so we need to handle it as a
12 * special case.
13 */
14#if defined(__arm__)
15#define VDSO_VERSION		0
16#define VDSO_NAMES		1
17#define VDSO_32BIT		1
18#elif defined(__aarch64__)
19#define VDSO_VERSION		3
20#define VDSO_NAMES		0
21#elif defined(__powerpc64__)
22#define VDSO_VERSION		1
23#define VDSO_NAMES		0
24#elif defined(__powerpc__)
25#define VDSO_VERSION		1
26#define VDSO_NAMES		0
27#define VDSO_32BIT		1
28#elif defined (__s390x__)
29#define VDSO_VERSION		2
30#define VDSO_NAMES		0
31#elif defined(__mips__)
32#define VDSO_VERSION		0
33#define VDSO_NAMES		1
34#define VDSO_32BIT		1
35#elif defined(__sparc__)
36#define VDSO_VERSION		0
37#define VDSO_NAMES		1
38#define VDSO_32BIT		1
39#elif defined(__i386__)
40#define VDSO_VERSION		0
41#define VDSO_NAMES		1
42#define VDSO_32BIT		1
43#elif defined(__x86_64__)
44#define VDSO_VERSION		0
45#define VDSO_NAMES		1
46#elif defined(__riscv__) || defined(__riscv)
47#define VDSO_VERSION		5
48#define VDSO_NAMES		1
49#if __riscv_xlen == 32
50#define VDSO_32BIT		1
51#endif
52#elif defined(__loongarch__)
53#define VDSO_VERSION		6
54#define VDSO_NAMES		1
55#endif
56
57__attribute__((unused))
58static const char *versions[7] = {
59	"LINUX_2.6",
60	"LINUX_2.6.15",
61	"LINUX_2.6.29",
62	"LINUX_2.6.39",
63	"LINUX_4",
64	"LINUX_4.15",
65	"LINUX_5.10"
66};
67
68__attribute__((unused))
69static const char *names[2][7] = {
70	{
71		"__kernel_gettimeofday",
72		"__kernel_clock_gettime",
73		"__kernel_time",
74		"__kernel_clock_getres",
75		"__kernel_getcpu",
76		"__kernel_clock_gettime64",
77		"__kernel_getrandom",
78	},
79	{
80		"__vdso_gettimeofday",
81		"__vdso_clock_gettime",
82		"__vdso_time",
83		"__vdso_clock_getres",
84		"__vdso_getcpu",
85		"__vdso_clock_gettime64",
86		"__vdso_getrandom",
87	},
88};
89
90#endif /* __VDSO_CONFIG_H__ */
~/ Read-only file preview.