Fri May 15 14:52:48 2009 UTC ()
In addition to off_t alignment, check for dev_t and time_t too
(we don't currently have any syscalls passing time_t, though)


(pooka)
diff -r1.85 -r1.86 src/sys/kern/makesyscalls.sh

cvs diff -r1.85 -r1.86 src/sys/kern/makesyscalls.sh (expand / switch to unified diff)

--- src/sys/kern/makesyscalls.sh 2009/03/29 07:56:19 1.85
+++ src/sys/kern/makesyscalls.sh 2009/05/15 14:52:47 1.86
@@ -1,15 +1,15 @@ @@ -1,15 +1,15 @@
1#! /bin/sh - 1#! /bin/sh -
2# $NetBSD: makesyscalls.sh,v 1.85 2009/03/29 07:56:19 pooka Exp $ 2# $NetBSD: makesyscalls.sh,v 1.86 2009/05/15 14:52:47 pooka Exp $
3# 3#
4# Copyright (c) 1994, 1996, 2000 Christopher G. Demetriou 4# Copyright (c) 1994, 1996, 2000 Christopher G. Demetriou
5# All rights reserved. 5# All rights reserved.
6# 6#
7# Redistribution and use in source and binary forms, with or without 7# Redistribution and use in source and binary forms, with or without
8# modification, are permitted provided that the following conditions 8# modification, are permitted provided that the following conditions
9# are met: 9# are met:
10# 1. Redistributions of source code must retain the above copyright 10# 1. Redistributions of source code must retain the above copyright
11# notice, this list of conditions and the following disclaimer. 11# notice, this list of conditions and the following disclaimer.
12# 2. Redistributions in binary form must reproduce the above copyright 12# 2. Redistributions in binary form must reproduce the above copyright
13# notice, this list of conditions and the following disclaimer in the 13# notice, this list of conditions and the following disclaimer in the
14# documentation and/or other materials provided with the distribution. 14# documentation and/or other materials provided with the distribution.
15# 3. All advertising materials mentioning features or use of this software 15# 3. All advertising materials mentioning features or use of this software
@@ -475,27 +475,29 @@ function parseline() { @@ -475,27 +475,29 @@ function parseline() {
475 } 475 }
476 argc++ 476 argc++
477 argtype[argc]="" 477 argtype[argc]=""
478 oldf="" 478 oldf=""
479 while (f < end && $(f+1) != ",") { 479 while (f < end && $(f+1) != ",") {
480 if (argtype[argc] != "" && oldf != "*") 480 if (argtype[argc] != "" && oldf != "*")
481 argtype[argc] = argtype[argc]" "; 481 argtype[argc] = argtype[argc]" ";
482 argtype[argc] = argtype[argc]$f; 482 argtype[argc] = argtype[argc]$f;
483 oldf = $f; 483 oldf = $f;
484 f++ 484 f++
485 } 485 }
486 if (argtype[argc] == "") 486 if (argtype[argc] == "")
487 parserr($f, "argument definition") 487 parserr($f, "argument definition")
488 if (argtype[argc] == "off_t") { 488 if (argtype[argc] == "off_t" \
 489 || argtype[argc] == "dev_t" \
 490 || argtype[argc] == "time_t") {
489 if ((argalign % 2) != 0 && sysalign && 491 if ((argalign % 2) != 0 && sysalign &&
490 funcname != "sys_posix_fadvise") # XXX for now 492 funcname != "sys_posix_fadvise") # XXX for now
491 parserr($f, "a padding argument") 493 parserr($f, "a padding argument")
492 } else { 494 } else {
493 argalign++; 495 argalign++;
494 } 496 }
495 argname[argc]=$f; 497 argname[argc]=$f;
496 f += 2; # skip name, and any comma 498 f += 2; # skip name, and any comma
497 } 499 }
498 # must see another argument after varargs notice. 500 # must see another argument after varargs notice.
499 if (isvarargs) { 501 if (isvarargs) {
500 if (argc == varargc) 502 if (argc == varargc)
501 parserr($f, "argument definition") 503 parserr($f, "argument definition")