diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2018-07-12 16:19:58 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2018-07-12 16:19:58 -0400 |
commit | c6bb11147eb09bd39f316c6062455b88c905ab6e (patch) | |
tree | 5a1a6ec2970daef5fa8546741ced3ef3924bf807 /include/linux/compat.h | |
parent | a8802d97e73346bc81609df9dfba7d3306f40d87 (diff) | |
parent | b061c7a513afe14a68af41cec7c3476befc40e95 (diff) |
Merge branch 'fortglx/4.19/time' of https://git.linaro.org/people/john.stultz/linux into timers/core
Pull timekeeping updates from John Stultz:
- Make the timekeeping update more precise when NTP frequency is set
directly by updating the multiplier.
- Adjust selftests
Diffstat (limited to 'include/linux/compat.h')
-rw-r--r-- | include/linux/compat.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/include/linux/compat.h b/include/linux/compat.h index 18a13f2df14b..df45ee8413d6 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h | |||
@@ -72,6 +72,9 @@ | |||
72 | */ | 72 | */ |
73 | #ifndef COMPAT_SYSCALL_DEFINEx | 73 | #ifndef COMPAT_SYSCALL_DEFINEx |
74 | #define COMPAT_SYSCALL_DEFINEx(x, name, ...) \ | 74 | #define COMPAT_SYSCALL_DEFINEx(x, name, ...) \ |
75 | __diag_push(); \ | ||
76 | __diag_ignore(GCC, 8, "-Wattribute-alias", \ | ||
77 | "Type aliasing is used to sanitize syscall arguments");\ | ||
75 | asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \ | 78 | asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \ |
76 | asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ | 79 | asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ |
77 | __attribute__((alias(__stringify(__se_compat_sys##name)))); \ | 80 | __attribute__((alias(__stringify(__se_compat_sys##name)))); \ |
@@ -80,8 +83,11 @@ | |||
80 | asmlinkage long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \ | 83 | asmlinkage long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \ |
81 | asmlinkage long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ | 84 | asmlinkage long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ |
82 | { \ | 85 | { \ |
83 | return __do_compat_sys##name(__MAP(x,__SC_DELOUSE,__VA_ARGS__));\ | 86 | long ret = __do_compat_sys##name(__MAP(x,__SC_DELOUSE,__VA_ARGS__));\ |
87 | __MAP(x,__SC_TEST,__VA_ARGS__); \ | ||
88 | return ret; \ | ||
84 | } \ | 89 | } \ |
90 | __diag_pop(); \ | ||
85 | static inline long __do_compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) | 91 | static inline long __do_compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) |
86 | #endif /* COMPAT_SYSCALL_DEFINEx */ | 92 | #endif /* COMPAT_SYSCALL_DEFINEx */ |
87 | 93 | ||