root/arch/mips/vdso/vgettimeofday.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. __vdso_clock_gettime
  2. __vdso_gettimeofday
  3. __vdso_clock_getres
  4. __vdso_clock_gettime64
  5. __vdso_clock_gettime
  6. __vdso_gettimeofday
  7. __vdso_clock_getres

   1 // SPDX-License-Identifier: GPL-2.0-or-later
   2 /*
   3  * MIPS64 and compat userspace implementations of gettimeofday()
   4  * and similar.
   5  *
   6  * Copyright (C) 2015 Imagination Technologies
   7  * Copyright (C) 2018 ARM Limited
   8  *
   9  */
  10 #include <linux/time.h>
  11 #include <linux/types.h>
  12 
  13 #if _MIPS_SIM != _MIPS_SIM_ABI64
  14 int __vdso_clock_gettime(clockid_t clock,
  15                          struct old_timespec32 *ts)
  16 {
  17         return __cvdso_clock_gettime32(clock, ts);
  18 }
  19 
  20 #ifdef CONFIG_MIPS_CLOCK_VSYSCALL
  21 
  22 /*
  23  * This is behind the ifdef so that we don't provide the symbol when there's no
  24  * possibility of there being a usable clocksource, because there's nothing we
  25  * can do without it. When libc fails the symbol lookup it should fall back on
  26  * the standard syscall path.
  27  */
  28 int __vdso_gettimeofday(struct __kernel_old_timeval *tv,
  29                         struct timezone *tz)
  30 {
  31         return __cvdso_gettimeofday(tv, tz);
  32 }
  33 
  34 #endif /* CONFIG_MIPS_CLOCK_VSYSCALL */
  35 
  36 int __vdso_clock_getres(clockid_t clock_id,
  37                         struct old_timespec32 *res)
  38 {
  39         return __cvdso_clock_getres_time32(clock_id, res);
  40 }
  41 
  42 int __vdso_clock_gettime64(clockid_t clock,
  43                            struct __kernel_timespec *ts)
  44 {
  45         return __cvdso_clock_gettime(clock, ts);
  46 }
  47 
  48 #else
  49 
  50 int __vdso_clock_gettime(clockid_t clock,
  51                          struct __kernel_timespec *ts)
  52 {
  53         return __cvdso_clock_gettime(clock, ts);
  54 }
  55 
  56 #ifdef CONFIG_MIPS_CLOCK_VSYSCALL
  57 
  58 /*
  59  * This is behind the ifdef so that we don't provide the symbol when there's no
  60  * possibility of there being a usable clocksource, because there's nothing we
  61  * can do without it. When libc fails the symbol lookup it should fall back on
  62  * the standard syscall path.
  63  */
  64 int __vdso_gettimeofday(struct __kernel_old_timeval *tv,
  65                         struct timezone *tz)
  66 {
  67         return __cvdso_gettimeofday(tv, tz);
  68 }
  69 
  70 #endif /* CONFIG_MIPS_CLOCK_VSYSCALL */
  71 
  72 int __vdso_clock_getres(clockid_t clock_id,
  73                         struct __kernel_timespec *res)
  74 {
  75         return __cvdso_clock_getres(clock_id, res);
  76 }
  77 
  78 #endif

/* [<][>][^][v][top][bottom][index][help] */