History log of /freebsd-13.1/sys/tools/makesyscalls.lua (Results 1 – 11 of 11)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release/12.4.0, release/13.1.0, release/12.3.0
# fe388671 19-Oct-2021 Brooks Davis <[email protected]>

makesyscalls.lua: add a CAPENABLED flag

The CAPENABLED flag indicates that the syscall can be used in capsicum
capability mode. It is intended to replace capabilities.conf.

Reviewed by: kevans, em

makesyscalls.lua: add a CAPENABLED flag

The CAPENABLED flag indicates that the syscall can be used in capsicum
capability mode. It is intended to replace capabilities.conf.

Reviewed by: kevans, emaste
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D31349

(cherry picked from commit 6945df3fff57a9606f8c8a4e3865def3a0e915e7)

show more ...


# 81184e92 19-Oct-2021 Brooks Davis <[email protected]>

makesyscalls.lua: Add a new syscall type: RESERVED

RESERVED syscall number are reserved for local/vendor use. RESERVED is
identical to UNIMPL except that comments are ignored.

Reviewed by: kevans

makesyscalls.lua: Add a new syscall type: RESERVED

RESERVED syscall number are reserved for local/vendor use. RESERVED is
identical to UNIMPL except that comments are ignored.

Reviewed by: kevans
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D27988

(cherry picked from commit 119fa6ee8a8056aab5e4ab1719d3c563cdb4a95a)

show more ...


Revision tags: release/13.0.0
# 5129b3f9 27-Jan-2021 Kyle Evans <[email protected]>

makesyscalls: sprinkle some assert() on standard function calls

Improves our error reporting, ensuring that we aren't just ignoring
errors in the common case.

Note specifically the boundary where w

makesyscalls: sprinkle some assert() on standard function calls

Improves our error reporting, ensuring that we aren't just ignoring
errors in the common case.

Note specifically the boundary where we have to change up our error
handling approach. It's fine to error() out up until we create the
tempdir, then the rest should try to handle it gracefully and abort().
A future change will clean this up further by pcall'ing all of the bits
that cannot currently error() without cleaning up.

(cherry picked from commit 6687410af7dba54e19b773684a969e9c590999e4)

show more ...


# 996c4186 27-Jan-2021 Kyle Evans <[email protected]>

makesyscalls: stop trying to remove . and .. in cleanup

lfs.dir() will include these entries, but os.remove() cannot remove them
for obvious reasons.

(cherry picked from commit 340e009ecc00e5e74d58

makesyscalls: stop trying to remove . and .. in cleanup

lfs.dir() will include these entries, but os.remove() cannot remove them
for obvious reasons.

(cherry picked from commit 340e009ecc00e5e74d58920ca909968dc7e88af1)

show more ...


# 0bd5d81f 12-May-2021 Ed Maste <[email protected]>

makesyscalls.lua: improve generated file style(9) compliance

We generally like to avoid style changes when other changes are not
planned. In this case there are some makesyscalls.lua changes in the

makesyscalls.lua: improve generated file style(9) compliance

We generally like to avoid style changes when other changes are not
planned. In this case there are some makesyscalls.lua changes in the
pipeline, and this cleans up style nits in generated files that were
highlighted by experiments with clang-format.

Reviewed by: brooks, kevans
MFC after: 1 week
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D30235

(cherry picked from commit ad385f7b46e7636b11fb0fd56bc42b60b06b16ad)

show more ...


Revision tags: release/12.2.0
# 586bd2de 25-Sep-2020 Edward Tomasz Napierala <[email protected]>

Make makesyscalls.lua initialize 'struct sysent' entries using c99
designated initializers. This makes it easier to modify 'struct sysent'
layout.

Reviewed by: kevans
Sponsored by: DARPA
Differenti

Make makesyscalls.lua initialize 'struct sysent' entries using c99
designated initializers. This makes it easier to modify 'struct sysent'
layout.

Reviewed by: kevans
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D26530

show more ...


# 0bc1c078 04-Aug-2020 Kyle Evans <[email protected]>

makesyscalls.lua: improve syscall ordering validation

There were two separate issues here:

1.) #if/#else wasn't taken into account at all for maxsyscall figures, but
2.) We didn't validate contiguo

makesyscalls.lua: improve syscall ordering validation

There were two separate issues here:

1.) #if/#else wasn't taken into account at all for maxsyscall figures, but
2.) We didn't validate contiguous syscall numbers anyways...

This kind of inconsistency is bad as we don't currently ensure explicit
indexing of, e.g., the sysent array if one syscall is unimplemented/missing.
This could be fixed and might be more robust, but it's also good to have the
"documentation" that comes from being explicit as to what the missing
syscalls are.

The new version looks much like the awk version; stash off the current
'last highest syscall seen' if we hit an #if, restore to that if we hit an
#else, and make sure that we're explicitly always defining the next syscall.

The logic at the tail end of process_syscall_def that moves maxsyscall has
been 'cleaned up' a little since we're now ensuring that it's monotonically
increasing earlier in the function. At the moment I think it's unlikely we'd
see range-definitions that are not UNIMPL, but there's no reason to
specifically handle that case for bumping maxsyscall there.

This change was provoked by reading the commit message for r363832 and
realizing that this validation hadn't been included in the initial rewrite
to lua.

Reviewed by: brooks
Differential Revision: https://reviews.freebsd.org/D25945

show more ...


Revision tags: release/11.4.0
# 554f71e2 10-Jan-2020 Kyle Evans <[email protected]>

makesyscalls.lua: generate all files in /tmp, write into place at the end

This makes makesyscalls.lua more parallel-friendly, or at least not as
hostile to the idea. We get into situations where we'

makesyscalls.lua: generate all files in /tmp, write into place at the end

This makes makesyscalls.lua more parallel-friendly, or at least not as
hostile to the idea. We get into situations where we're running parallel if
we end up with MAKE_JOBS>1 entering any of the sysent targets, since each
output file is recognized a distinct build step that needs to be executed.

Another commit will add some .ORDER to further improve the situation.

Reported by: jhb
Reviewed by: brooks
Differential Revision: https://reviews.freebsd.org/D23098

show more ...


# 0d80770c 11-Dec-2019 Kyle Evans <[email protected]>

makesyscalls.lua: trim trailing spaces/commas from args

These are insignificant as far as declarations go, and we've historically
allowed it. fhlinkat in ^/sys/kern/syscalls.master, for example, cur

makesyscalls.lua: trim trailing spaces/commas from args

These are insignificant as far as declarations go, and we've historically
allowed it. fhlinkat in ^/sys/kern/syscalls.master, for example, currently
has a trailing comma after its final argument that this version of
makesyscalls is ignoring (not by conscious decision).

Fix it for now by actively stripping off trailing whitespace/commas until
we decide to actively prohibit it.

show more ...


# 0d9048c3 06-Dec-2019 Kyle Evans <[email protected]>

makesyscalls.lua: improve config processing

The current version will strip out #include directives appearing inside strings, which is clearly wrong. Improve the processing entirely in the following

makesyscalls.lua: improve config processing

The current version will strip out #include directives appearing inside strings, which is clearly wrong. Improve the processing entirely in the following ways:

- Strip only whole-line comments on every single iteration
- Abort if we see a malformed line that doesn't match the key=value format
- For quoted (backtick or double quote) strings, we'll advance to the end of
the key=value pair and make sure there's not extra stuff left over
- For unquoted key=value pairs, we'll strip any trailing comments and verify
there's no internal whitespace

This has revealed the caveat that key/value pairs can't even include escaped quotes (and haven't been able to). I don't know if this is actually problematic, as we're usually looking at cases like "#include <foo>" or raw identifiers.The current version will strip out #include directives appearing inside strings, which is clearly wrong. Improve the processing entirely in the following ways:

Reviewed and noticed by: brooks
Differential Revision: https://reviews.freebsd.org/D22698

show more ...


# d3276301 17-Nov-2019 Kyle Evans <[email protected]>

Add makesyscalls.lua, a rewrite of makesyscalls.sh

This currently requires a suitable lua + luafilesystem + luaposix from the
ports tree to build. Discussion is underway in D21893 to add a suitable

Add makesyscalls.lua, a rewrite of makesyscalls.sh

This currently requires a suitable lua + luafilesystem + luaposix from the
ports tree to build. Discussion is underway in D21893 to add a suitable lua
to the base system, cleverly disguised and out of the way of normal
consumers.

makesyscalls.sh is a good target for rewrite into lua as it's currently a
sh+sed+awk script that can be difficult to add on to, at times. For
instance, adding a new COMPAT* option (that mimicks the behaivor of most
other COMPAT* options) requires a fairly substantial amount of copy/paste;
see r352693 for instance. Attempts to generate part of the awk script for
COMPAT* handling was (very kindly) rejected with a desire to just rewrite
the script in a single language that can handle all of it.

Reviewed by: brooks
Differential Revision: https://reviews.freebsd.org/D21775

show more ...