Commit Graph

163 Commits

Author SHA1 Message Date
K. Lange
658ae81f65 kernel: cleanup things introduced in COW 2021-12-01 09:19:25 +09:00
K. Lange
18174e46de kernel: Implement basic copy-on-write for fork() 2021-11-30 22:26:45 +09:00
K. Lange
de0bda736a kernel: at least add full lead comments to everything 2021-11-26 11:31:10 +09:00
K. Lange
c572a5c148 kernel: clean up kernel/arch/x86_64/{cmos,pit}.c 2021-11-26 11:05:46 +09:00
K. Lange
e6313efcfc kernel: cleanup kernel/arch/x86_64/user.c 2021-11-26 10:28:23 +09:00
K. Lange
35423ecc66 kernel: cleanup kernel/arch/x86_64/smp.c 2021-11-26 10:27:39 +09:00
K. Lange
80cf1a1f15 kernel: cleanup kernel/arch/x86_64/idt.c 2021-11-26 09:52:05 +09:00
K. Lange
ade7d13707 x86_64: fixup bad memory walk when doing backtraces 2021-11-24 17:33:38 +09:00
K. Lange
045431b2de kernel: prevent modules from being loaded multiple times 2021-11-18 19:47:28 +09:00
K. Lange
f7a29b90af kernel: Use local APIC timer for preemption on APs, not an IPI 2021-11-14 17:16:20 +09:00
K. Lange
43b6bd32e3 kernel: exclude serial ports from pts numbering; start numbering at 1 2021-11-04 19:17:21 +09:00
K. Lange
ac35ad0bbd x86_64: Don't wrap version codename in quotes as we're doing that directly now 2021-10-30 15:24:36 +09:00
K. Lange
a83d641d2c mmu: Be more clear about what's happening when we run out of RAM 2021-10-28 07:48:25 +09:00
K. Lange
465c82a5f8 irq: Mark isr_common as global so it shows up in symbol table 2021-10-25 18:23:50 +09:00
K. Lange
1bb382de12 kernel: Print gs alongside other registers in panic 2021-10-25 18:23:33 +09:00
K. Lange
8839e4357c multiboot: Correctly pass bits-per-pixel from framebuffer data 2021-10-25 13:49:57 +09:00
K. Lange
ca8fc639db kernel: Fix gdt install clobbering symbol table, or whatever else ends up after it 2021-10-24 16:23:56 +09:00
K. Lange
8b363c878b mmu: Fixup mapping for physical memory address >4GiB 2021-10-23 12:19:41 +09:00
K. Lange
b6caef5d7e x86_64: Cleanup boot messages to fit in vga text mode better 2021-10-20 18:49:40 +09:00
K. Lange
038727eb1a x86_64: Support multiboot2 loaders 2021-10-20 16:03:05 +09:00
K. Lange
043b3797f7 x86_64: Mark kernel with AOUT_KLUDGE address parameters so the 64-bit ELF can be booted directly 2021-10-20 16:02:46 +09:00
K. Lange
76191f89fb kernel: Print tracebacks for more fatal errors 2021-10-20 10:33:58 +09:00
K. Lange
c366ea2dfd kernel: Initial pass at new debug printf interface 2021-10-19 20:29:14 +09:00
K. Lange
526c8fc55e smp: allow command line override for where to scan for RSDP 2021-10-12 22:23:58 +09:00
K. Lange
a8ca76845c smp: Don't just fatal() if there's too many cores; initialize up to 32 2021-10-12 20:04:38 +09:00
K. Lange
05e224dee7 kernel: Better fault reports 2021-10-04 20:34:42 +09:00
K. Lange
1f0d982240 kernel: Initial try at actual user buffer validation 2021-09-29 14:07:32 +09:00
K. Lange
41ba264cdc ptrace: PTRACE_SINGLESTEP 2021-09-24 14:41:17 +09:00
K. Lange
c8a37456ec ptrace: POKEDATA, permission fixes for PEEKDATA 2021-09-24 12:00:46 +09:00
K. Lange
470b2bfabb ptrace: Catch signals, start work on debugger 2021-09-22 20:32:21 +09:00
K. Lange
6899683bb4 strace: Initial support for a ptrace() mechanism, strace tool 2021-09-22 15:33:02 +09:00
K. Lange
aabbde7877 net: another batch of rewrites 2021-09-17 21:03:53 +09:00
K. Lange
c24d743740 mmu: Reserve a few more initial PTs so we can support 64GiB of memory 2021-09-13 09:39:04 +09:00
K. Lange
04b21aed13 mmu: Actually read multiboot mmap data 2021-09-12 22:40:29 +09:00
K. Lange
e87f09a1b4 piix4: move to module, only load in virtualbox 2021-09-09 12:22:30 +09:00
K. Lange
a941c3a20d pci: Implement PIIX4 PIRQ remapping 2021-09-06 21:03:00 +09:00
K. Lange
8a944f4a83 smp: Co-opt Multiboot's config_table member to sneak ACPI tables to kernel 2021-09-06 19:46:36 +09:00
K. Lange
3a08644de6 kernel: Higher resolution CpuPermille 2021-09-05 14:05:37 +09:00
K. Lange
f41c0717b5 kernel: Track relative CPU usage over one-second spans 2021-09-03 10:17:10 +09:00
K. Lange
efec80cb38 times: rudimentary support for process times 2021-09-02 23:08:18 +09:00
K. Lange
6eaeff3451 smp: Force userspace preemption on other cores. 2021-09-02 21:38:30 +09:00
K. Lange
1d4fbc41b3 kernel: Should not need to use temporary buffer for fxsave/rstr 2021-09-02 18:04:44 +09:00
K. Lange
a77d0ef85a smp: Memory invalidation fixes 2021-09-01 19:55:00 +09:00
K Lange
403b1ecfcb serial: should be owned by 'dialout' group 2021-08-31 22:40:49 +09:00
K. Lange
61b7444192 kernel: restore debug prints for a page fault in the kernel, since SMP failures are rare now 2021-08-20 17:14:40 +09:00
K. Lange
91efdaa9f7 xhci: convert to module 2021-08-08 16:37:19 +09:00
K. Lange
236c8bacb3 modules: Reimplement loadable kernel modules 2021-07-17 18:55:54 +09:00
K. Lange
8e4640e1d7 xhci: start on controller driver 2021-07-14 10:44:46 +09:00
K. Lange
a2d63a6125 ps2hid: Fixup initialization sequence; unbreaks scrollwheel in vbox 2021-07-08 18:46:04 +09:00
K. Lange
886d1afe9e net: various 2021-06-18 20:08:33 +09:00
K. Lange
2eb83c5ecd ps2hid: give up on PS/2 if trying to empty input buffer doesn't work after 1024 tries 2021-06-13 15:59:14 +09:00
K. Lange
698a3c0cb7 kernel: change signatures for vfs interfaces to match reality 2021-06-06 20:28:21 +09:00
K. Lange
5ed9033d15 kernel: opportunistically map stack space 2021-06-06 15:54:30 +09:00
K. Lange
d5f3a41675 i965: modeset a thinkpad 2021-06-03 21:02:09 +09:00
K. Lange
efe72fa8ab smp: do not try to send IPIs when we have one core and no lapic 2021-06-03 21:01:23 +09:00
K. Lange
6e3e7c7e0c ksym: start organizing kernel symbols for linking 2021-06-03 21:00:56 +09:00
K. Lange
afd23c0beb smp: ACPI checksups are more of a suggestion 2021-06-03 18:41:41 +09:00
K. Lange
e22d6d84a4 kernel: add 'assert()' 2021-06-02 18:35:03 +09:00
K. Lange
b0ca69afbb idt: Track core interrupt registers because arch_fatal() usually happens with bad stack data 2021-06-01 22:39:30 +09:00
K. Lange
839dda7d41 mmu: Try to perform really bad TLB shootdowns? 2021-06-01 22:37:54 +09:00
K. Lange
e9d34d669b mmu: be annoying about making sure we aren't leaking pages? 2021-06-01 22:36:54 +09:00
K. Lange
aa52db5018 smp: fix wakeups doing bad EOI write 2021-06-01 19:36:46 +09:00
K. Lange
b35f7ac8c9 misaka: initial merge 2021-05-31 10:54:11 +09:00