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>

Reply via email to