]> Git Repo - linux.git/commitdiff
y2038: rename itimerval to __kernel_old_itimerval
authorArnd Bergmann <[email protected]>
Fri, 15 Nov 2019 14:53:29 +0000 (15:53 +0100)
committerArnd Bergmann <[email protected]>
Wed, 18 Dec 2019 17:07:33 +0000 (18:07 +0100)
Take the renaming of timeval and timespec one level further,
also renaming itimerval to __kernel_old_itimerval, to avoid
namespace conflicts with the user-space structure that may
use 64-bit time_t members.

Signed-off-by: Arnd Bergmann <[email protected]>
include/linux/syscalls.h
include/uapi/linux/time_types.h
kernel/time/itimer.c

index d0391cc2dae90611d9ec91187342202300efc01c..27245fec2a8acdb49bf3486132883cb117f24b71 100644 (file)
@@ -16,8 +16,7 @@ struct inode;
 struct iocb;
 struct io_event;
 struct iovec;
-struct itimerspec;
-struct itimerval;
+struct __kernel_old_itimerval;
 struct kexec_segment;
 struct linux_dirent;
 struct linux_dirent64;
@@ -591,10 +590,10 @@ asmlinkage long sys_nanosleep_time32(struct old_timespec32 __user *rqtp,
                                     struct old_timespec32 __user *rmtp);
 
 /* kernel/itimer.c */
-asmlinkage long sys_getitimer(int which, struct itimerval __user *value);
+asmlinkage long sys_getitimer(int which, struct __kernel_old_itimerval __user *value);
 asmlinkage long sys_setitimer(int which,
-                               struct itimerval __user *value,
-                               struct itimerval __user *ovalue);
+                               struct __kernel_old_itimerval __user *value,
+                               struct __kernel_old_itimerval __user *ovalue);
 
 /* kernel/kexec.c */
 asmlinkage long sys_kexec_load(unsigned long entry, unsigned long nr_segments,
index 074e391d73a150f3e705183d68381fffeb90b8dd..bcc0002115d3995c231dd47cb1dd9fb712079e53 100644 (file)
@@ -33,6 +33,11 @@ struct __kernel_old_timespec {
        long                    tv_nsec;        /* nanoseconds */
 };
 
+struct __kernel_old_itimerval {
+       struct __kernel_old_timeval it_interval;/* timer interval */
+       struct __kernel_old_timeval it_value;   /* current value */
+};
+
 struct __kernel_sock_timeval {
        __s64 tv_sec;
        __s64 tv_usec;
index 9e59c9ea92aa69b06e098c323d76c81f5f0f2200..ca4e6d57d68b9128662bf61d4ef4e5c138e43034 100644 (file)
@@ -97,20 +97,20 @@ static int do_getitimer(int which, struct itimerspec64 *value)
        return 0;
 }
 
-static int put_itimerval(struct itimerval __user *o,
+static int put_itimerval(struct __kernel_old_itimerval __user *o,
                         const struct itimerspec64 *i)
 {
-       struct itimerval v;
+       struct __kernel_old_itimerval v;
 
        v.it_interval.tv_sec = i->it_interval.tv_sec;
        v.it_interval.tv_usec = i->it_interval.tv_nsec / NSEC_PER_USEC;
        v.it_value.tv_sec = i->it_value.tv_sec;
        v.it_value.tv_usec = i->it_value.tv_nsec / NSEC_PER_USEC;
-       return copy_to_user(o, &v, sizeof(struct itimerval)) ? -EFAULT : 0;
+       return copy_to_user(o, &v, sizeof(struct __kernel_old_itimerval)) ? -EFAULT : 0;
 }
 
 
-SYSCALL_DEFINE2(getitimer, int, which, struct itimerval __user *, value)
+SYSCALL_DEFINE2(getitimer, int, which, struct __kernel_old_itimerval __user *, value)
 {
        struct itimerspec64 get_buffer;
        int error = do_getitimer(which, &get_buffer);
@@ -314,11 +314,11 @@ SYSCALL_DEFINE1(alarm, unsigned int, seconds)
 
 #endif
 
-static int get_itimerval(struct itimerspec64 *o, const struct itimerval __user *i)
+static int get_itimerval(struct itimerspec64 *o, const struct __kernel_old_itimerval __user *i)
 {
-       struct itimerval v;
+       struct __kernel_old_itimerval v;
 
-       if (copy_from_user(&v, i, sizeof(struct itimerval)))
+       if (copy_from_user(&v, i, sizeof(struct __kernel_old_itimerval)))
                return -EFAULT;
 
        /* Validate the timevals in value. */
@@ -333,8 +333,8 @@ static int get_itimerval(struct itimerspec64 *o, const struct itimerval __user *
        return 0;
 }
 
-SYSCALL_DEFINE3(setitimer, int, which, struct itimerval __user *, value,
-               struct itimerval __user *, ovalue)
+SYSCALL_DEFINE3(setitimer, int, which, struct __kernel_old_itimerval __user *, value,
+               struct __kernel_old_itimerval __user *, ovalue)
 {
        struct itimerspec64 set_buffer, get_buffer;
        int error;
This page took 0.072816 seconds and 4 git commands to generate.