Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __ASM_VDSO_VSYSCALL_H
3#define __ASM_VDSO_VSYSCALL_H
4
5#define __VDSO_RND_DATA_OFFSET 768
6
7#ifndef __ASSEMBLY__
8
9#include <linux/hrtimer.h>
10#include <linux/timekeeper_internal.h>
11#include <vdso/datapage.h>
12#include <asm/vdso.h>
13
14enum vvar_pages {
15 VVAR_DATA_PAGE_OFFSET,
16 VVAR_TIMENS_PAGE_OFFSET,
17 VVAR_NR_PAGES
18};
19
20/*
21 * Update the vDSO data page to keep in sync with kernel timekeeping.
22 */
23
24static __always_inline struct vdso_data *__s390_get_k_vdso_data(void)
25{
26 return vdso_data;
27}
28#define __arch_get_k_vdso_data __s390_get_k_vdso_data
29
30static __always_inline struct vdso_rng_data *__s390_get_k_vdso_rnd_data(void)
31{
32 return (void *)vdso_data + __VDSO_RND_DATA_OFFSET;
33}
34#define __arch_get_k_vdso_rng_data __s390_get_k_vdso_rnd_data
35
36/* The asm-generic header needs to be included after the definitions above */
37#include <asm-generic/vdso/vsyscall.h>
38
39#endif /* !__ASSEMBLY__ */
40
41#endif /* __ASM_VDSO_VSYSCALL_H */