Module Name: src
Committed By: pgoyette
Date: Mon May 11 10:32:13 UTC 2015
Modified Files:
src/sys/compat/common: compat_mod.c compat_sysv_mod.c
Log Message:
Fix the #ifdef _MODULE stuff so that the syscall packages and sysctl stuff
gets handled properly even in built-in module case.
XXX
Whatever was I thinking when I put those conditionals in? And wouldn't it
be a wonderful thing to have some atf regression tests to actually catch
errors in the compat{,_sysv} modules? :)
To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/compat/common/compat_mod.c
cvs rdiff -u -r1.1 -r1.2 src/sys/compat/common/compat_sysv_mod.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/common/compat_mod.c
diff -u src/sys/compat/common/compat_mod.c:1.21 src/sys/compat/common/compat_mod.c:1.22
--- src/sys/compat/common/compat_mod.c:1.21 Sun May 10 07:41:15 2015
+++ src/sys/compat/common/compat_mod.c Mon May 11 10:32:13 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: compat_mod.c,v 1.21 2015/05/10 07:41:15 pgoyette Exp $ */
+/* $NetBSD: compat_mod.c,v 1.22 2015/05/11 10:32:13 pgoyette Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: compat_mod.c,v 1.21 2015/05/10 07:41:15 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: compat_mod.c,v 1.22 2015/05/11 10:32:13 pgoyette Exp $");
#ifdef _KERNEL_OPT
#include "opt_compat_netbsd.h"
@@ -60,17 +60,15 @@ __KERNEL_RCSID(0, "$NetBSD: compat_mod.c
#include <compat/common/compat_util.h>
#include <compat/common/compat_mod.h>
-#ifdef _MODULE
#if defined(COMPAT_09) || defined(COMPAT_43) || defined(COMPAT_50)
static struct sysctllog *compat_clog = NULL;
#endif
-#endif
MODULE(MODULE_CLASS_EXEC, compat, NULL);
-#ifdef _MODULE
int ttcompat(struct tty *, u_long, void *, int, struct lwp *);
+#ifdef _MODULE
#ifdef COMPAT_16
#if !defined(__amd64__) || defined(COMPAT_NETBSD32)
#define COMPAT_SIGCONTEXT
@@ -78,6 +76,7 @@ extern char sigcode[], esigcode[];
struct uvm_object *emul_netbsd_object;
#endif
#endif
+#endif /* _MODULE */
extern krwlock_t exec_lock;
extern krwlock_t ttcompat_lock;
@@ -230,12 +229,10 @@ static const struct syscall_package comp
#endif
{ 0, 0, NULL },
};
-#endif /* _MODULE */
static int
compat_modcmd(modcmd_t cmd, void *arg)
{
-#ifdef _MODULE
#ifdef COMPAT_16
proc_t *p;
#endif
@@ -326,18 +323,8 @@ compat_modcmd(modcmd_t cmd, void *arg)
default:
return ENOTTY;
}
-#else /* _MODULE */
- switch (cmd) {
- case MODULE_CMD_INIT:
- case MODULE_CMD_FINI:
- return 0;
- default:
- return ENOTTY;
- }
-#endif
}
-#ifdef _MODULE
void
compat_sysctl_init(void)
{
@@ -358,4 +345,3 @@ compat_sysctl_fini(void)
sysctl_teardown(&compat_clog);
#endif
}
-#endif
Index: src/sys/compat/common/compat_sysv_mod.c
diff -u src/sys/compat/common/compat_sysv_mod.c:1.1 src/sys/compat/common/compat_sysv_mod.c:1.2
--- src/sys/compat/common/compat_sysv_mod.c:1.1 Sun May 10 07:41:15 2015
+++ src/sys/compat/common/compat_sysv_mod.c Mon May 11 10:32:13 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: compat_sysv_mod.c,v 1.1 2015/05/10 07:41:15 pgoyette Exp $ */
+/* $NetBSD: compat_sysv_mod.c,v 1.2 2015/05/11 10:32:13 pgoyette Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: compat_sysv_mod.c,v 1.1 2015/05/10 07:41:15 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: compat_sysv_mod.c,v 1.2 2015/05/11 10:32:13 pgoyette Exp $");
#ifdef _KERNEL_OPT
#include "opt_compat_netbsd.h"
@@ -50,7 +50,6 @@ __KERNEL_RCSID(0, "$NetBSD: compat_sysv_
MODULE(MODULE_CLASS_EXEC, compat_sysv, NULL);
-#ifdef _MODULE
static const struct syscall_package compat_sysv_syscalls[] = {
#if defined(COMPAT_10) && !defined(_LP64)
# if defined(SYSVMSG)
@@ -89,7 +88,6 @@ static const struct syscall_package comp
#endif
{ 0, 0, NULL },
};
-#endif
int sysctl_kern_sysvipc50(SYSCTLFN_ARGS);
@@ -100,20 +98,16 @@ compat_sysv_modcmd(modcmd_t cmd, void *a
switch (cmd) {
case MODULE_CMD_INIT:
-#ifdef _MODULE
/* Link the system calls */
error = syscall_establish(NULL, compat_sysv_syscalls);
-#endif
#ifdef COMPAT_50
sysvipc50_set_compat_sysctl(sysctl_kern_sysvipc50);
#endif
return error;
case MODULE_CMD_FINI:
-#ifdef _MODULE
/* Unlink the system calls. */
error = syscall_disestablish(NULL, compat_sysv_syscalls);
-#endif
#ifdef COMPAT_50
sysvipc50_set_compat_sysctl(NULL);
#endif