SchOS/kernel
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Nexoniarz e4df779048 entry: enable SYSCALL on the UEFI hand-off path
The 32-bit entry sets EFER.SCE on its way into long mode. entry64uefi
skips that bootstrap entirely, because firmware has already done the mode
switch -- and with it skipped the one bit in there that is not about
paging. UEFI has no reason to set SCE and does not, so the kernel came up
with SYSCALL disabled.

Nothing noticed until the UEFI path first got far enough to run a user
program, at which point the first sysretq raised #UD: "unexpected trap 6
... rip <syscall_trapret>" in pid 1, at zero ticks.

Read-modify-write, because LME and LMA are already set by firmware and
have to stay.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-09 21:51:16 +02:00
..
arch/x86_64 entry: enable SYSCALL on the UEFI hand-off path 2026-08-09 21:51:16 +02:00
core Free every usable memory region, not one contiguous run 2026-08-09 20:03:51 +02:00
dev boot: separate BIOS from UEFI 2026-08-09 16:00:03 +02:00
drivers Map device registers with ioremap instead of assuming a low BAR 2026-08-09 21:31:01 +02:00
fs Rename Schunix to SchOS; the kernel becomes SchIFT 2026-08-09 14:09:59 +02:00
net Initial commit: Schunix as it stands before the SchOS rename 2026-08-09 13:47:01 +02:00
proc init survives stray signals; commands are 4-34x faster 2026-08-09 15:54:05 +02:00
sys Rename Schunix to SchOS; the kernel becomes SchIFT 2026-08-09 14:09:59 +02:00
kernel.ld Initial commit: Schunix as it stands before the SchOS rename 2026-08-09 13:47:01 +02:00