linux/time32.h: Extract common header for vDSO
authorVincenzo Frascino <vincenzo.frascino@arm.com>
Fri, 20 Mar 2020 14:53:36 +0000 (14:53 +0000)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 21 Mar 2020 14:23:57 +0000 (15:23 +0100)
The vDSO library should only include the necessary headers required for
a userspace library (UAPI and a minimal set of kernel headers). To make
this possible it is necessary to isolate from the kernel headers the
common parts that are strictly necessary to build the library.

Split time32.h into linux and common headers to make the latter suitable
for inclusion in the vDSO library.

Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20200320145351.32292-12-vincenzo.frascino@arm.com
include/linux/time32.h
include/vdso/time32.h [new file with mode: 0644]

index cad4c31..0933f28 100644 (file)
 #include <linux/time64.h>
 #include <linux/timex.h>
 
-#define TIME_T_MAX     (__kernel_old_time_t)((1UL << ((sizeof(__kernel_old_time_t) << 3) - 1)) - 1)
-
-typedef s32            old_time32_t;
-
-struct old_timespec32 {
-       old_time32_t    tv_sec;
-       s32             tv_nsec;
-};
+#include <vdso/time32.h>
 
-struct old_timeval32 {
-       old_time32_t    tv_sec;
-       s32             tv_usec;
-};
+#define TIME_T_MAX     (__kernel_old_time_t)((1UL << ((sizeof(__kernel_old_time_t) << 3) - 1)) - 1)
 
 struct old_itimerspec32 {
        struct old_timespec32 it_interval;
diff --git a/include/vdso/time32.h b/include/vdso/time32.h
new file mode 100644 (file)
index 0000000..fdf56f9
--- /dev/null
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __VDSO_TIME32_H
+#define __VDSO_TIME32_H
+
+typedef s32            old_time32_t;
+
+struct old_timespec32 {
+       old_time32_t    tv_sec;
+       s32             tv_nsec;
+};
+
+struct old_timeval32 {
+       old_time32_t    tv_sec;
+       s32             tv_usec;
+};
+
+#endif /* __VDSO_TIME32_H */