Module Name: src
Committed By: pgoyette
Date: Tue Sep 11 23:26:21 UTC 2018
Modified Files:
src/sys/compat/netbsd32 [pgoyette-compat]: netbsd32_compat_50.c
netbsd32_mod.c
src/sys/modules/compat_netbsd32 [pgoyette-compat]: Makefile
src/sys/modules/compat_netbsd32_50 [pgoyette-compat]: Makefile
Log Message:
Move netbsd32_rndpseudo_50.c out of the main netbsd32 module and into
the module that handles netbsd32_50 compatability.
To generate a diff of this commit:
cvs rdiff -u -r1.32.16.6 -r1.32.16.7 \
src/sys/compat/netbsd32/netbsd32_compat_50.c
cvs rdiff -u -r1.13.16.5 -r1.13.16.6 src/sys/compat/netbsd32/netbsd32_mod.c
cvs rdiff -u -r1.20.12.6 -r1.20.12.7 src/sys/modules/compat_netbsd32/Makefile
cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/modules/compat_netbsd32_50/Makefile
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_50.c
diff -u src/sys/compat/netbsd32/netbsd32_compat_50.c:1.32.16.6 src/sys/compat/netbsd32/netbsd32_compat_50.c:1.32.16.7
--- src/sys/compat/netbsd32/netbsd32_compat_50.c:1.32.16.6 Tue Sep 11 21:18:32 2018
+++ src/sys/compat/netbsd32/netbsd32_compat_50.c Tue Sep 11 23:26:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_compat_50.c,v 1.32.16.6 2018/09/11 21:18:32 pgoyette Exp $ */
+/* $NetBSD: netbsd32_compat_50.c,v 1.32.16.7 2018/09/11 23:26:21 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.6 2018/09/11 21:18:32 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_50.c,v 1.32.16.7 2018/09/11 23:26:21 pgoyette Exp $");
#if defined(_KERNEL_OPT)
#include "opt_compat_netbsd.h"
@@ -65,6 +65,7 @@ __KERNEL_RCSID(0, "$NetBSD: netbsd32_com
#include <sys/dirent.h>
#include <sys/kauth.h>
#include <sys/vfs_syscalls.h>
+#include <sys/rnd.h>
#include <compat/netbsd32/netbsd32.h>
#include <compat/netbsd32/netbsd32_syscall.h>
@@ -72,6 +73,7 @@ __KERNEL_RCSID(0, "$NetBSD: netbsd32_com
#include <compat/netbsd32/netbsd32_conv.h>
#include <compat/sys/mount.h>
#include <compat/sys/time.h>
+#include <compat/sys/rnd.h>
#if defined(COMPAT_50)
@@ -992,15 +994,24 @@ MODULE(MODULE_CLASS_EXEC, compat_netbsd3
static int
compat_netbsd32_50_modcmd(modcmd_t cmd, void *arg)
{
+ int ret;
switch (cmd) {
case MODULE_CMD_INIT:
- return syscall_establish(&emul_netbsd32,
+ vec_compat32_50_rnd_ioctl = compat32_50_rnd_ioctl;
+ ret = syscall_establish(&emul_netbsd32,
compat_netbsd32_50_syscalls);
+ if (ret)
+ vec_compat32_50_rnd_ioctl = (void *)enosys;
+ return ret;
case MODULE_CMD_FINI:
- return syscall_disestablish(&emul_netbsd32,
+ vec_compat32_50_rnd_ioctl = (void *)enosys;
+ ret = syscall_disestablish(&emul_netbsd32,
compat_netbsd32_50_syscalls);
+ if (ret)
+ vec_compat32_50_rnd_ioctl = compat32_50_rnd_ioctl;
+ return ret;
default:
return ENOTTY;
Index: src/sys/compat/netbsd32/netbsd32_mod.c
diff -u src/sys/compat/netbsd32/netbsd32_mod.c:1.13.16.5 src/sys/compat/netbsd32/netbsd32_mod.c:1.13.16.6
--- src/sys/compat/netbsd32/netbsd32_mod.c:1.13.16.5 Tue Sep 11 04:53:42 2018
+++ src/sys/compat/netbsd32/netbsd32_mod.c Tue Sep 11 23:26:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_mod.c,v 1.13.16.5 2018/09/11 04:53:42 pgoyette Exp $ */
+/* $NetBSD: netbsd32_mod.c,v 1.13.16.6 2018/09/11 23:26:21 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.5 2018/09/11 04:53:42 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_mod.c,v 1.13.16.6 2018/09/11 23:26:21 pgoyette Exp $");
#ifdef _KERNEL_OPT
#include "opt_execfmt.h"
@@ -44,11 +44,9 @@ __KERNEL_RCSID(0, "$NetBSD: netbsd32_mod
#include <sys/module.h>
#include <sys/exec.h>
#include <sys/exec_elf.h>
-#include <sys/rnd.h>
#include <compat/netbsd32/netbsd32_sysctl.h>
#include <compat/netbsd32/netbsd32_exec.h>
-#include <compat/sys/rnd.h>
# define DEPS1 "compat_09,ksem"
@@ -114,21 +112,20 @@ compat_netbsd32_modcmd(modcmd_t cmd, voi
netbsd32_sysctl_init();
error = exec_add(netbsd32_execsw,
__arraycount(netbsd32_execsw));
- vec_compat32_50_rnd_ioctl = compat32_50_rnd_ioctl;
vec_compat32_80_modctl = compat32_80_modctl_compat_stub;
if (error != 0) {
- vec_compat32_50_rnd_ioctl = (void *)enosys;
vec_compat32_80_modctl = (void *)enosys;
netbsd32_sysctl_fini();
}
return error;
case MODULE_CMD_FINI:
- vec_compat32_50_rnd_ioctl = (void *)enosys;
vec_compat32_80_modctl = (void *)enosys;
error = exec_remove(netbsd32_execsw,
__arraycount(netbsd32_execsw));
- if (error == 0)
+ if (error)
+ vec_compat32_80_modctl = compat32_80_modctl_compat_stub;
+ else
netbsd32_sysctl_fini();
return error;
Index: src/sys/modules/compat_netbsd32/Makefile
diff -u src/sys/modules/compat_netbsd32/Makefile:1.20.12.6 src/sys/modules/compat_netbsd32/Makefile:1.20.12.7
--- src/sys/modules/compat_netbsd32/Makefile:1.20.12.6 Tue Sep 11 07:01:10 2018
+++ src/sys/modules/compat_netbsd32/Makefile Tue Sep 11 23:26:21 2018
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.20.12.6 2018/09/11 07:01:10 pgoyette Exp $
+# $NetBSD: Makefile,v 1.20.12.7 2018/09/11 23:26:21 pgoyette Exp $
.include "../Makefile.inc"
.include "../Makefile.assym"
@@ -36,7 +36,6 @@ SRCS+= netbsd32_sem.c netbsd32_signal.c
SRCS+= netbsd32_socket.c netbsd32_syscalls.c
SRCS+= netbsd32_sysctl.c netbsd32_sysent.c
SRCS+= netbsd32_time.c netbsd32_wait.c
-SRCS+= netbsd32_rndpseudo_50.c
SRCS+= netbsd32_mod.c netbsd32_module.c
.if ${MACHINE_CPU} != "mips" && ${MACHINE_CPU} != "powerpc"
Index: src/sys/modules/compat_netbsd32_50/Makefile
diff -u src/sys/modules/compat_netbsd32_50/Makefile:1.1.2.2 src/sys/modules/compat_netbsd32_50/Makefile:1.1.2.3
--- src/sys/modules/compat_netbsd32_50/Makefile:1.1.2.2 Tue Sep 11 04:20:51 2018
+++ src/sys/modules/compat_netbsd32_50/Makefile Tue Sep 11 23:26:21 2018
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.1.2.2 2018/09/11 04:20:51 pgoyette Exp $
+# $NetBSD: Makefile,v 1.1.2.3 2018/09/11 23:26:21 pgoyette Exp $
.include "../Makefile.inc"
@@ -9,6 +9,6 @@ KMOD= compat_netbsd32_50
CPPFLAGS+= -DCOMPAT_NETBSD32
CPPFLAGS+= -DCOMPAT_50 -DCOMPAT_60 -DCOMPAT_70 -DCOMPAT_80
-SRCS+= netbsd32_compat_50.c
+SRCS+= netbsd32_compat_50.c netbsd32_rndpseudo_50.c
.include <bsd.kmodule.mk>