Commit graph

2891 commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen
230b816702 Delay implementing getresgid, getresuid, setresgid, setresuid. 2024-06-23 19:10:43 +02:00
Jonas 'Sortie' Termansen
64fc6b5f6d Add thread wait functions with clock support.
- pthread_cond_clockwait(2)
- pthread_mutex_clocklock(2)
- pthread_mutex_timedlock(2)
- pthread_rwlock_clockrdlock(2)
- pthread_rwlock_clockwrlock(2)
- pthread_rwlock_timedrdlock(2)
- pthread_rwlock_timedwrlock(2)
- sem_clockwait(2)
2024-06-23 19:05:04 +02:00
Jonas 'Sortie' Termansen
f460bb78aa fixup! Add memmem(3). 2024-06-23 19:01:51 +02:00
Jonas 'Sortie' Termansen
ae6b1ed45a Reject posix_getdents(2) for now. 2024-06-23 18:06:32 +02:00
Jonas 'Sortie' Termansen
95481db488 Reject posix_devctl(2). 2024-06-23 18:06:29 +02:00
Jonas 'Sortie' Termansen
752c9b8aa2 Reject posix_close(3). 2024-06-23 17:50:09 +02:00
Jonas 'Sortie' Termansen
0f5aaed789 Add memmem(3). 2024-06-23 17:28:53 +02:00
Jonas 'Sortie' Termansen
8f68ea49ce Add getlocalename_l(3). 2024-06-23 17:28:08 +02:00
Jonas 'Sortie' Termansen
8618c1adf5 Add GETENTROPY_MAX. 2024-06-23 13:50:27 +02:00
Jonas 'Sortie' Termansen
240d227be8 Implement dladdr(3). 2024-06-23 13:48:48 +02:00
Jonas 'Sortie' Termansen
c4a44531bf Add _Fork(2). 2024-06-23 13:40:39 +02:00
Jonas 'Sortie' Termansen
82fd2d4c92 Recognize and advertise POSIX 2024 support.
Update feature macros for interfaces added to POSIX 2024.

This commit begins the work of implementing POSIX 2024, which was
largely already implemented as extensions.
2024-06-23 13:33:55 +02:00
Jonas 'Sortie' Termansen
50792cb986 Remove unused alternative const safe sortix string functions. 2024-06-23 12:10:18 +02:00
Jonas 'Sortie' Termansen
442aa49070 Modernize process and thread member variable names. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
bfa2083ff0 Fix ppoll(2) EINTR handling. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
b46c25ea0c Add pstree(1) -is options. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
ed8bb024c5 Add chroot(8) -I option. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
49bf6298a7 Modernize chroot(8). 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
5d18d8be30 Prevent init(8) from using the tty when a daemon uses it. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
e90e2077e7 Run daemons in their own session. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
6e51c1ae51 Add init groups.
Every process now has an init process like it has a session, and each
session belong to an init. Orphaned processes are reparented to its init
process. All descendent processes are SIGKILL'd when an init process exits
and creating additional processes/threads fails.

Add setinit(2) for becoming the init process for your child processes and
add getinit(2) for locating your init process.

Add TIOCSCTTY force flag that releases a terminal from its current session
and makes it the controlling terminal for the current session. This ioctl
is essential to transferring the controlling terminal to a nested init,
which has its own session.

Add TIOCUCTTY that releases the terminal as the controlling terminal for
its current session.

Remove INIT_PID as it is replaced by getinit(2).
2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
09ca6ea01e Add service(8). 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
2629d5bdcc Add checksum(1) --cache option. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
70dbd6952a Add php port. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
b90b063efe Revert "Update to perl-5.39.5."
This reverts commit 781ff8880f3e2d29e31460427bccf50cc1ec436e.

File/Spec was no longer being installed when --all-static, breaking
texinfo.
2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
1f616954a5 Update to perl-5.39.5. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
f96d02415d Revert "Update to python-3.12.1."
This reverts commit 8ae8363167cc195f92803489e2f97391e2527c5f.

The libglib build broke due to no distutils module.
2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
2e2def6288 Update to python-3.12.1. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
c258e9b68d Revert "Update to texinfo-7.1."
This reverts commit 9813bb1d13c625d48ecd950bfaafc274383ca049.

ffmpeg fails to build natively with the new makeinfo:

perl ./doc/texidep.pl . doc/ffmpeg-utils.texi doc/ffmpeg-utils.html >doc/ffmpeg-utils.html.d
makeinfo --html -I doc --no-split -D config-not-all --init-file=./doc/t2h.pm --output doc/ffmpeg-utils.html doc/ffmpeg-utils.texi
makeinfo: error parsing ./doc/t2h.pm: Undefined subroutine &Texinfo::Config::set_from_init_file called at ./doc/t2h.pm line 24.
2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
abd57ad77c Update to texinfo-7.1. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
2639949a3b Revert "Update to dash-0.5.12."
This reverts commit 16bedfc9630779c01ebae5513fd307e969c329de.

Something is wrong with the case pattern matching, maybe fnmatch?
2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
48e5fb31cd Update to dash-0.5.12. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
cfd607f35e Revert "Update to freetype-2.13.2."
This reverts commit 5ad1e5f6054dd1e44ecb955b9326c1198ef17ff0.

configure runs make and crashes on a stack overflow in make.
2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
5abaee0b07 Update to freetype-2.13.2. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
5a40d167f5 Revert "Update to bison-3.8.2."
This reverts commit b82fae810b42c5426d21c4dc153b32f086dd7fde.
2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
9af68c9e79 Update to bison-3.8.2. 2024-06-22 18:25:49 +02:00
Jonas 'Sortie' Termansen
12ef28d590 Revert "Schedule interactive threads fairly under load."
This reverts commit 47731b91c37933943a73010c5a4494101cce52dc.

There is a rare freeze when the scheduler fails to run anything.
2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
a2b6b05838 Schedule interactive threads fairly under load.
Preempted threads are now removed from the runnable list until every
other thread has been preempted or the system goes idle. This ensures
threads that roundtrip to other threads get a full chance to perform
their work cooperatively without being starved by CPU intensive threads
whenever they yield.
2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
81947e4f3b Kinda fix pager(1) man bullet points. 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
e142c64dc8 Fix ESP endian. 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
7e1e5bc6ce Support booting with EFI. 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
784481dab6 Add kernel(7) --firmware option. 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
58bab55351 Add fatfs(8). 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
cb5ccbec33 Add getty(8). 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
c6f6aaa285 Add terminal and interrupt support to com(4). 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
d1a05c28ab Add nyan(1). 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
39072cbcff Work around pty deadlock. 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
cd5b226201 Add cdrom mounting live environment. 2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
c9917c00a1 Revert "Parallelize driver initialization."
This reverts commit 0fef08bbc4.
2024-06-22 18:25:48 +02:00
Jonas 'Sortie' Termansen
f0d03cdd57 Parallelize driver initialization. 2024-06-22 18:25:48 +02:00