summaryrefslogtreecommitdiffstats
path: root/sys/kern/makesyscalls.sh
diff options
context:
space:
mode:
authoralfred <alfred@FreeBSD.org>2000-12-01 07:40:20 +0000
committeralfred <alfred@FreeBSD.org>2000-12-01 07:40:20 +0000
commitf1676b6fb97f2ed8014839886f227f872414e7c3 (patch)
tree18802b27e78cf610451667c6f705267b046fd3c0 /sys/kern/makesyscalls.sh
parent7abbdcfd9b2708a74854f008e9526547466acb51 (diff)
downloadFreeBSD-src-f1676b6fb97f2ed8014839886f227f872414e7c3.zip
FreeBSD-src-f1676b6fb97f2ed8014839886f227f872414e7c3.tar.gz
implement NOSTD syscall type, this creates the syscall args, but sticks
a lkmnosys into the sysent table so that SYSCALL_MODULE() works
Diffstat (limited to 'sys/kern/makesyscalls.sh')
-rw-r--r--sys/kern/makesyscalls.sh15
1 files changed, 9 insertions, 6 deletions
diff --git a/sys/kern/makesyscalls.sh b/sys/kern/makesyscalls.sh
index 551242d8..452bdf8 100644
--- a/sys/kern/makesyscalls.sh
+++ b/sys/kern/makesyscalls.sh
@@ -270,7 +270,7 @@ s/\$//g
mpsafe = "SYF_MPSAFE | "
}
$2 == "STD" || $2 == "NODEF" || $2 == "NOARGS" || $2 == "NOPROTO" \
- || $2 == "NOIMPL" {
+ || $2 == "NOIMPL" || $2 == "NOSTD" {
parseline()
if ((!nosys || funcname != "nosys") && \
(funcname != "lkmnosys")) {
@@ -298,13 +298,16 @@ s/\$//g
lkmnosys = 1
printf("\t{ %s%s, (sy_call_t *)", mpsafe, argssize) > sysent
column = 8 + 2 + length(mpsafe) + length(argssize) + 15
- if ($2 != "NOIMPL") {
- printf("%s },", funcname) > sysent
- column = column + length(funcname) + 3
- } else {
+ if ($2 == "NOIMPL") {
printf("%s },", "nosys") > sysent
column = column + length("nosys") + 3
- }
+ } else if ($2 == "NOSTD") {
+ printf("%s },", "lkmnosys") > sysent
+ column = column + length("lkmnosys") + 3
+ } else {
+ printf("%s },", funcname) > sysent
+ column = column + length(funcname) + 3
+ }
align_sysent_comment(column)
printf("/* %d = %s */\n", syscall, funcalias) > sysent
printf("\t\"%s\",\t\t\t/* %d = %s */\n",
OpenPOWER on IntegriCloud