tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

makesyscalls.sh off_t padding check problem for compat linux



Hi,

For quite some tine now, comat linux syscalls files cannot be
generated anymore (at least for some ports). The problem comes from
makesyscalls.sh off_t paddind check ...

Some compat linux syscalls currently use off_t arguments, but does not
have any padding ... this makesyscalls.sh fails its job.

     int linux_sys_truncate64(const char *path, off_t length);

Don't this check need to be restricted to native syscalls ?
If so how about the attached patch ?

-- 
Nicolas Joly

Biological Software and Databanks.
Institut Pasteur, Paris.
Index: sys/kern/makesyscalls.sh
===================================================================
RCS file: /cvsroot/src/sys/kern/makesyscalls.sh,v
retrieving revision 1.67
diff -u -p -r1.67 makesyscalls.sh
--- sys/kern/makesyscalls.sh    18 Mar 2008 12:36:15 -0000      1.67
+++ sys/kern/makesyscalls.sh    22 Mar 2008 10:23:41 -0000
@@ -425,7 +425,7 @@ function parseline() {
                if (argtype[argc] == "")
                        parserr($f, "argument definition")
                if (argtype[argc] == "off_t") {
-                       if ((argalign % 2) != 0 &&
+                       if ((argalign % 2) != 0 && constprefix == "SYS_" &&
                            funcname != "sys_posix_fadvise") # XXX for now
                                parserr($f, "a padding argument")
                } else {


Home | Main Index | Thread Index | Old Index