Page MenuHomeFreeBSD

syscalls.master: align with sigfastblock declaration
ClosedPublic

Authored by brooks on Mar 15 2024, 10:45 PM.
Tags
None
Referenced Files
F83257705: D44379.diff
Wed, May 8, 3:25 AM
Unknown Object (File)
Sat, May 4, 1:22 PM
Unknown Object (File)
Sat, Apr 27, 3:45 AM
Unknown Object (File)
Fri, Apr 26, 4:15 AM
Unknown Object (File)
Sat, Apr 13, 9:44 PM
Unknown Object (File)
Apr 8 2024, 12:29 PM
Unknown Object (File)
Apr 7 2024, 12:29 AM
Unknown Object (File)
Mar 31 2024, 4:34 PM
Subscribers

Details

Summary

sigfastblock is declared to take a void * argument in the manpage in
headers so declare it that way and use SAL annotations to say it
interacts with a 32-bit word.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

What exactly does the 'updates_bytes_opt' mean? Note that the intent is not that the syscall updates *ptr, but that *ptr is updated async by kernel after the syscall.

In D44379#1012168, @kib wrote:

What exactly does the 'updates_bytes_opt' mean? Note that the intent is not that the syscall updates *ptr, but that *ptr is updated async by kernel after the syscall.

In this context _updates_ means both reads and writes. Given the operations seem it be casueword32, that's correct. In this case I mostly want to express that the pointer is 4 bytes after losing the type. Any consumer of the annotations is almost certainly going to have to add special handing for this case so I'm not worried about the fact that it's async. The alternative would be to update the declaration to be uint32_t *ptr.

This revision is now accepted and ready to land.Mar 18 2024, 7:52 PM