opnsense-src/lib/libc/sys
Stefan Eßer c33db74b53 fs/msdosfs: add tracking of free root directory entries
This update implements tallying of free directory entries during
create, delete,	or rename operations on FAT12 and FAT16 file systems.

Prior to this change, the total number of root directory entries
was reported as number of inodes, but 0 as the number of free
inodes, causing system health monitoring software to warn about
a suspected disk full issue.

The FAT12 and FAT16 file systems provide a limited number of
root directory entries, e.g. 512 on typical hard disk formats.
The valid range of values is 1 to 65535, but the msdosfs code
will effectively round up "odd" values to the next multiple of 16
(e.g. 513 would allow for 528 root directory entries).

This update implements tracking of directory entries during create,
delete, or rename operations, with initial values determined by
scanning the directory when the file system is mounted.

Total and free directory entries are reported in the f_files and
f_ffree elements of struct statfs, despite differences in semantics
of these values:

- There is no limit on the number of files and directories that can
  be created on a FAT file system. Only the root directory of FAT12
  and FAT16 file systems is limited, any number of files can still be
  created in sub-directories, even when 0 free "inodes" are reported.

- A single file can require 1 to 21 directory entries, depending on
  the character set, structure, and length of the name. The DOS 8.3
  style file name takes up 1 entry, and if the name does not comply
  with the syntax of a DOS 8.3 file name, 1 additional entry is used
  for each 13 characters of the file name. Since all these entries
  have to be contiguous, it is possible that a file or directory with
  a long name can not be created, despite a sufficient total number of
  free directory entries.

- Renaming a file can require more directory entries than currently
  allocated to store its long name, which may prevent an in-place
  update of the name if more entries are needed. This may cause a
  rename operation to fail if no contiguous range of free entries for
  the new name can be found.

- The volume label is stored in a directory entry. An empty FAT file
  system with a volume label will therefore show 1 used "inode" in
  df.

- The perceentage of free inodes shown in df or monitoring tools does
  only represent the state of the root directory of a FAT12 or FAT16
  file system. Neither does a reported value of 0% free inodes does
  prevent files from being created in sub-directories, nor does a
  value of 50% free inodes guarantee that even a single file with
  a "long" name can be created in the root directory (if every other
  directory entry is occupied and there are no 2 contiguous entries).

The statfs(2) and df(1) man pages have been updated with a notice
regarding the possibly different semantics of values reported as
total and free inodes for non-Unix file systems.

PR:		270053
Reported by:	Ben Woods <woodsb02@freebsd.org>
Approved by:	mckusick
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D38987
2023-03-29 08:46:01 +02:00
..
__error.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
__vdso_gettimeofday.c libc binuptime(): use the right function to get the most significant bit index 2022-02-08 21:44:23 +02:00
_exit.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
_umtx_op.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
abort2.2 use .Mt to mark up email addresses consistently (part4) 2014-06-23 08:25:03 +00:00
accept.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
accept.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
accept4.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
access.2 Add AT_EMPTY_PATH for several *at(2) syscalls 2021-04-15 12:48:11 +03:00
acct.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
adjtime.2 Remove references to timed(8) 2021-05-13 09:53:08 +02:00
aio_cancel.2 use .Mt to mark up email addresses consistently (part4) 2014-06-23 08:25:03 +00:00
aio_error.2 Add aio_writev and aio_readv 2021-01-02 19:57:58 -07:00
aio_fsync.2 aio_fsync(2): Support O_DSYNC. 2021-01-08 13:15:56 +13:00
aio_mlock.2 Fix various nits in the aio operation manpages. 2016-08-19 17:37:32 +00:00
aio_read.2 Add aio_writev and aio_readv 2021-01-02 19:57:58 -07:00
aio_return.2 lio_listio: validate aio_lio_opcode 2021-01-11 19:53:01 -07:00
aio_suspend.2 aio_suspend.2: properly canonicalize .Dd 2020-12-11 00:28:28 +00:00
aio_suspend.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
aio_waitcomplete.2 Fully handle size_t lengths in AIO requests. 2016-03-21 21:37:33 +00:00
aio_write.2 Add aio_writev and aio_readv 2021-01-02 19:57:58 -07:00
bind.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
bindat.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
brk.2 Reimplement brk() and sbrk() to avoid the use of _end. 2018-06-04 19:35:15 +00:00
brk.c Reimplement brk() and sbrk() to avoid the use of _end. 2018-06-04 19:35:15 +00:00
cap_enter.2 cap_*(2): Document ENOSYS behavior. 2023-03-09 18:10:50 -08:00
cap_fcntls_limit.2 cap_*(2): Document ENOSYS behavior. 2023-03-09 18:10:50 -08:00
cap_ioctls_limit.2 cap_*(2): Document ENOSYS behavior. 2023-03-09 18:10:50 -08:00
cap_rights_limit.2 cap_*(2): Document ENOSYS behavior. 2023-03-09 18:10:50 -08:00
chdir.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
chflags.2 Add AT_EMPTY_PATH for several *at(2) syscalls 2021-04-15 12:48:11 +03:00
chmod.2 Add AT_EMPTY_PATH for several *at(2) syscalls 2021-04-15 12:48:11 +03:00
chown.2 Add AT_EMPTY_PATH for several *at(2) syscalls 2021-04-15 12:48:11 +03:00
chroot.2 chroot.2: Correct grammar errors. 2022-03-31 13:05:49 +11:00
clock_gettime.2 clock_gettime.2: Clarify CLOCK_* 2022-07-08 21:57:24 +02:00
clock_gettime.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
clock_nanosleep.c Remove 'All rights reserved' from my files 2018-05-09 20:12:59 +00:00
close.2 Mark all the system calls that were in 1st Edition Unix as such in the 2017-12-01 22:26:36 +00:00
close.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
closefrom.2 fd: add close_range(..., CLOSE_RANGE_CLOEXEC) 2022-03-03 17:21:58 +00:00
closefrom.c closefrom: clamp lowfd to >= 0; close_range's parameters are unsigned. 2020-04-14 23:24:24 +00:00
compat-ino64.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
compat-stub.c Remove bits of the old NUMA. 2018-07-10 22:00:20 +00:00
connect.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
connect.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
connectat.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
copy_file_range.2 copy_file_range(2): add recommendation to use large "len" 2021-01-02 17:21:21 -08:00
cpuset.2 cpuset: Fix sched_[g|s]etaffinity() for better compatibility with Linux. 2023-01-29 16:17:33 +03:00
cpuset_getaffinity.2 Use Linux semantics for the thread affinity syscalls. 2022-05-11 10:36:01 +03:00
cpuset_getdomain.2 cpuset{,_getaffinity,_getdomain}.2: fix SEE ALSO 2020-12-11 01:52:27 +00:00
dup.2 Correct history for Unix 2nd Edition through 6th Edition for the 2017-12-01 22:48:20 +00:00
eventfd.2 copyright: chase my name and email change 2023-01-06 15:28:42 -05:00
execve.2 execve: disallow argc == 0 2022-01-26 13:40:27 -06:00
extattr_get_file.2 O_PATH: allow vfs_extattr syscalls 2021-10-11 20:09:49 +03:00
fcntl.2 fcntl(2): be more precise about third arg type 2021-12-07 01:27:38 +02:00
fcntl.c libc: drop "All rights reserved" from Foundation copyrights 2022-08-04 16:57:50 -04:00
fdatasync.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
ffclock.2 use .Mt to mark up email addresses consistently (part4) 2014-06-23 08:25:03 +00:00
fhlink.2 [skip ci] document first appearance of fhlink et al 2022-11-30 14:57:56 -07:00
fhopen.2
fhreadlink.2 [skip ci] document first appearance of fhlink et al 2022-11-30 14:57:56 -07:00
flock.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
fork.2 fork(2): comment about doubtful use of stdio and exit(3) in example 2021-08-08 22:38:59 +03:00
fork.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
fspacectl.2 fspacectl(2): Changes on rmsr.r_offset's minimum value returned 2021-08-26 00:03:37 +08:00
fstat.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
fstatat.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
fstatfs.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
fsync.2 libc: drop "All rights reserved" from Foundation copyrights 2022-08-04 16:57:50 -04:00
fsync.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
getdents.c Forward compatibility for ino64. 2017-06-23 18:06:20 +00:00
getdirentries.2 Bump Dd in getdirentries.2 after c6487446. 2022-04-20 17:55:32 +03:00
getdirentries.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
getdtablesize.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getfh.2 [skip ci] document first appearance of fhlink et al 2022-11-30 14:57:56 -07:00
getfsstat.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
getfsstat.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
getgid.2 libc manpages: various improvements from NetBSD 2020-06-14 05:59:30 +00:00
getgroups.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getitimer.2 Fix a few mandoc issues 2020-10-09 19:12:44 +00:00
getlogin.2 getlogin_r: fix the type of len 2020-09-09 18:07:13 +00:00
getloginclass.2 Drop "All rights reserved" from all my stuff. This includes 2020-10-28 13:46:11 +00:00
getpeername.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getpgrp.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getpid.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getpriority.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getrandom.2 getrandom(2): Add Linux GRND_INSECURE API flag 2020-01-12 20:47:38 +00:00
getrlimit.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getrusage.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getsid.2
getsockname.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
getsockopt.2 getsockopt.2: Clarify the SO_REUSEPORT_LB text a bit 2022-11-02 13:46:24 -04:00
gettimeofday.2 Remove references to timed(8) 2021-05-13 09:53:08 +02:00
gettimeofday.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
getuid.2 Correct history for Unix 2nd Edition through 6th Edition for the 2017-12-01 22:48:20 +00:00
interposing_table.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
intro.2 Clarify the description of the EINTEGRITY error in intro(2). 2021-12-28 16:39:46 -08:00
ioctl.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
issetugid.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
jail.2 jail: Change both root and working directories in jail_attach(2) 2021-02-19 14:13:35 -08:00
kenv.2 kenv: allow listing of static kernel environments 2021-07-18 23:06:19 -05:00
kevent.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
kill.2 Only return EPERM from kill(-pid) when no process was signalled. 2019-12-07 18:07:49 +00:00
kldfind.2
kldfirstmod.2
kldload.2
kldnext.2
kldstat.2
kldsym.2 Use 'cmd' rather than 'command' to match the function prototype. 2016-10-17 22:36:37 +00:00
kldunload.2
kqueue.2 kqueue1(2): document 2023-03-28 02:39:26 +03:00
ktrace.2 ktrace.2: Document KTRFAC_STRUCT_ARRAY. 2022-11-02 10:35:26 -07:00
link.2 Fix mistakes in link(2) and shm_open(2) 2021-10-06 06:38:26 +03:00
lio_listio.2 lio_listio(2): Allow LIO_READV and LIO_WRITEV. 2021-08-22 23:00:42 +12:00
listen.2 Revert "listen(): improve POSIX compliance" 2022-10-12 04:33:00 +02:00
lseek.2 lseek(2): Document the seek behavior better and update the POSIX compliance 2020-07-13 15:52:57 +00:00
lstat.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
madvise.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
Makefile.inc kqueue1(2): document 2023-03-28 02:39:26 +03:00
mincore.2 Include the psind in data returned by mincore(2). 2020-09-02 18:16:43 +00:00
minherit.2 Implement INHERIT_ZERO for minherit(2). 2017-03-14 17:10:42 +00:00
mkdir.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
mkfifo.2 Trim some duplicate EIO descriptions. 2020-03-30 21:48:47 +00:00
mknod.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
mknod.c Commit the 64-bit inode project. 2017-05-23 09:29:05 +00:00
mlock.2 Provide separate accounting for user-wired pages. 2019-05-13 16:38:48 +00:00
mlockall.2 Provide separate accounting for user-wired pages. 2019-05-13 16:38:48 +00:00
mmap.2 mmap(2): Update .Dd missed in the last commit 2020-12-24 14:14:56 +00:00
modfind.2 Use the right argumant name 2016-03-18 08:47:17 +00:00
modnext.2
modstat.2
mount.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
mprotect.2 mprotect.2: Improve the description of prot 2021-09-07 17:28:50 +01:00
mq_close.2
mq_getattr.2
mq_notify.2 Add documentation for the sigevent structure. 2016-07-15 15:12:56 +00:00
mq_open.2 mq_open(2): Fix xref to mq_unlink(2) 2021-03-04 13:32:42 +01:00
mq_receive.2
mq_send.2
mq_setattr.2
mq_unlink.2 mq_unlink(3): Add manual page 2021-02-18 18:56:52 +01:00
msgctl.2 Avoid copying out kernel pointers from msgctl(IPC_STAT). 2020-07-09 17:26:49 +00:00
msgget.2 Refer to SysV IPC permissions as numeric constants. 2018-03-04 20:06:02 +00:00
msgrcv.2 Change the return type of msgrcv() to ssize_t as required by POSIX. 2016-07-28 12:22:01 +00:00
msgsnd.2
msync.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
msync.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
munmap.2 Implement address space guards. 2017-06-24 17:01:11 +00:00
nanosleep.2 libc: Add HISTORY sections to the manual pages 2022-05-05 18:46:32 +02:00
nanosleep.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
nfssvc.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
ntp_adjtime.2
open.2 open.2: describe O_RESOLVE_BENEATH errors correctly 2023-03-02 15:58:00 -05:00
open.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
openat.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
pathconf.2 Fix pathconf.2 documentation error 2021-08-07 07:09:57 +08:00
pdfork.2 libc: Fix most issues reported by mandoc 2020-12-19 14:54:28 +00:00
pdfork.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
pipe.2 Correct history for Unix 2nd Edition through 6th Edition for the 2017-12-01 22:48:20 +00:00
pipe.c Replace use of the pipe(2) system call with pipe2(2) with a zero flags 2016-06-22 21:11:27 +00:00
poll.2 poll(2): Add POLLRDHUP. 2021-04-28 23:00:31 +12:00
poll.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
POSIX2x_Fork.c libc: drop "All rights reserved" from Foundation copyrights 2022-08-04 16:57:50 -04:00
posix_fadvise.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
posix_fallocate.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
posix_openpt.2 posix_openpt.2: Sort includes per style(9) 2016-09-21 17:51:27 +00:00
ppoll.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
procctl.2 procctl: actually require debug privileges over target 2021-10-19 23:04:34 +03:00
profil.2 profil(2): profil(II) was in the v3 sources 2023-02-15 12:44:32 -07:00
pselect.2 pselect(2): Document what a null pointer for the signalmask means 2022-07-02 13:41:46 -06:00
pselect.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
ptrace.2 ptrace(2): document PT_SC_REMOTE 2022-12-22 23:11:42 +02:00
ptrace.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
quotactl.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
rctl_add_rule.2 rctl_add_rule(2): fix manlint warnings 2017-05-23 07:32:57 +00:00
read.2 Revert "Add extra EINVAL information about wrong block size to read(2)/write(2)" 2022-10-08 10:23:51 +00:00
read.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
readlink.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
readv.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
reboot.2 kern_reboot(9): some updates 2023-03-20 17:12:12 -03:00
recv.2 recv: bump manpage date after be1f485d7d. 2022-08-02 13:24:14 +00:00
recvfrom.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
recvmsg.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
rename.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
revoke.2 libc: Fix most issues reported by mandoc 2020-12-19 14:54:28 +00:00
rfork.2 posix_spawn(3): handle potential signal issues with vfork 2019-09-25 19:22:03 +00:00
rmdir.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
rtprio.2 Add idle priority scheduling privilege group to MAC/priority 2021-12-10 04:54:48 +02:00
sched_get_priority_max.2
sched_setparam.2
sched_setscheduler.2 Various mdoc fixes and a few EOL whitespace removals. 2014-12-21 12:36:36 +00:00
sched_yield.2
sctp_generic_recvmsg.2
sctp_generic_sendmsg.2
sctp_peeloff.2
select.2 man page of select(2) should mention pselect(2) 2020-06-25 12:31:05 +00:00
select.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
semctl.2 Apply the logic from r363051 to semctl(2) and __sem_base field. 2020-07-09 18:34:54 +00:00
semget.2 Refer to SysV IPC permissions as numeric constants. 2018-03-04 20:06:02 +00:00
semop.2
send.2 Document handling of connection-mode sockets by sendto(2). 2020-04-27 16:12:32 +00:00
sendfile.2 libc: Fix most issues reported by mandoc 2020-12-19 14:54:28 +00:00
sendmsg.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
sendto.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
setcontext.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
setfib.2 Don't end up manpage titles with a full stop. 2017-05-24 21:02:53 +00:00
setgroups.2 Update .Dd missed in -r328304. 2018-01-24 22:36:21 +00:00
setpgid.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
setregid.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
setresuid.2 Remove useless comment. 2015-02-07 13:11:45 +00:00
setreuid.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
setsid.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
setuid.2 Correct history for Unix 2nd Edition through 6th Edition for the 2017-12-01 22:48:20 +00:00
shm_open.2 shm: Document shm_create_largepage() 2023-02-03 11:48:25 -05:00
shm_open.c Fix error checking in shm_create_largepage(). 2020-09-18 12:30:15 +00:00
shmat.2 Implement shmat(2) flag SHM_REMAP. 2019-01-16 05:15:57 +00:00
shmctl.2 Change the default setting of kern.ipc.shm_allow_removed from 0 to 1. 2015-10-10 09:29:47 +00:00
shmget.2 Refer to SysV IPC permissions as numeric constants. 2018-03-04 20:06:02 +00:00
shutdown.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sigaction.2 [skip ci] document close_range(2) as async-signal-safe 2020-07-21 16:46:40 +00:00
sigaction.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
sigaltstack.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sigfastblock.2 Add a way to manage thread signal mask using shared word, instead of syscall. 2020-02-09 11:53:12 +00:00
sigpending.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sigprocmask.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sigprocmask.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
sigqueue.2 Provide a freebsd32 implementation of sigqueue() 2017-05-05 18:49:39 +00:00
sigreturn.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sigstack.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sigsuspend.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sigsuspend.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
sigtimedwait.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
sigwait.2
sigwait.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
sigwaitinfo.2 Fix sigtimedwait manpage. 2022-04-21 10:52:29 +03:00
sigwaitinfo.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
socket.2 man: add Netlink reference to socket(2) 2023-01-15 11:27:43 +00:00
socketpair.2 socketpair.2: Reference relevant POSIX standards 2018-02-10 19:41:32 +00:00
stat.2 Add AT_EMPTY_PATH for several *at(2) syscalls 2021-04-15 12:48:11 +03:00
stat.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
statfs.2 fs/msdosfs: add tracking of free root directory entries 2023-03-29 08:46:01 +02:00
statfs.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
swapcontext.c libc: partially revert r326576 2020-04-25 14:24:54 +00:00
swapon.2 Document new variant of swapoff(2) 2021-12-09 02:48:53 +02:00
Symbol.map kqueue1(2): export the symbol from libc 2023-03-28 02:39:26 +03:00
symlink.2 Trim some duplicate EIO descriptions. 2020-03-30 21:48:47 +00:00
sync.2 Correct history for Unix 2nd Edition through 6th Edition for the 2017-12-01 22:48:20 +00:00
sysarch.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
syscall.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
thr_exit.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
thr_kill.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
thr_new.2 Change sysctl section to 3 as suggested by Benjamin Kaduk. 2022-09-17 09:35:49 +02:00
thr_self.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
thr_set_name.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
thr_suspend.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
thr_wake.2 Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
timer_create.2 Add documentation for the sigevent structure. 2016-07-15 15:12:56 +00:00
timer_delete.2
timer_settime.2
trivial-vdso_tc.c Implement userspace gettimeofday(2) with HPET timecounter. 2016-08-17 09:52:09 +00:00
truncate.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
umask.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
undelete.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
unlink.2 open(2): Remove O_BENEATH and AT_BENEATH 2021-03-02 20:16:55 +02:00
utimensat.2 utimensat(2): Remove description of compatibility code 2022-06-12 22:57:31 +02:00
utimes.2 Document EINTEGRITY errors for many system calls. 2020-03-30 21:44:00 +00:00
utrace.2 mdoc: sort Xr 2016-01-18 20:21:38 +00:00
uuidgen.2
vadvise.c Make vadvise compat freebsd11. 2018-05-25 20:40:23 +00:00
vfork.2 Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
wait.2 wait.2: Remove sys/types.h from the list of required headers 2022-06-30 10:31:26 -04:00
wait4.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
wait6.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
write.2 Revert "Add extra EINVAL information about wrong block size to read(2)/write(2)" 2022-10-08 10:23:51 +00:00
write.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00
writev.c Remove "All Rights Reserved" from FreeBSD Foundation libc copyrights 2022-07-21 09:53:31 -04:00