Commit Graph

941 Commits

Author SHA1 Message Date
Jeremy Soller cb58500b68 Update for new Rust 2023-02-11 14:50:55 -07:00
Jeremy Soller 55fd7dfff7 Add centiseconds to context time 2023-01-30 10:51:32 -07:00
Jeremy Soller e5c3be86cd Ensure unmounting is read from atomic in all cases 2023-01-12 07:33:54 -07:00
Jeremy Soller 85e0a7c368 Record mappings in funmap with page aligned size, always 2022-12-21 18:29:15 -07:00
Jeremy Soller 523d00eeac Make it possible to track syscall time when debugging 2022-12-19 10:11:59 -07:00
Jeremy Soller d298459686 Add sys:irq 2022-11-18 14:18:06 -07:00
Jeremy Soller 1e81c9d78b Fix compilation without ACPI feature 2022-11-16 13:53:04 -07:00
Jeremy Soller 111606ccdc Increase PIT divisor again to reduce wasted interrupt handling time 2022-11-15 11:50:23 -07:00
Jeremy Soller 33aa263deb Fixes for hpet counter read, choose better PIT divisor 2022-11-14 13:58:55 -07:00
Jeremy Soller 2052cc8cdc Allow arch to provide higher precision time 2022-11-14 11:12:44 -07:00
Jeremy Soller 31868077f0 Use u128 for time, store CPU time of processes 2022-11-14 10:10:17 -07:00
Jeremy Soller ee6c9f4020 Fix compilation on i686 2022-11-11 13:23:07 -07:00
Jeremy Soller 8e0f54cb31 Clippy fixes 2022-11-11 13:19:14 -07:00
Jeremy Soller 515a03b870 Fix warnings 2022-11-11 12:51:07 -07:00
Jeremy Soller 6bef3afee6 Support bootloader stride 2022-09-16 12:29:38 -06:00
Jeremy Soller 3bef7d7bad Simplify ps2 interrupts to reduce latency to reading bytes 2022-09-08 10:33:31 -06:00
Jeremy Soller f5bdae2d0c Reduce schreduler time slices to reduce latency 2022-09-07 18:21:30 -06:00
Jeremy Soller 6753251af3 Do not allow mmap with page_count 0 2022-08-31 16:14:27 -06:00
Jeremy Soller 7fbe5112ca Allow physmap with unaligned size 2022-08-29 09:41:35 -06:00
Jeremy Soller 1b3c6a957d Add aarch64 debugger 2022-08-28 09:27:38 -06:00
Jeremy Soller 91b5d64c22 Use current address space for proc kfmap workaround 2022-08-27 18:05:20 -06:00
Jeremy Soller 2278fd7fe1 Workaround to ensure proc kfmap does not try to map kernel memory 2022-08-27 10:55:52 -06:00
Jeremy Soller 1fadde3ee8 Eliminate deadlock in capture_inner 2022-08-27 07:48:47 -06:00
Jeremy Soller 6f6648c4d2 Disable HPET use on x86 2022-08-26 11:13:53 -06:00
Jeremy Soller 6dbb85d4c9 Static mapping of some CPU devices outside of physmap 2022-08-26 11:08:13 -06:00
Jeremy Soller 002425d625 Fix trampoline on x86 2022-08-26 08:24:04 -06:00
Jeremy Soller 33b8fcecfb Sync x86_64 trampoline with bootloader 2022-08-26 08:08:24 -06:00
Jeremy Soller fb1bdf7c3e Ignore null bytes from pl011 uart 2022-08-25 20:10:35 -06:00
Jeremy Soller 6a3fc5a68a Send SIGSEGV on aarch64 exception 2022-08-25 20:00:53 -06:00
Jeremy Soller 80b8382cd7 Fix aarch64 kfx size 2022-08-25 18:40:19 -06:00
Jeremy Soller 82ac7a66f7 Only save preserved regs in aarch64 context switch 2022-08-25 18:23:51 -06:00
Jeremy Soller ff738074d2 Cleanup aarch64 code 2022-08-25 15:46:27 -06:00
Jeremy Soller afd82ba4bb Save/restore aarch64 FPU regs 2022-08-25 09:30:53 -06:00
Jeremy Soller 31680bf5b9 Do not set tpidr_el0 from kernel 2022-08-25 08:46:26 -06:00
Jeremy Soller b3b5bb8a91 Simplify handling of aarch64 env regs 2022-08-25 08:12:07 -06:00
Jeremy Soller f7e8026494 Set aarch64 thread pointers 2022-08-24 19:21:36 -06:00
Jeremy Soller 545a561a26 Set ptrace regs for aarch64 2022-08-24 19:03:30 -06:00
Jeremy Soller 84704353af Support address space change on aarch64 2022-08-24 18:54:42 -06:00
Jeremy Soller 6d3fa8b374 Enable clone_handler on aarch64 2022-08-24 15:50:10 -06:00
Jeremy Soller b20a71113c Implement aarch64 switch_to_inner using naked function 2022-08-24 13:24:37 -06:00
Jeremy Soller fb34e4eddf Partially implement stack trace on aarch64 2022-08-24 12:34:31 -06:00
Jeremy Soller 0ed9f03317 Use push/pop scratch for aarch64 signal handler 2022-08-24 12:29:48 -06:00
Jeremy Soller 613968dc30 Use push/pop scratch for x86 signal handler 2022-08-24 11:39:31 -06:00
Jeremy Soller 113a7164bb Use push/pup scratch for x86_64 signal handler 2022-08-24 11:11:50 -06:00
Jeremy Soller 310a0dda08 Some aarch64 register struct updates 2022-08-24 08:56:57 -06:00
Jeremy Soller 54d9d011aa Use framebuffer virtual address 2022-08-23 20:07:30 -06:00
Jeremy Soller 2b8af1cf07 Ignore areas outside 1GiB and combine memory areas on x86 2022-08-23 15:41:29 -06:00
Jeremy Soller aa51e9812d Use PAT flags on x86 2022-08-22 19:54:14 -06:00
Jeremy Soller 06d952979f Implement debugger for x86 2022-08-22 08:41:35 -06:00
Jeremy Soller 58104649db Set limits for x86 GDT entries 2022-08-21 14:56:59 -06:00