struct sysinfo;
 struct timespec;
 struct timeval;
-struct timex;
+struct __kernel_timex;
 struct timezone;
 struct tms;
 struct utimbuf;
                                struct timezone __user *tz);
 asmlinkage long sys_settimeofday(struct timeval __user *tv,
                                struct timezone __user *tz);
-asmlinkage long sys_adjtimex(struct timex __user *txc_p);
+asmlinkage long sys_adjtimex(struct __kernel_timex __user *txc_p);
 
 /* kernel/timer.c */
 asmlinkage long sys_getpid(void);
                                      struct file_handle __user *handle,
                                      int flags);
 asmlinkage long sys_clock_adjtime(clockid_t which_clock,
-                               struct timex __user *tx);
+                               struct __kernel_timex __user *tx);
 asmlinkage long sys_syncfs(int fd);
 asmlinkage long sys_setns(int fd, int nstype);
 asmlinkage long sys_sendmmsg(int fd, struct mmsghdr __user *msg,
 
 }
 
 SYSCALL_DEFINE2(clock_adjtime, const clockid_t, which_clock,
-               struct timex __user *, utx)
+               struct __kernel_timex __user *, utx)
 {
        struct __kernel_timex ktx;
        int err;
 
 }
 #endif
 
-SYSCALL_DEFINE1(adjtimex, struct timex __user *, txc_p)
+#if !defined(CONFIG_64BIT_TIME) || defined(CONFIG_64BIT)
+SYSCALL_DEFINE1(adjtimex, struct __kernel_timex __user *, txc_p)
 {
        struct __kernel_timex txc;              /* Local copy of parameter */
        int ret;
        ret = do_adjtimex(&txc);
        return copy_to_user(txc_p, &txc, sizeof(struct __kernel_timex)) ? -EFAULT : ret;
 }
+#endif
 
 #ifdef CONFIG_COMPAT_32BIT_TIME
 int get_old_timex32(struct __kernel_timex *txc, const struct old_timex32 __user *utp)