linux/arch/arm/include/asm/vdso/vsyscall.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef __ASM_VDSO_VSYSCALL_H
   3#define __ASM_VDSO_VSYSCALL_H
   4
   5#ifndef __ASSEMBLY__
   6
   7#include <linux/timekeeper_internal.h>
   8#include <vdso/datapage.h>
   9#include <asm/cacheflush.h>
  10
  11extern struct vdso_data *vdso_data;
  12extern bool cntvct_ok;
  13
  14/*
  15 * Update the vDSO data page to keep in sync with kernel timekeeping.
  16 */
  17static __always_inline
  18struct vdso_data *__arm_get_k_vdso_data(void)
  19{
  20        return vdso_data;
  21}
  22#define __arch_get_k_vdso_data __arm_get_k_vdso_data
  23
  24static __always_inline
  25void __arm_sync_vdso_data(struct vdso_data *vdata)
  26{
  27        flush_dcache_page(virt_to_page(vdata));
  28}
  29#define __arch_sync_vdso_data __arm_sync_vdso_data
  30
  31/* The asm-generic header needs to be included after the definitions above */
  32#include <asm-generic/vdso/vsyscall.h>
  33
  34#endif /* !__ASSEMBLY__ */
  35
  36#endif /* __ASM_VDSO_VSYSCALL_H */
  37