From 36b166d5a03f91501ad718e3337179223ae8df40 Mon Sep 17 00:00:00 2001 From: marcel Date: Sun, 7 Oct 2001 00:16:31 +0000 Subject: Fix breakage caused by previous commit. The lkmnosys and lkmressys syscalls are of type NODEF but not in a way that fits the given definition of that type. The exact difference of lkmressys and lkmnosys is unclear, which makes it all the more confusing. A reevaluation of what we have and what we really need is in order. Spotted by: Maxime Henrion Pointy hat: marcel --- sys/kern/makesyscalls.sh | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/sys/kern/makesyscalls.sh b/sys/kern/makesyscalls.sh index 63b701b..069314d 100644 --- a/sys/kern/makesyscalls.sh +++ b/sys/kern/makesyscalls.sh @@ -208,7 +208,7 @@ s/\$//g } if ($2 == "NODEF") { funcname=$4 - argssize = "AS(" $4 "_args)" + argssize = "AS(" $6 ")" return } if ($f != "{") @@ -316,12 +316,15 @@ s/\$//g argname[i], argtype[i]) > sysarg printf("};\n") > sysarg } - else if($2 != "NOARGS" && $2 != "NOPROTO") + else if ($2 != "NOARGS" && $2 != "NOPROTO" && \ + $2 != "NODEF") printf("struct %s {\n\tregister_t dummy;\n};\n", argalias) > sysarg } - if ($2 != "NOPROTO" && (!nosys || funcname != "nosys") && \ - (!lkmnosys || funcname != "lkmnosys") && $2 != "NODEF") { + if (($2 != "NOPROTO" && $2 != "NODEF" && \ + (funcname != "nosys" || !nosys)) || \ + (funcname == "lkmnosys" && !lkmnosys) || \ + funcname == "lkmressys") { printf("%s\t%s __P((struct thread *, struct %s *))", rettype, funcname, argalias) > sysdcl printf(";\n") > sysdcl @@ -337,7 +340,7 @@ s/\$//g column = column + length("nosys") + 3 } else if ($2 == "NOSTD") { printf("%s },", "lkmressys") > sysent - column = column + length("lkmnosys") + 3 + column = column + length("lkmressys") + 3 } else { printf("%s },", funcname) > sysent column = column + length(funcname) + 3 -- cgit v1.1