diff --git a/sys/compat/linux/arch/i386/syscalls.master b/sys/compat/linux/arch/i386/syscalls.master index 99f8fc9790fb..038fc75e2c4c 100644 --- a/sys/compat/linux/arch/i386/syscalls.master +++ b/sys/compat/linux/arch/i386/syscalls.master @@ -1,4 +1,4 @@ - $NetBSD: syscalls.master,v 1.3 1995/03/10 22:55:14 fvdl Exp $ + $NetBSD: syscalls.master,v 1.4 1995/04/07 22:23:28 fvdl Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 @@ -37,6 +37,7 @@ #include #include #include +#include #include 0 NOARGS { int nosys(void); } syscall @@ -170,7 +171,7 @@ 117 STD { int linux_ipc(int what, int a1, int a2, int a3, \ caddr_t ptr); } 118 NOARGS { int fsync(int fd); } -119 UNIMPL linux_sigreturn +119 STD { int linux_sigreturn(struct linux_sigcontext *scp); } 120 UNIMPL linux_clone 121 NOARGS { int compat_09_setdomainname(char *name, int len); } 122 STD { int linux_uname(struct linux_utsname *up); } diff --git a/sys/compat/linux/common/linux_exec.c b/sys/compat/linux/common/linux_exec.c index 4cd7b41961fe..60911c442203 100644 --- a/sys/compat/linux/common/linux_exec.c +++ b/sys/compat/linux/common/linux_exec.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_exec.c,v 1.2 1995/03/05 23:23:37 fvdl Exp $ */ +/* $NetBSD: linux_exec.c,v 1.3 1995/04/07 22:23:22 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -92,8 +92,11 @@ exec_linux_aout_makecmds(p, epp) error = exec_linux_aout_prep_omagic(p, epp); break; } - if (error == 0) + if (error == 0) { + epp->ep_sigcode = linux_sigcode; + epp->ep_esigcode = linux_esigcode; epp->ep_emul = EMUL_LINUX; + } return error; } diff --git a/sys/compat/linux/common/linux_exec.h b/sys/compat/linux/common/linux_exec.h index 18349a2b5e3b..4bd97aeb20cd 100644 --- a/sys/compat/linux/common/linux_exec.h +++ b/sys/compat/linux/common/linux_exec.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_exec.h,v 1.1 1995/02/28 23:25:37 fvdl Exp $ */ +/* $NetBSD: linux_exec.h,v 1.2 1995/04/07 22:23:26 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -67,4 +67,6 @@ int exec_linux_aout_makecmds __P((struct proc *, struct exec_package *)); +extern char linux_sigcode[], linux_esigcode[]; + #endif /* !_LINUX_EXEC_H */ diff --git a/sys/compat/linux/common/linux_exec_aout.c b/sys/compat/linux/common/linux_exec_aout.c index 6c8281717afa..1ef889bf561c 100644 --- a/sys/compat/linux/common/linux_exec_aout.c +++ b/sys/compat/linux/common/linux_exec_aout.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_exec_aout.c,v 1.2 1995/03/05 23:23:37 fvdl Exp $ */ +/* $NetBSD: linux_exec_aout.c,v 1.3 1995/04/07 22:23:22 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -92,8 +92,11 @@ exec_linux_aout_makecmds(p, epp) error = exec_linux_aout_prep_omagic(p, epp); break; } - if (error == 0) + if (error == 0) { + epp->ep_sigcode = linux_sigcode; + epp->ep_esigcode = linux_esigcode; epp->ep_emul = EMUL_LINUX; + } return error; } diff --git a/sys/compat/linux/common/linux_exec_elf32.c b/sys/compat/linux/common/linux_exec_elf32.c index 7f750bcdc9a1..e7d75c290a26 100644 --- a/sys/compat/linux/common/linux_exec_elf32.c +++ b/sys/compat/linux/common/linux_exec_elf32.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_exec_elf32.c,v 1.2 1995/03/05 23:23:37 fvdl Exp $ */ +/* $NetBSD: linux_exec_elf32.c,v 1.3 1995/04/07 22:23:22 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -92,8 +92,11 @@ exec_linux_aout_makecmds(p, epp) error = exec_linux_aout_prep_omagic(p, epp); break; } - if (error == 0) + if (error == 0) { + epp->ep_sigcode = linux_sigcode; + epp->ep_esigcode = linux_esigcode; epp->ep_emul = EMUL_LINUX; + } return error; } diff --git a/sys/compat/linux/common/linux_util.h b/sys/compat/linux/common/linux_util.h index 8b2a3c8463a7..61f855192ac8 100644 --- a/sys/compat/linux/common/linux_util.h +++ b/sys/compat/linux/common/linux_util.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_util.h,v 1.2 1995/03/05 23:23:50 fvdl Exp $ */ +/* $NetBSD: linux_util.h,v 1.3 1995/04/07 22:23:27 fvdl Exp $ */ /* * Copyright (c) 1994 Christos Zoulas @@ -48,8 +48,8 @@ static __inline caddr_t stackgap_init() { - extern char sigcode[], esigcode[]; -#define szsigcode ((caddr_t)(esigcode - sigcode)) + extern char linux_sigcode[], linux_esigcode[]; +#define szsigcode ((caddr_t)(linux_esigcode - linux_sigcode)) return STACKGAPBASE; } diff --git a/sys/compat/linux/i386/syscalls.master b/sys/compat/linux/i386/syscalls.master index 99f8fc9790fb..038fc75e2c4c 100644 --- a/sys/compat/linux/i386/syscalls.master +++ b/sys/compat/linux/i386/syscalls.master @@ -1,4 +1,4 @@ - $NetBSD: syscalls.master,v 1.3 1995/03/10 22:55:14 fvdl Exp $ + $NetBSD: syscalls.master,v 1.4 1995/04/07 22:23:28 fvdl Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 @@ -37,6 +37,7 @@ #include #include #include +#include #include 0 NOARGS { int nosys(void); } syscall @@ -170,7 +171,7 @@ 117 STD { int linux_ipc(int what, int a1, int a2, int a3, \ caddr_t ptr); } 118 NOARGS { int fsync(int fd); } -119 UNIMPL linux_sigreturn +119 STD { int linux_sigreturn(struct linux_sigcontext *scp); } 120 UNIMPL linux_clone 121 NOARGS { int compat_09_setdomainname(char *name, int len); } 122 STD { int linux_uname(struct linux_utsname *up); } diff --git a/sys/compat/linux/include/linux_exec.h b/sys/compat/linux/include/linux_exec.h index 18349a2b5e3b..4bd97aeb20cd 100644 --- a/sys/compat/linux/include/linux_exec.h +++ b/sys/compat/linux/include/linux_exec.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_exec.h,v 1.1 1995/02/28 23:25:37 fvdl Exp $ */ +/* $NetBSD: linux_exec.h,v 1.2 1995/04/07 22:23:26 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -67,4 +67,6 @@ int exec_linux_aout_makecmds __P((struct proc *, struct exec_package *)); +extern char linux_sigcode[], linux_esigcode[]; + #endif /* !_LINUX_EXEC_H */ diff --git a/sys/compat/linux/include/linux_util.h b/sys/compat/linux/include/linux_util.h index 8b2a3c8463a7..61f855192ac8 100644 --- a/sys/compat/linux/include/linux_util.h +++ b/sys/compat/linux/include/linux_util.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_util.h,v 1.2 1995/03/05 23:23:50 fvdl Exp $ */ +/* $NetBSD: linux_util.h,v 1.3 1995/04/07 22:23:27 fvdl Exp $ */ /* * Copyright (c) 1994 Christos Zoulas @@ -48,8 +48,8 @@ static __inline caddr_t stackgap_init() { - extern char sigcode[], esigcode[]; -#define szsigcode ((caddr_t)(esigcode - sigcode)) + extern char linux_sigcode[], linux_esigcode[]; +#define szsigcode ((caddr_t)(linux_esigcode - linux_sigcode)) return STACKGAPBASE; } diff --git a/sys/compat/linux/linux_exec.c b/sys/compat/linux/linux_exec.c index 4cd7b41961fe..60911c442203 100644 --- a/sys/compat/linux/linux_exec.c +++ b/sys/compat/linux/linux_exec.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_exec.c,v 1.2 1995/03/05 23:23:37 fvdl Exp $ */ +/* $NetBSD: linux_exec.c,v 1.3 1995/04/07 22:23:22 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -92,8 +92,11 @@ exec_linux_aout_makecmds(p, epp) error = exec_linux_aout_prep_omagic(p, epp); break; } - if (error == 0) + if (error == 0) { + epp->ep_sigcode = linux_sigcode; + epp->ep_esigcode = linux_esigcode; epp->ep_emul = EMUL_LINUX; + } return error; } diff --git a/sys/compat/linux/linux_exec.h b/sys/compat/linux/linux_exec.h index 18349a2b5e3b..4bd97aeb20cd 100644 --- a/sys/compat/linux/linux_exec.h +++ b/sys/compat/linux/linux_exec.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_exec.h,v 1.1 1995/02/28 23:25:37 fvdl Exp $ */ +/* $NetBSD: linux_exec.h,v 1.2 1995/04/07 22:23:26 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -67,4 +67,6 @@ int exec_linux_aout_makecmds __P((struct proc *, struct exec_package *)); +extern char linux_sigcode[], linux_esigcode[]; + #endif /* !_LINUX_EXEC_H */ diff --git a/sys/compat/linux/linux_util.h b/sys/compat/linux/linux_util.h index 8b2a3c8463a7..61f855192ac8 100644 --- a/sys/compat/linux/linux_util.h +++ b/sys/compat/linux/linux_util.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_util.h,v 1.2 1995/03/05 23:23:50 fvdl Exp $ */ +/* $NetBSD: linux_util.h,v 1.3 1995/04/07 22:23:27 fvdl Exp $ */ /* * Copyright (c) 1994 Christos Zoulas @@ -48,8 +48,8 @@ static __inline caddr_t stackgap_init() { - extern char sigcode[], esigcode[]; -#define szsigcode ((caddr_t)(esigcode - sigcode)) + extern char linux_sigcode[], linux_esigcode[]; +#define szsigcode ((caddr_t)(linux_esigcode - linux_sigcode)) return STACKGAPBASE; } diff --git a/sys/compat/linux/syscalls.master b/sys/compat/linux/syscalls.master index 99f8fc9790fb..038fc75e2c4c 100644 --- a/sys/compat/linux/syscalls.master +++ b/sys/compat/linux/syscalls.master @@ -1,4 +1,4 @@ - $NetBSD: syscalls.master,v 1.3 1995/03/10 22:55:14 fvdl Exp $ + $NetBSD: syscalls.master,v 1.4 1995/04/07 22:23:28 fvdl Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 @@ -37,6 +37,7 @@ #include #include #include +#include #include 0 NOARGS { int nosys(void); } syscall @@ -170,7 +171,7 @@ 117 STD { int linux_ipc(int what, int a1, int a2, int a3, \ caddr_t ptr); } 118 NOARGS { int fsync(int fd); } -119 UNIMPL linux_sigreturn +119 STD { int linux_sigreturn(struct linux_sigcontext *scp); } 120 UNIMPL linux_clone 121 NOARGS { int compat_09_setdomainname(char *name, int len); } 122 STD { int linux_uname(struct linux_utsname *up); }