xref: /netbsd/sys/compat/common/kern_sa_60.c (revision cc17ee2e)
1 /*-
2  * Copyright (c) 2012 The NetBSD Foundation, Inc.
3  * All rights reserved.
4  *
5  * This code is derived from software contributed to The NetBSD Foundation
6  * by Matt Thomas of 3am Software Foundry.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  *    notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  *    notice, this list of conditions and the following disclaimer in the
15  *    documentation and/or other materials provided with the distribution.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
18  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
21  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27  * POSSIBILITY OF SUCH DAMAGE.
28  */
29 
30 #include <sys/cdefs.h>
31 
32 __KERNEL_RCSID(1, "$NetBSD: kern_sa_60.c,v 1.2 2019/01/27 02:08:39 pgoyette Exp $");
33 
34 #if defined(_KERNEL_OPT)
35 #include "opt_compat_netbsd.h"
36 #endif
37 
38 #include <sys/systm.h>
39 #include <sys/syscall.h>
40 #include <sys/syscallvar.h>
41 #include <sys/syscallargs.h>
42 
43 #include <compat/common/compat_mod.h>
44 
45 static const struct syscall_package kern_sa_60_syscalls[] = {
46 	{ SYS_compat_60_sa_register, 0,
47 	     (sy_call_t *)compat_60_sys_sa_register },
48 	{ SYS_compat_60_sa_stacks, 0, (sy_call_t *)compat_60_sys_sa_stacks },
49 	{ SYS_compat_60_sa_enable, 0, (sy_call_t *)compat_60_sys_sa_enable },
50 	{ SYS_compat_60_sa_setconcurrency, 0,
51 	     (sy_call_t *)compat_60_sys_sa_setconcurrency },
52 	{ SYS_compat_60_sa_yield, 0, (sy_call_t *)compat_60_sys_sa_yield },
53 	{ SYS_compat_60_sa_preempt, 0, (sy_call_t *)compat_60_sys_sa_preempt },
54 	{ 0, 0, NULL }
55 };
56 
57 int
compat_60_sys_sa_register(lwp_t * l,const struct compat_60_sys_sa_register_args * uap,register_t * retval)58 compat_60_sys_sa_register(lwp_t *l,
59 	const struct compat_60_sys_sa_register_args *uap,
60 	register_t *retval)
61 {
62 	return sys_nosys(l, uap, retval);
63 }
64 
65 int
compat_60_sys_sa_stacks(lwp_t * l,const struct compat_60_sys_sa_stacks_args * uap,register_t * retval)66 compat_60_sys_sa_stacks(lwp_t *l,
67 	const struct compat_60_sys_sa_stacks_args *uap,
68 	register_t *retval)
69 {
70 	return sys_nosys(l, uap, retval);
71 }
72 
73 int
compat_60_sys_sa_enable(lwp_t * l,const void * uap,register_t * retval)74 compat_60_sys_sa_enable(lwp_t *l,
75 	const void *uap,
76 	register_t *retval)
77 {
78 	return sys_nosys(l, uap, retval);
79 }
80 
81 int
compat_60_sys_sa_setconcurrency(lwp_t * l,const struct compat_60_sys_sa_setconcurrency_args * uap,register_t * retval)82 compat_60_sys_sa_setconcurrency(lwp_t *l,
83 	const struct compat_60_sys_sa_setconcurrency_args *uap,
84 	register_t *retval)
85 {
86 	return sys_nosys(l, uap, retval);
87 }
88 
89 int
compat_60_sys_sa_yield(lwp_t * l,const void * uap,register_t * retval)90 compat_60_sys_sa_yield(lwp_t *l,
91 	const void *uap,
92 	register_t *retval)
93 {
94 	return sys_nosys(l, uap, retval);
95 }
96 
97 int
compat_60_sys_sa_preempt(lwp_t * l,const struct compat_60_sys_sa_preempt_args * uap,register_t * retval)98 compat_60_sys_sa_preempt(lwp_t *l,
99 	const struct compat_60_sys_sa_preempt_args *uap,
100 	register_t *retval)
101 {
102 	return sys_nosys(l, uap, retval);
103 }
104 
105 int
kern_sa_60_init(void)106 kern_sa_60_init(void)
107 {
108 
109 	return syscall_establish(NULL, kern_sa_60_syscalls);
110 }
111 
112 int
kern_sa_60_fini(void)113 kern_sa_60_fini(void)
114 {
115 
116 	return syscall_disestablish(NULL, kern_sa_60_syscalls);
117 }
118