lkml.org 
[lkml]   [2002]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH][COMPAT] consolidate sys32_times - x86_64
Hi Andi,

The x86_64 patch ...
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

diff -ruN 2.5.51-32bit.base/arch/x86_64/ia32/ia32entry.S 2.5.51-32bit.1/arch/x86_64/ia32/ia32entry.S
--- 2.5.51-32bit.base/arch/x86_64/ia32/ia32entry.S 2002-12-10 15:46:42.000000000 +1100
+++ 2.5.51-32bit.1/arch/x86_64/ia32/ia32entry.S 2002-12-10 17:07:24.000000000 +1100
@@ -164,7 +164,7 @@
.quad sys_rmdir /* 40 */
.quad sys_dup
.quad sys32_pipe
- .quad sys32_times
+ .quad compat_sys_times
.quad ni_syscall /* old prof syscall holder */
.quad sys_brk /* 45 */
.quad sys_setgid16
diff -ruN 2.5.51-32bit.base/arch/x86_64/ia32/sys_ia32.c 2.5.51-32bit.1/arch/x86_64/ia32/sys_ia32.c
--- 2.5.51-32bit.base/arch/x86_64/ia32/sys_ia32.c 2002-12-10 15:46:42.000000000 +1100
+++ 2.5.51-32bit.1/arch/x86_64/ia32/sys_ia32.c 2002-12-10 17:07:52.000000000 +1100
@@ -1107,37 +1107,6 @@
return ret;
}

-struct tms32 {
- __kernel_clock_t32 tms_utime;
- __kernel_clock_t32 tms_stime;
- __kernel_clock_t32 tms_cutime;
- __kernel_clock_t32 tms_cstime;
-};
-
-extern int sys_times(struct tms *);
-
-asmlinkage long
-sys32_times(struct tms32 *tbuf)
-{
- struct tms t;
- long ret;
- mm_segment_t old_fs = get_fs ();
-
- set_fs (KERNEL_DS);
- ret = sys_times(tbuf ? &t : NULL);
- set_fs (old_fs);
- if (tbuf) {
- if (verify_area(VERIFY_WRITE, tbuf, sizeof(struct tms32)) ||
- __put_user (t.tms_utime, &tbuf->tms_utime) ||
- __put_user (t.tms_stime, &tbuf->tms_stime) ||
- __put_user (t.tms_cutime, &tbuf->tms_cutime) ||
- __put_user (t.tms_cstime, &tbuf->tms_cstime))
- return -EFAULT;
- }
- return ret;
-}
-
-
static inline int get_flock(struct flock *kfl, struct flock32 *ufl)
{
int err;
diff -ruN 2.5.51-32bit.base/include/asm-x86_64/compat.h 2.5.51-32bit.1/include/asm-x86_64/compat.h
--- 2.5.51-32bit.base/include/asm-x86_64/compat.h 2002-12-10 15:46:42.000000000 +1100
+++ 2.5.51-32bit.1/include/asm-x86_64/compat.h 2002-12-10 16:38:26.000000000 +1100
@@ -5,9 +5,12 @@
*/
#include <linux/types.h>

+#define COMPAT_USER_HZ 100
+
typedef u32 compat_size_t;
typedef s32 compat_ssize_t;
typedef s32 compat_time_t;
+typedef s32 compat_clock_t;

struct compat_timespec {
compat_time_t tv_sec;
diff -ruN 2.5.51-32bit.base/include/asm-x86_64/ia32.h 2.5.51-32bit.1/include/asm-x86_64/ia32.h
--- 2.5.51-32bit.base/include/asm-x86_64/ia32.h 2002-12-10 15:46:42.000000000 +1100
+++ 2.5.51-32bit.1/include/asm-x86_64/ia32.h 2002-12-10 15:44:49.000000000 +1100
@@ -5,13 +5,13 @@

#ifdef CONFIG_IA32_EMULATION

+#include <compat.h>
+
/*
* 32 bit structures for IA32 support.
*/

/* 32bit compatibility types */
-typedef int __kernel_ptrdiff_t32;
-typedef int __kernel_clock_t32;
typedef int __kernel_pid_t32;
typedef unsigned short __kernel_ipc_pid_t32;
typedef unsigned short __kernel_uid_t32;
@@ -201,8 +201,8 @@
unsigned int _pid; /* which child */
unsigned int _uid; /* sender's uid */
int _status; /* exit code */
- __kernel_clock_t32 _utime;
- __kernel_clock_t32 _stime;
+ compat_clock_t _utime;
+ compat_clock_t _stime;
} _sigchld;

/* SIGILL, SIGFPE, SIGSEGV, SIGBUS */
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 13:31    [W:0.137 / U:0.392 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site