Module Name: src
Committed By: pgoyette
Date: Tue Sep 11 04:53:42 UTC 2018
Modified Files:
src/sys/compat/netbsd32 [pgoyette-compat]: netbsd32_compat_09.c
netbsd32_compat_12.c netbsd32_compat_13.c netbsd32_compat_20.c
netbsd32_compat_30.c netbsd32_compat_50.c netbsd32_compat_60.c
netbsd32_mod.c netbsd32_module.c
Log Message:
Install the syscalls into the netbsd32 table, not the default/native table.
To generate a diff of this commit:
cvs rdiff -u -r1.18.86.2 -r1.18.86.3 \
src/sys/compat/netbsd32/netbsd32_compat_09.c
cvs rdiff -u -r1.33.36.4 -r1.33.36.5 \
src/sys/compat/netbsd32/netbsd32_compat_12.c
cvs rdiff -u -r1.26.28.3 -r1.26.28.4 \
src/sys/compat/netbsd32/netbsd32_compat_13.c
cvs rdiff -u -r1.36.10.5 -r1.36.10.6 \
src/sys/compat/netbsd32/netbsd32_compat_20.c
cvs rdiff -u -r1.31.16.4 -r1.31.16.5 \
src/sys/compat/netbsd32/netbsd32_compat_30.c
cvs rdiff -u -r1.32.16.3 -r1.32.16.4 \
src/sys/compat/netbsd32/netbsd32_compat_50.c
cvs rdiff -u -r1.3.2.3 -r1.3.2.4 src/sys/compat/netbsd32/netbsd32_compat_60.c
cvs rdiff -u -r1.13.16.4 -r1.13.16.5 src/sys/compat/netbsd32/netbsd32_mod.c
cvs rdiff -u -r1.6.2.4 -r1.6.2.5 src/sys/compat/netbsd32/netbsd32_module.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/compat/netbsd32/netbsd32_compat_09.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_09.c:1.18.86.2 src/sys/compat/netbsd32/netbsd32_compat_09.c:1.18.86.3
--- src/sys/compat/netbsd32/netbsd32_compat_09.c:1.18.86.2 Tue Sep 11 02:53:56 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_09.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_09.c,v 1.18.86.2 2018/09/11 02:53:56 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_09.c,v 1.18.86.3 2018/09/11 04:53:42 pgoyette Exp $ */
/*
* Copyright (c) 1998 Matthew R. Green
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_09.c,v 1.18.86.2 2018/09/11 02:53:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_09.c,v 1.18.86.3 2018/09/11 04:53:42 pgoyette Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -40,6 +40,8 @@ __KERNEL_RCSID(0, "$NetBSD: netbsd32_com
#include <uvm/uvm_extern.h>
#include <sys/sysctl.h>
+#include <compat/sys/siginfo.h>
+
#include <compat/netbsd32/netbsd32.h>
#include <compat/netbsd32/netbsd32_syscall.h>
#include <compat/netbsd32/netbsd32_syscallargs.h>
@@ -87,13 +89,13 @@ compat_09_netbsd32_uname(struct lwp *l,
NETBSD32TOP_UAP(name, struct outsname);
return (compat_09_sys_uname(l, &ua, retval));
}
-NETBSD32_SYS_compat_30_netbsd32_fhstat
+
static struct syscall_package compat_netbsd32_09_syscalls[] = {
- { NETBSD32_SYS_compat_30_netbsd32_ogetdomainname, 0,
+ { NETBSD32_SYS_compat_09_netbsd32_ogetdomainname, 0,
(sy_call_t *)compat_09_netbsd32_ogetdomainname },
- { NETBSD32_SYS_compat_30_netbsd32_osetdomainname, 0,
+ { NETBSD32_SYS_compat_09_netbsd32_osetdomainname, 0,
(sy_call_t *)compat_09_netbsd32_osetdomainname },
- { NETBSD32_SYS_compat_30_netbsd32_ouname, 0,
+ { NETBSD32_SYS_compat_09_netbsd32_uname, 0,
(sy_call_t *)compat_09_netbsd32_uname },
{ 0, 0, NULL }
};
@@ -101,15 +103,17 @@ static struct syscall_package compat_net
MODULE(MODULE_CLASS_EXEC, compat_netbsd32_09, "compat_netbsd32,compat_09");
static int
-compat_netbsd32_09_modcmd(modcmt_t cmd, void *(arg)
+compat_netbsd32_09_modcmd(modcmd_t cmd, void *arg)
{
switch (cmd) {
case MODULE_CMD_INIT:
- return syscall_establish(NULL, compat_netbsd32_09_syscalls);
+ return syscall_establish(&emul_netbsd32,
+ compat_netbsd32_09_syscalls);
case MODULE_CMD_FINI:
- return syscall_disestablish(NULL, compat_netbsd32_09_syscalls);
+ return syscall_disestablish(&emul_netbsd32,
+ compat_netbsd32_09_syscalls);
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_compat_12.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_12.c:1.33.36.4 src/sys/compat/netbsd32/netbsd32_compat_12.c:1.33.36.5
--- src/sys/compat/netbsd32/netbsd32_compat_12.c:1.33.36.4 Tue Sep 11 02:53:56 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_12.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_12.c,v 1.33.36.4 2018/09/11 02:53:56 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_12.c,v 1.33.36.5 2018/09/11 04:53:42 pgoyette Exp $ */
/*
* Copyright (c) 1998, 2001 Matthew R. Green
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_12.c,v 1.33.36.4 2018/09/11 02:53:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_12.c,v 1.33.36.5 2018/09/11 04:53:42 pgoyette Exp $");
#if defined(_KERNEL_OPT)
#include "opt_compat_netbsd.h"
@@ -216,8 +216,8 @@ static struct syscall_package compat_net
(sy_call_t *)compat_12_netbsd32_reboot },
{ NETBSD32_SYS_compat_12_netbsd32_msync, 0,
(sy_call_t *)compat_12_netbsd32_msync },
- { NETBSD32_SYS_compat_12_netbsd32_swapon, 0,
- (sy_call_t *)compat_12_netbsd32_swapon },
+ { NETBSD32_SYS_compat_12_netbsd32_oswapon, 0,
+ (sy_call_t *)compat_12_netbsd32_oswapon },
{ NETBSD32_SYS_compat_12_netbsd32_stat12, 0,
(sy_call_t *)compat_12_netbsd32_stat12 },
{ NETBSD32_SYS_compat_12_netbsd32_fstat12, 0,
@@ -237,10 +237,12 @@ compat_netbsd32_12_modcmd(modcmd_t cmd,
switch (cmd) {
case MODULE_CMD_INIT:
- return syscall_establish(NULL, compat_netbsd32_12_syscalls);
+ return syscall_establish(&emul_netbsd32,
+ compat_netbsd32_12_syscalls);
case MODULE_CMD_FINI:
- return syscall_disestablish(NULL, compat_netbsd32_12_syscalls);
+ return syscall_disestablish(&emul_netbsd32,
+ compat_netbsd32_12_syscalls);
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_compat_13.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_13.c:1.26.28.3 src/sys/compat/netbsd32/netbsd32_compat_13.c:1.26.28.4
--- src/sys/compat/netbsd32/netbsd32_compat_13.c:1.26.28.3 Tue Sep 11 02:53:56 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_13.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_13.c,v 1.26.28.3 2018/09/11 02:53:56 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_13.c,v 1.26.28.4 2018/09/11 04:53:42 pgoyette Exp $ */
/*
* Copyright (c) 1998, 2001 Matthew R. Green
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_13.c,v 1.26.28.3 2018/09/11 02:53:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_13.c,v 1.26.28.4 2018/09/11 04:53:42 pgoyette Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -112,10 +112,12 @@ compat_netbsd32_13_modcmd(modcmd_t cmd,
switch (cmd) {
case MODULE_CMD_INIT:
- return syscall_establish(NULL, compat_netbsd32_13_syscalls);
+ return syscall_establish(&emul_netbsd32,
+ compat_netbsd32_13_syscalls);
case MODULE_CMD_FINI:
- return syscall_disestablish(NULL, compat_netbsd32_13_syscalls);
+ return syscall_disestablish(&emul_netbsd32,
+ compat_netbsd32_13_syscalls);
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_compat_20.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_20.c:1.36.10.5 src/sys/compat/netbsd32/netbsd32_compat_20.c:1.36.10.6
--- src/sys/compat/netbsd32/netbsd32_compat_20.c:1.36.10.5 Tue Sep 11 02:53:56 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_20.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_20.c,v 1.36.10.5 2018/09/11 02:53:56 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_20.c,v 1.36.10.6 2018/09/11 04:53:42 pgoyette Exp $ */
/*
* Copyright (c) 1998, 2001 Matthew R. Green
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_20.c,v 1.36.10.5 2018/09/11 02:53:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_20.c,v 1.36.10.6 2018/09/11 04:53:42 pgoyette Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -235,15 +235,17 @@ static struct syscall_package compat_net
MODULE(MODULE_CLASS_EXEC, compat_netbsd32_20, "compat_netbsd32,compat_20");
static int
-compat_netbsd32_20_modcmt(modcmd_t cmd, void *arg)
+compat_netbsd32_20_modcmd(modcmd_t cmd, void *arg)
{
switch (cmd) {
case MODULE_CMD_INIT:
- return syscall_establish(NULL, compat_netbsd32_20_syscalls);
+ return syscall_establish(&emul_netbsd32,
+ compat_netbsd32_20_syscalls);
case MODULE_CMD_FINI:
- return syscall_disestablish(NULL, compat_netbsd32_20_syscalls);
+ return syscall_disestablish(&emul_netbsd32,
+ compat_netbsd32_20_syscalls);
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_compat_30.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_30.c:1.31.16.4 src/sys/compat/netbsd32/netbsd32_compat_30.c:1.31.16.5
--- src/sys/compat/netbsd32/netbsd32_compat_30.c:1.31.16.4 Tue Sep 11 02:53:56 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_30.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_30.c,v 1.31.16.4 2018/09/11 02:53:56 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_30.c,v 1.31.16.5 2018/09/11 04:53:42 pgoyette Exp $ */
/*
* Copyright (c) 1998, 2001 Matthew R. Green
@@ -27,10 +27,11 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_30.c,v 1.31.16.4 2018/09/11 02:53:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_30.c,v 1.31.16.5 2018/09/11 04:53:42 pgoyette Exp $");
#include <sys/param.h>
#include <sys/systm.h>
+#include <sys/module.h>
#include <sys/mount.h>
#include <sys/mount.h>
#include <sys/socket.h>
@@ -317,7 +318,7 @@ static struct syscall_package compat_net
{ NETBSD32_SYS_compat_30_netbsd32___fhstat30, 0,
(sy_call_t *)compat_30_netbsd32___fhstat30 },
{ NETBSD32_SYS_compat_30_netbsd32_fhopen, 0,
- (sy_call_t *)compat_30_netbsd32___fhopen },
+ (sy_call_t *)compat_30_netbsd32_fhopen },
{ 0, 0, NULL }
};
@@ -329,10 +330,12 @@ compat_netbsd32_30_modcmd(modcmd_t cmd,
switch (cmd) {
case MODULE_CMD_INIT:
- return syscall_establish(NULL, compat_netbsd32_30_syscalls);
+ return syscall_establish(&emul_netbsd32,
+ compat_netbsd32_30_syscalls);
case MODULE_CMD_FINI:
- return syscall_disestablish(NULL, compat_netbsd32_30_syscalls);
+ return syscall_disestablish(&emul_netbsd32,
+ compat_netbsd32_30_syscalls);
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_compat_50.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_50.c:1.32.16.3 src/sys/compat/netbsd32/netbsd32_compat_50.c:1.32.16.4
--- src/sys/compat/netbsd32/netbsd32_compat_50.c:1.32.16.3 Tue Sep 11 02:53:56 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_50.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_50.c,v 1.32.16.3 2018/09/11 02:53:56 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_50.c,v 1.32.16.4 2018/09/11 04:53:42 pgoyette Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -36,7 +36,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_50.c,v 1.32.16.3 2018/09/11 02:53:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_50.c,v 1.32.16.4 2018/09/11 04:53:42 pgoyette Exp $");
#if defined(_KERNEL_OPT)
#include "opt_compat_netbsd.h"
@@ -994,11 +994,13 @@ compat_netbsd32_50_modcmd(modcmd_t cmd,
{
switch (cmd) {
- MODULE_CMD_INIT:
- return syscall_establish(NULL, compat_netbsd32_50_syscalls);
-
- MODULE_CMD_FINI:
- return syscall_disestablish(NULL, compat_netbsd32_50_syscalls);
+ case MODULE_CMD_INIT:
+ return syscall_establish(&emul_netbsd32,
+ compat_netbsd32_50_syscalls);
+
+ case MODULE_CMD_FINI:
+ return syscall_disestablish(&emul_netbsd32,
+ compat_netbsd32_50_syscalls);
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_compat_60.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_60.c:1.3.2.3 src/sys/compat/netbsd32/netbsd32_compat_60.c:1.3.2.4
--- src/sys/compat/netbsd32/netbsd32_compat_60.c:1.3.2.3 Tue Sep 11 02:53:56 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_60.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_60.c,v 1.3.2.3 2018/09/11 02:53:56 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_60.c,v 1.3.2.4 2018/09/11 04:53:42 pgoyette Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -36,7 +36,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_60.c,v 1.3.2.3 2018/09/11 02:53:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_60.c,v 1.3.2.4 2018/09/11 04:53:42 pgoyette Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -103,10 +103,12 @@ compat_netbsd32_60_modcmd(modcmd_t cmd,
switch (cmd) {
case MODULE_CMD_INIT:
- return syscall_establish(NULL, compat_netbsd32_60_syscalls);
+ return syscall_establish(&emul_netbsd32,
+ compat_netbsd32_60_syscalls);
case MODULE_CMD_FINI:
- return syscall_disestablish(NULL, compat_netbsd32_60_syscalls);
+ return syscall_disestablish(&emul_netbsd32,
+ compat_netbsd32_60_syscalls);
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_mod.c
diff -u src/sys/compat/netbsd32/netbsd32_mod.c:1.13.16.4 src/sys/compat/netbsd32/netbsd32_mod.c:1.13.16.5
--- src/sys/compat/netbsd32/netbsd32_mod.c:1.13.16.4 Mon Sep 10 22:50:51 2018
+++ src/sys/compat/netbsd32/netbsd32_mod.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_mod.c,v 1.13.16.4 2018/09/10 22:50:51 pgoyette Exp $ */
+/* $NetBSD: netbsd32_mod.c,v 1.13.16.5 2018/09/11 04:53:42 pgoyette Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_mod.c,v 1.13.16.4 2018/09/10 22:50:51 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_mod.c,v 1.13.16.5 2018/09/11 04:53:42 pgoyette Exp $");
#ifdef _KERNEL_OPT
#include "opt_execfmt.h"
@@ -61,6 +61,12 @@ __KERNEL_RCSID(0, "$NetBSD: netbsd32_mod
#define ELF32_AUXSIZE (howmany(ELF_AUX_ENTRIES * sizeof(Aux32Info), \
sizeof(Elf32_Addr)) + MAXPATHLEN + ALIGN(1))
+int compat32_80_modctl_compat_stub(struct lwp *,
+ const struct netbsd32_modctl_args *, register_t *);
+
+int (*vec_compat32_80_modctl)(struct lwp *,
+ const struct netbsd32_modctl_args *, register_t *);
+
MODULE(MODULE_CLASS_EXEC, compat_netbsd32, DEPS1 DEPS2);
static struct execsw netbsd32_execsw[] = {
Index: src/sys/compat/netbsd32/netbsd32_module.c
diff -u src/sys/compat/netbsd32/netbsd32_module.c:1.6.2.4 src/sys/compat/netbsd32/netbsd32_module.c:1.6.2.5
--- src/sys/compat/netbsd32/netbsd32_module.c:1.6.2.4 Mon Sep 10 22:50:51 2018
+++ src/sys/compat/netbsd32/netbsd32_module.c Tue Sep 11 04:53:42 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_module.c,v 1.6.2.4 2018/09/10 22:50:51 pgoyette Exp $ */
+/* $NetBSD: netbsd32_module.c,v 1.6.2.5 2018/09/11 04:53:42 pgoyette Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_module.c,v 1.6.2.4 2018/09/10 22:50:51 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_module.c,v 1.6.2.5 2018/09/11 04:53:42 pgoyette Exp $");
#include <sys/param.h>
#include <sys/dirent.h>
@@ -42,6 +42,9 @@ __KERNEL_RCSID(0, "$NetBSD: netbsd32_mod
#include <compat/netbsd32/netbsd32_syscallargs.h>
#include <compat/netbsd32/netbsd32_conv.h>
+extern int (*vec_compat32_80_modctl)(struct lwp *,
+ const struct netbsd32_modctl_args *, register_t *);
+
static int
modctl32_handle_stat(struct netbsd32_iovec *iov, void *arg)
{
@@ -219,7 +222,7 @@ netbsd32_modctl(struct lwp *lwp, const s
arg = SCARG_P32(uap, arg);
- error = (*vec_netbsd32_modctl_compat)(lwp, uap, result);
+ error = (*vec_compat32_80_modctl)(lwp, uap, result);
if (error != EPASSTHROUGH)
return error;