diff options
author | Arnd Bergmann <arnd@arndb.de> | 2018-04-18 17:18:35 +0300 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2018-12-18 18:13:04 +0300 |
commit | 2367c4b5fa09b2947d03c5cd23d7bc0200b7fe4f (patch) | |
tree | fcced38c7b41fa8a17cae5a05f4cdd17f2eb907c /include/linux/compat.h | |
parent | df8522a340ee4ccb725036e1f9145f5646939aed (diff) | |
download | linux-2367c4b5fa09b2947d03c5cd23d7bc0200b7fe4f.tar.xz |
y2038: signal: Add compat_sys_rt_sigtimedwait_time64
Now that 32-bit architectures have two variants of sys_rt_sigtimedwaid()
for 32-bit and 64-bit time_t, we also need to have a second compat system
call entry point on the corresponding 64-bit architectures.
The traditional system call keeps getting handled
by compat_sys_rt_sigtimedwait(), and this adds a new
compat_sys_rt_sigtimedwait_time64() that differs only in the timeout
argument type.
The naming remains a bit asymmetric for the moment. Ideally we would
want to have compat_sys_rt_sigtimedwait_time32() for the old version
and compat_sys_rt_sigtimedwait() for the new one to mirror the names
of the native entry points, but renaming the existing system call
tables causes unnecessary churn. I would suggest renaming all such
system calls together at a later point.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'include/linux/compat.h')
-rw-r--r-- | include/linux/compat.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/compat.h b/include/linux/compat.h index 4b0463608589..056be0d03722 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h @@ -788,6 +788,9 @@ asmlinkage long compat_sys_rt_sigpending(compat_sigset_t __user *uset, asmlinkage long compat_sys_rt_sigtimedwait(compat_sigset_t __user *uthese, struct compat_siginfo __user *uinfo, struct old_timespec32 __user *uts, compat_size_t sigsetsize); +asmlinkage long compat_sys_rt_sigtimedwait_time64(compat_sigset_t __user *uthese, + struct compat_siginfo __user *uinfo, + struct __kernel_timespec __user *uts, compat_size_t sigsetsize); asmlinkage long compat_sys_rt_sigqueueinfo(compat_pid_t pid, int sig, struct compat_siginfo __user *uinfo); /* No generic prototype for rt_sigreturn */ |