Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys Fix up COMPAT_LINUX support for amd64. Still a work in p...



details:   https://anonhg.NetBSD.org/src/rev/56eb4d104cb7
branches:  trunk
changeset: 580919:56eb4d104cb7
user:      fvdl <fvdl%NetBSD.org@localhost>
date:      Sun May 15 21:44:41 2005 +0000

description:
Fix up COMPAT_LINUX support for amd64. Still a work in progress, not
usable yet ("Hello World" runs, but many other things do not work).

diffstat:

 sys/arch/amd64/amd64/linux_syscall.c |  5 +++--
 sys/arch/amd64/conf/files.amd64      |  9 ++++++++-
 sys/compat/linux/linux_syscall.h     |  4 +++-
 sys/compat/linux/linux_syscallargs.h |  4 +++-
 sys/compat/linux/linux_syscalls.c    |  6 ++++--
 5 files changed, 21 insertions(+), 7 deletions(-)

diffs (112 lines):

diff -r 53049a45aaae -r 56eb4d104cb7 sys/arch/amd64/amd64/linux_syscall.c
--- a/sys/arch/amd64/amd64/linux_syscall.c      Sun May 15 21:43:08 2005 +0000
+++ b/sys/arch/amd64/amd64/linux_syscall.c      Sun May 15 21:44:41 2005 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_syscall.c,v 1.1 2005/05/03 16:26:28 manu Exp $ */
+/*     $NetBSD: linux_syscall.c,v 1.2 2005/05/15 21:44:41 fvdl Exp $ */
 
 /*-
  * Copyright (c) 2005 Emmanuel Dreyfus, all rights reserved.
@@ -34,7 +34,7 @@
 #include "opt_compat_linux.h"
 #include <sys/cdefs.h>
 
-__KERNEL_RCSID(0, "$NetBSD: linux_syscall.c,v 1.1 2005/05/03 16:26:28 manu Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscall.c,v 1.2 2005/05/15 21:44:41 fvdl Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -47,6 +47,7 @@
 #include <compat/linux/common/linux_signal.h>
 #include <compat/linux/common/linux_siginfo.h>
 #include <compat/linux/arch/amd64/linux_siginfo.h>
+#include <compat/linux/arch/amd64/linux_syscall.h>
 #include <compat/linux/arch/amd64/linux_machdep.h>
 
 #define EMULNAME(x)     __CONCAT(linux_,x)
diff -r 53049a45aaae -r 56eb4d104cb7 sys/arch/amd64/conf/files.amd64
--- a/sys/arch/amd64/conf/files.amd64   Sun May 15 21:43:08 2005 +0000
+++ b/sys/arch/amd64/conf/files.amd64   Sun May 15 21:44:41 2005 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: files.amd64,v 1.14 2004/08/30 15:35:20 drochner Exp $
+#      $NetBSD: files.amd64,v 1.15 2005/05/15 21:44:42 fvdl Exp $
 #
 # new style config file for amd64 architecture
 #
@@ -162,6 +162,13 @@
 file   arch/amd64/amd64/netbsd32_sigcode.S     compat_netbsd32 & compat_16
 file   arch/amd64/amd64/netbsd32_syscall.c     compat_netbsd32
 
+# Linux compatibility (COMPAT_LINUX)
+include "compat/linux/files.linux"
+include "compat/linux/arch/amd64/files.linux_amd64"
+file   arch/amd64/amd64/linux_sigcode.S                compat_linux
+file   arch/amd64/amd64/linux_syscall.c                compat_linux
+file   arch/amd64/amd64/linux_trap.c           compat_linux
+
 # OSS audio driver compatibility
 include        "compat/ossaudio/files.ossaudio"
 
diff -r 53049a45aaae -r 56eb4d104cb7 sys/compat/linux/linux_syscall.h
--- a/sys/compat/linux/linux_syscall.h  Sun May 15 21:43:08 2005 +0000
+++ b/sys/compat/linux/linux_syscall.h  Sun May 15 21:44:41 2005 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_syscall.h,v 1.40 2002/01/14 23:14:34 bjh21 Exp $ */
+/*     $NetBSD: linux_syscall.h,v 1.41 2005/05/15 21:44:42 fvdl Exp $  */
 
 /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -51,6 +51,8 @@
 #include <compat/linux/arch/mips/linux_syscall.h>
 #elif defined(__arm__)
 #include <compat/linux/arch/arm/linux_syscall.h>
+#elif defined(__amd64__)
+#include <compat/linux/arch/amd64/linux_syscall.h>
 #else
 #define        LINUX_SYS_MAXSYSCALL    0
 #endif
diff -r 53049a45aaae -r 56eb4d104cb7 sys/compat/linux/linux_syscallargs.h
--- a/sys/compat/linux/linux_syscallargs.h      Sun May 15 21:43:08 2005 +0000
+++ b/sys/compat/linux/linux_syscallargs.h      Sun May 15 21:44:41 2005 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_syscallargs.h,v 1.38 2002/01/14 23:14:34 bjh21 Exp $     */
+/*     $NetBSD: linux_syscallargs.h,v 1.39 2005/05/15 21:44:42 fvdl Exp $      */
 
 /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -51,6 +51,8 @@
 #include <compat/linux/arch/mips/linux_syscallargs.h>
 #elif defined(__arm__)
 #include <compat/linux/arch/arm/linux_syscallargs.h>
+#elif defined(__amd64__)
+#include <compat/linux/arch/amd64/linux_syscallargs.h>
 #else
 #error Undefined linux_syscallargs.h machine type.
 #endif
diff -r 53049a45aaae -r 56eb4d104cb7 sys/compat/linux/linux_syscalls.c
--- a/sys/compat/linux/linux_syscalls.c Sun May 15 21:43:08 2005 +0000
+++ b/sys/compat/linux/linux_syscalls.c Sun May 15 21:44:41 2005 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_syscalls.c,v 1.40 2002/01/14 23:14:34 bjh21 Exp $        */
+/*     $NetBSD: linux_syscalls.c,v 1.41 2005/05/15 21:44:42 fvdl Exp $ */
 
 /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -39,7 +39,7 @@
 /* XXX XXX This exists to keep kdump and friends happy. */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: linux_syscalls.c,v 1.40 2002/01/14 23:14:34 bjh21 Exp $");
+__KERNEL_RCSID(1, "$NetBSD: linux_syscalls.c,v 1.41 2005/05/15 21:44:42 fvdl Exp $");
 
 #if defined(__i386__)
 #include "../../sys/compat/linux/arch/i386/linux_syscalls.c"
@@ -53,6 +53,8 @@
 #include "../../sys/compat/linux/arch/mips/linux_syscalls.c"
 #elif defined(__arm__)
 #include "../../sys/compat/linux/arch/arm/linux_syscalls.c"
+#elif defined(__amd64__)
+#include "../../sys/compat/linux/arch/amd64/linux_syscalls.c"
 #else
 const char * const linux_syscallnames[] = { 0 };
 #endif



Home | Main Index | Thread Index | Old Index