Commit graph

2852 commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen
372370f37d 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 17:26:05 +02:00
Jonas 'Sortie' Termansen
8826615b48 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 17:26:05 +02:00
Jonas 'Sortie' Termansen
1e2a1f155a Kinda fix pager(1) man bullet points. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
257b3abe40 Fix ESP endian. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
4ea8396b5d Support booting with EFI. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
0871fa71c3 Add kernel(7) --firmware option. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
f9a346a6dc Add fatfs(8). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
ffafa81cd0 Add getty(8). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
0ab8901f8b Add terminal and interrupt support to com(4). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
8f4c3371f5 Add nyan(1). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
e9bfbc8d03 Work around pty deadlock. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
456e2ac596 Add cdrom mounting live environment. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
faff59cffc Revert "Parallelize driver initialization."
This reverts commit 0fef08bbc4.
2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
06fcbdb6ae Parallelize driver initialization. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
3fe2a32914 Speed up ata(4) 400 ns waits.
Waiting for any non-zero duration currently waits for at least one timer
cycle (10 ms), which is especially expensive during early boot.

The current workaround of simply reading the status 14 times seems really
suspicious although the osdev wiki documents it, but let's see how well it
works on real hardware, it's probably good enough.

Try to determine the initial selected drive to save one drive selection.
2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
a9b15bffe6 Decrease PS/2 timeouts. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
35e68109c9 Add uptime(1) -pr options. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
5248220e40 Add iso9660 filesystem implementation. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
35f4d2f000 Add kernel virtual address space usage debug information. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
9d317c462e Debug TCP socket state listing. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
250b95616b Add kernel heap allocation tracing debug facility. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
204576b7a8 Trianglix 4. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
8e3e058fd6 Add tix-check(8). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
bf2d489da1 Volatile release. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
d3d339b616 Add tix-upgrade(8). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
83ac75a083 Add tix-repository(8).
Support renaming, splitting, and deleting ports via RENAMES.

Unify on RUNTIME_DEPS for runtime dependencies.
2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
cc182e7912 Add signify port. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
d75c716891 Add pty(1). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
704ddbe061 Add getaddrinfo(1). 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
96d4615aee Enable stack smash protection by default. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
12a69346a0 Enable undefined behavior sanitization by default. 2024-06-22 17:26:05 +02:00
Jonas 'Sortie' Termansen
eede0df814 Handle SIGHUP in sh(1) and save shell history. 2024-06-22 17:26:04 +02:00
Jonas 'Sortie' Termansen
bab61702f3 Handle SIGWINCH in editor(1). 2024-06-22 17:23:51 +02:00
Jonas 'Sortie' Termansen
bf1d15957e Implement SIGWINCH. 2024-06-22 17:23:51 +02:00
Jonas 'Sortie' Termansen
ecd5217da8 Separate filesystem socket namespace inside chroots. 2024-06-22 17:23:51 +02:00
Jonas 'Sortie' Termansen
735dffd029 Fix sh(1) looping endlessly on input errors. 2024-06-22 17:23:51 +02:00
Jonas 'Sortie' Termansen
8b0911c672 Fix SIGHUP not being sent to only the foreground process group. 2024-06-18 22:17:06 +02:00
Jonas 'Sortie' Termansen
b6f2333bdd Fix editor(1) crashing on resolution changes. 2024-06-18 21:53:50 +02:00
Jonas 'Sortie' Termansen
da24b330e0 Fix buffer overflow in init(8) tokenizer. 2024-05-25 19:50:46 +02:00
Jonas 'Sortie' Termansen
29b375dcb1 Refactor init(8) communications. 2024-05-22 13:53:34 +02:00
Jonas 'Sortie' Termansen
6cc934aa70 Add libsqlite3 port. 2024-05-22 13:27:34 +02:00
Jonas 'Sortie' Termansen
6ef4f49dad Add unix(4) SO_ERROR. 2024-05-22 13:27:34 +02:00
Jonas 'Sortie' Termansen
153cd1817b Remove unused <sortix/types.h>. 2024-05-22 13:27:34 +02:00
Jonas 'Sortie' Termansen
03329cae6a Process editor(1) input immediately. 2024-05-22 13:26:56 +02:00
Jonas 'Sortie' Termansen
22b59a8f6f Fix display(8) windows receiving handled keystrokes. 2024-05-22 13:26:56 +02:00
Jonas 'Sortie' Termansen
493b838dbf Fix extfs(8) mount warnings. 2024-05-22 13:26:56 +02:00
Jonas 'Sortie' Termansen
27275e151d Fix bugs in glob(3). 2024-05-22 13:26:56 +02:00
Jonas 'Sortie' Termansen
a7f5ac82aa Update to git-2.43.0. 2024-03-25 23:22:34 +01:00
Jonas 'Sortie' Termansen
531d0dcc03 Update to vim-9.0. 2024-03-25 23:22:34 +01:00
Jonas 'Sortie' Termansen
117f9a9888 Update to nginx-1.25.3. 2024-03-25 23:22:34 +01:00