Jonas 'Sortie' Termansen
475bd7c26e
Add support for multiple initrds.
2016-02-07 14:48:27 +01:00
Jonas 'Sortie' Termansen
9fe234d4d8
Rewrite init(8).
2016-02-06 17:29:42 +01:00
Jonas 'Sortie' Termansen
398eee1a8b
Add AHCI driver.
2016-02-02 22:47:49 +01:00
Jonas 'Sortie' Termansen
79e01c2eba
Rewrite ATA driver.
2016-02-02 22:47:49 +01:00
Jonas 'Sortie' Termansen
b0bbf1e013
Fix fsm_mountat(2) error handling.
2016-01-27 21:36:04 +01:00
Jonas 'Sortie' Termansen
2e4b15daed
Simplify directory reading.
2016-01-26 18:42:54 +01:00
Jonas 'Sortie' Termansen
fe067c5150
Refactor boot page availability testing.
2016-01-26 17:51:25 +01:00
Jonas 'Sortie' Termansen
cfb9dd6045
Remove poorly implemented kernel symbol loading.
2016-01-26 17:45:06 +01:00
Jonas 'Sortie' Termansen
08bac6e3f6
Add kernelinfo firmware string.
2016-01-26 17:45:06 +01:00
Jonas 'Sortie' Termansen
4b1079510b
Execute only programs with an executable bit set.
2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen
2e3d7c45af
Add paging no-execute and write protection support.
...
Enable the NX bit on x86_64 and set if not PROT_EXEC and enable the write
protection mode (CR0.WP) that disables the default behavior where the kernel
is able to write to read-only memory. Fix kernel broken assumptions it can
access read-only memory and take care to never set PROT_KWRITE on user-space
pages unless PROT_WRITE is also set, otherwise user-space will be able to
write to read-only memory.
This achieves X^W in the whole system except for the core kernel itself as
it is currently don't know the purpose of pages when identity mapping the
first 4 MiB.
2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen
bff1265d62
Add termios(2).
2016-01-25 15:47:40 +01:00
Jonas 'Sortie' Termansen
8f233b4a10
Add console backspace bold and underline support.
...
Combine textbuffer char and attr concepts while here.
2016-01-23 01:02:50 +01:00
Jonas 'Sortie' Termansen
9297ff2a20
Add PS/2 mouse driver.
2016-01-23 00:50:53 +01:00
Jonas 'Sortie' Termansen
306709fc4a
Add PS/2 controller driver.
2016-01-23 00:50:53 +01:00
Meisaka Yukara
3d48c7f658
Fix firing of absolute clocks.
2016-01-22 21:17:05 +01:00
Jonas 'Sortie' Termansen
dc07435002
Fix closefrom(2) infinite loop.
2016-01-22 20:01:32 +01:00
Jonas 'Sortie' Termansen
ff8b2be515
Implement CLOCK_THREAD_CPUTIME_ID and CLOCK_THREAD_SYSTIME_ID.
2016-01-09 02:28:44 +01:00
Jonas 'Sortie' Termansen
af9cc8ed05
Schedule full console redraw after user-space framebuffer write.
2016-01-08 19:56:11 +01:00
Jonas 'Sortie' Termansen
dad5c57f33
Allow bootloader bitmap framebuffer modesetting.
2016-01-08 19:56:11 +01:00
Jonas 'Sortie' Termansen
8c7c6fa59f
Center ascii cat on boot.
2016-01-08 19:56:11 +01:00
Jonas 'Sortie' Termansen
9d3aecfa07
Work around sync on close bottleneck.
2016-01-08 01:25:10 +01:00
Jonas 'Sortie' Termansen
74fe008001
Silence static analysis warnings.
2016-01-08 00:48:01 +01:00
Jonas 'Sortie' Termansen
a45b93785c
Fix program loading bugs.
2016-01-08 00:41:20 +01:00
Jonas 'Sortie' Termansen
48c6ccdf06
Fix MapPCIBAR potential overflow.
2016-01-08 00:39:13 +01:00
Jonas 'Sortie' Termansen
055f502c02
Fix dup3(2) O_CLOEXEC and O_CLOFORK handling.
2016-01-08 00:36:14 +01:00
Jonas 'Sortie' Termansen
8fabfc5f7b
Fix kernel console rendering U+007F.
2016-01-07 19:17:04 +01:00
Jonas 'Sortie' Termansen
3e068bc88f
Fix x86 Alignment Check and Security Exception handlers.
...
The processor pushes an error code when delivering these exception.
Discovered by Alexandros Alexandrou.
2016-01-07 19:17:04 +01:00
Jonas 'Sortie' Termansen
22351d7f72
Fix untimely delivery of signals during userfs reference count messages.
2016-01-07 19:08:43 +01:00
Jonas 'Sortie' Termansen
559857b97e
Fix features.h inclusions not yet changed to sys/cdefs.h.
2015-12-23 17:49:59 +01:00
Jonas 'Sortie' Termansen
f60b2c6ec4
Add keyboard layout support to kernel.
2015-12-19 02:44:15 +01:00
Jonas 'Sortie' Termansen
7da84494ab
Add kblayout-compiler(1).
2015-12-19 02:21:15 +01:00
Jonas 'Sortie' Termansen
4b6b06bbc8
Add scram(2).
2015-12-12 22:53:07 +01:00
Jonas 'Sortie' Termansen
f2eb347e9f
Fix PS2Keyboard memcpy(dest, NULL, 0) undefined behavior.
2015-12-12 22:53:07 +01:00
Jonas 'Sortie' Termansen
ab27c85948
Implement sigaction(2) SA_RESETHAND.
2015-12-12 19:28:08 +01:00
Jonas 'Sortie' Termansen
802c12e64a
Implement ppoll(2) timeouts.
2015-12-12 19:28:08 +01:00
Jonas 'Sortie' Termansen
0045f18c81
Remove kernel Scheduler::Init().
2015-12-12 19:28:07 +01:00
Jonas 'Sortie' Termansen
cee24359d8
Add psctl(2).
2015-12-12 19:28:07 +01:00
Jonas 'Sortie' Termansen
716ac0dceb
Fix logterminal TERMMODE_LINEBUFFER checking.
2015-12-12 19:28:07 +01:00
Jonas 'Sortie' Termansen
24cf8f42b8
Silence maybe initialized warning in sigsuspend.
2015-12-12 16:53:42 +01:00
Jonas 'Sortie' Termansen
32feba2709
Fix memcpy(dest, NULL, 0) undefined behavior.
2015-12-12 16:53:42 +01:00
Jonas 'Sortie' Termansen
1acf16dea0
Fix kernel makefile finding crtbegin.o and crtend.o when not needed.
2015-12-12 16:53:42 +01:00
Jonas 'Sortie' Termansen
f4995c24f4
Add kernel --init option.
2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
62b5d45a78
Add kernel command line support.
2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
fc637c8880
Prevent orphan processes from becoming zombies.
2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
44d4807fc4
Add ENOMOUNT.
2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
bae08f13ef
Fix fsmarshall not handling users and groups.
...
This is an incompatible ABI change.
2015-10-28 16:07:36 +01:00
Jonas 'Sortie' Termansen
7c6e6ef317
Fix kernel string copy from user-space.
2015-10-09 16:17:52 +02:00
Jonas 'Sortie' Termansen
2727d9fb50
Fix pipe destruction race condition.
2015-10-09 16:17:52 +02:00
Jonas 'Sortie' Termansen
12b5044bc7
Fix signal delivery during context switch.
2015-10-09 16:17:52 +02:00