Commit Graph

  • 811179cc28 comment handler NMI and PF / reduce wait in NMI loop master jika 2023-06-03 17:19:02 +02:00
  • d1db3570ce good execution of nested nmi vandechat96 2023-05-26 15:04:53 +02:00
  • ab458968bb good nmi stack vandechat96 2023-05-25 16:38:31 +02:00
  • 42bee30d5b proper stack printing vandechat96 2023-05-24 22:40:25 +02:00
  • 217844a180 add print for debug/info vandechat96 2023-05-23 20:05:20 +02:00
  • 9e4c9544b5 tidy up for final version jika 2023-05-23 15:42:37 +02:00
  • eb1ae07e2b Some page fault handling / NMI nesting procedure jika 2023-05-16 18:20:51 +02:00
  • db916dd9d5 correct nmi handler / map page on pagefault (temp sol) vandechat96 2023-05-10 23:28:02 +02:00
  • 2f6e3c1187 print rsp in nmi / loop end fault page jika 2023-05-05 18:32:22 +02:00
  • fd31a78c01 add some code for linux like nmi handling vandechat96 2023-05-03 23:28:58 +02:00
  • 6013640ad7 test vandechat96 2023-03-31 15:45:45 +02:00
  • 42de1f3e9c Merge branch 'master' into 'master' Jeremy Soller 2023-03-14 15:25:59 +00:00
  • 295bcbdac8 Update redox_syscall Jeremy Soller 2023-03-14 09:25:17 -06:00
  • 32300c2d9e Add QEMU tip. Ribbon 2023-03-12 15:16:05 +00:00
  • 6fb14edcb0 Merge branch 'context-switch-optimization' into 'master' Jeremy Soller 2023-03-09 21:33:27 +00:00
  • 12688a929e Context switch optimization Jeremy Soller 2023-03-09 14:30:12 -07:00
  • 3bf381caf8 Do not panic if ACPI is not available Jeremy Soller 2023-03-03 18:56:23 -07:00
  • 11e6dd7b24 Merge branch 'master' into 'master' Jeremy Soller 2023-02-28 14:11:38 +00:00
  • f1b45f658f Improve text organization. Ribbon 2023-02-28 12:46:34 +00:00
  • 4b3337e479 Merge branch 'master' into 'master' Jeremy Soller 2023-02-28 12:27:09 +00:00
  • 2c593fb0b9 Move from CONTRIBUTING to kernel README. Ribbon 2023-02-28 08:10:33 +00:00
  • 12d5830097 Merge branch 'pin_kmain_contexts' into 'master' Jeremy Soller 2023-02-27 16:22:46 +00:00
  • b73922bc95 Also fix outdated-#![feature(...)] warnings. 4lDO2 2023-02-24 23:16:57 +01:00
  • ac913e49f9 Pin kmain contexts to corresponding CPUs. 4lDO2 2023-02-24 23:05:11 +01:00
  • 87e1689b56 Merge branch 'sched_affinity' into 'master' Jeremy Soller 2023-02-15 15:44:39 +00:00
  • 8d14d54fa9 Support scheduler CPU affinity. 4lDO2 2022-08-26 11:54:47 +02:00
  • cb58500b68 Update for new Rust Jeremy Soller 2023-02-11 14:50:55 -07:00
  • 55fd7dfff7 Add centiseconds to context time Jeremy Soller 2023-01-30 10:51:32 -07:00
  • e5c3be86cd Ensure unmounting is read from atomic in all cases Jeremy Soller 2023-01-12 07:33:54 -07:00
  • 85e0a7c368 Record mappings in funmap with page aligned size, always Jeremy Soller 2022-12-21 18:29:15 -07:00
  • 523d00eeac Make it possible to track syscall time when debugging Jeremy Soller 2022-12-19 10:11:59 -07:00
  • d298459686 Add sys:irq Jeremy Soller 2022-11-18 14:18:06 -07:00
  • 1e81c9d78b Fix compilation without ACPI feature Jeremy Soller 2022-11-16 13:53:04 -07:00
  • 111606ccdc Increase PIT divisor again to reduce wasted interrupt handling time Jeremy Soller 2022-11-15 11:50:23 -07:00
  • 33aa263deb Fixes for hpet counter read, choose better PIT divisor Jeremy Soller 2022-11-14 13:58:55 -07:00
  • 2052cc8cdc Allow arch to provide higher precision time Jeremy Soller 2022-11-14 11:12:44 -07:00
  • 31868077f0 Use u128 for time, store CPU time of processes Jeremy Soller 2022-11-14 10:10:17 -07:00
  • ee6c9f4020 Fix compilation on i686 Jeremy Soller 2022-11-11 13:23:07 -07:00
  • 8e0f54cb31 Clippy fixes Jeremy Soller 2022-11-11 13:19:14 -07:00
  • 515a03b870 Fix warnings Jeremy Soller 2022-11-11 12:51:07 -07:00
  • 6bef3afee6 Support bootloader stride Jeremy Soller 2022-09-16 12:29:38 -06:00
  • 3bef7d7bad Simplify ps2 interrupts to reduce latency to reading bytes Jeremy Soller 2022-09-08 10:33:31 -06:00
  • f5bdae2d0c Reduce schreduler time slices to reduce latency Jeremy Soller 2022-09-07 18:21:30 -06:00
  • 07ed93225e 0.3.4: Update syscall to matching version Jeremy Soller 2022-08-31 16:15:25 -06:00
  • 6753251af3 Do not allow mmap with page_count 0 Jeremy Soller 2022-08-31 16:14:27 -06:00
  • 21108d57fe Update syscall Jeremy Soller 2022-08-30 10:33:22 -06:00
  • 7fbe5112ca Allow physmap with unaligned size Jeremy Soller 2022-08-29 09:41:35 -06:00
  • 1b3c6a957d Add aarch64 debugger Jeremy Soller 2022-08-28 09:27:38 -06:00
  • 8d8437a5d3 Update rmm Jeremy Soller 2022-08-28 09:19:17 -06:00
  • 91b5d64c22 Use current address space for proc kfmap workaround Jeremy Soller 2022-08-27 18:05:20 -06:00
  • 2278fd7fe1 Workaround to ensure proc kfmap does not try to map kernel memory Jeremy Soller 2022-08-27 10:55:52 -06:00
  • 1fadde3ee8 Eliminate deadlock in capture_inner Jeremy Soller 2022-08-27 07:48:47 -06:00
  • 6f6648c4d2 Disable HPET use on x86 Jeremy Soller 2022-08-26 11:13:53 -06:00
  • 6dbb85d4c9 Static mapping of some CPU devices outside of physmap Jeremy Soller 2022-08-26 11:08:13 -06:00
  • 002425d625 Fix trampoline on x86 Jeremy Soller 2022-08-26 08:24:04 -06:00
  • 33b8fcecfb Sync x86_64 trampoline with bootloader Jeremy Soller 2022-08-26 08:08:24 -06:00
  • fb1bdf7c3e Ignore null bytes from pl011 uart Jeremy Soller 2022-08-25 20:10:35 -06:00
  • 6a3fc5a68a Send SIGSEGV on aarch64 exception Jeremy Soller 2022-08-25 20:00:53 -06:00
  • 80b8382cd7 Fix aarch64 kfx size Jeremy Soller 2022-08-25 18:40:19 -06:00
  • 82ac7a66f7 Only save preserved regs in aarch64 context switch Jeremy Soller 2022-08-25 18:23:51 -06:00
  • 52434b359c Disable building aarch64 asm Jeremy Soller 2022-08-25 18:12:43 -06:00
  • ff738074d2 Cleanup aarch64 code Jeremy Soller 2022-08-25 15:46:27 -06:00
  • afd82ba4bb Save/restore aarch64 FPU regs Jeremy Soller 2022-08-25 09:30:53 -06:00
  • 31680bf5b9 Do not set tpidr_el0 from kernel Jeremy Soller 2022-08-25 08:46:26 -06:00
  • b3b5bb8a91 Simplify handling of aarch64 env regs Jeremy Soller 2022-08-25 08:12:07 -06:00
  • f7e8026494 Set aarch64 thread pointers Jeremy Soller 2022-08-24 19:21:36 -06:00
  • 545a561a26 Set ptrace regs for aarch64 Jeremy Soller 2022-08-24 19:03:30 -06:00
  • 84704353af Support address space change on aarch64 Jeremy Soller 2022-08-24 18:54:42 -06:00
  • 6d3fa8b374 Enable clone_handler on aarch64 Jeremy Soller 2022-08-24 15:50:10 -06:00
  • b20a71113c Implement aarch64 switch_to_inner using naked function Jeremy Soller 2022-08-24 13:24:37 -06:00
  • fb34e4eddf Partially implement stack trace on aarch64 Jeremy Soller 2022-08-24 12:34:31 -06:00
  • 0ed9f03317 Use push/pop scratch for aarch64 signal handler Jeremy Soller 2022-08-24 12:29:48 -06:00
  • 613968dc30 Use push/pop scratch for x86 signal handler Jeremy Soller 2022-08-24 11:39:31 -06:00
  • 113a7164bb Use push/pup scratch for x86_64 signal handler Jeremy Soller 2022-08-24 11:11:50 -06:00
  • 310a0dda08 Some aarch64 register struct updates Jeremy Soller 2022-08-24 08:56:57 -06:00
  • bb12da2b68 Update syscall Jeremy Soller 2022-08-24 08:53:37 -06:00
  • 54d9d011aa Use framebuffer virtual address Jeremy Soller 2022-08-23 20:07:30 -06:00
  • 2b8af1cf07 Ignore areas outside 1GiB and combine memory areas on x86 Jeremy Soller 2022-08-23 15:41:29 -06:00
  • aa51e9812d Use PAT flags on x86 Jeremy Soller 2022-08-22 19:54:14 -06:00
  • f3e23af9ec Update rmm Jeremy Soller 2022-08-22 18:49:42 -06:00
  • 06d952979f Implement debugger for x86 Jeremy Soller 2022-08-22 08:41:35 -06:00
  • 58104649db Set limits for x86 GDT entries Jeremy Soller 2022-08-21 14:56:59 -06:00
  • 538ad9e57f Remove debug message when writing x86 EnvRegisters Jeremy Soller 2022-08-21 13:22:58 -06:00
  • d3fbbd5918 Pre-allocate x86 kernel PD entries Jeremy Soller 2022-08-21 13:21:59 -06:00
  • bdba700c21 Disable syscall debugging Jeremy Soller 2022-08-20 21:52:09 -06:00
  • 76a46c54b8 Fix stack selector on x86 Jeremy Soller 2022-08-20 21:51:21 -06:00
  • c750ee26a8 Implement setting FS/GS offset on x86 Jeremy Soller 2022-08-20 21:21:32 -06:00
  • 01e4bc899e Fix compilation on x86 Jeremy Soller 2022-08-20 18:11:57 -06:00
  • d3f42989c9 Fix compilation on x86_64 Jeremy Soller 2022-08-20 14:51:05 -06:00
  • 9dd069c8ca Support proc partially with aarch64 Jeremy Soller 2022-08-20 14:45:45 -06:00
  • 9b8abfc5d7 Copy exception handlers from early_init Jeremy Soller 2022-08-20 13:48:13 -06:00
  • 44d5e6573a Updated utable switching code for aarch64 Jeremy Soller 2022-08-20 13:31:20 -06:00
  • fe7def2797 Update to use TableKind on x86_64 Jeremy Soller 2022-08-20 13:16:23 -06:00
  • 01df1c20da Use TableKind everywhere Jeremy Soller 2022-08-20 13:06:52 -06:00
  • 3911fc616a Update rmm Jeremy Soller 2022-08-20 13:01:01 -06:00
  • 849b854bd0 Implement usermode for aarch64 Jeremy Soller 2022-08-20 09:34:12 -06:00
  • c7e5466bd7 Fix aarch64 switch_to_inner functino definition Jeremy Soller 2022-08-20 09:15:26 -06:00
  • 157dbc7b4d Convert aarch64 context switching to asm macro Jeremy Soller 2022-08-20 09:08:14 -06:00
  • 9ca2484079 Get aarch64 kernel to boot to the point of needing context switch Jeremy Soller 2022-08-19 21:40:04 -06:00
  • 82ad6e2fa7 Remove devmap region from aarch64, use physmap instead Jeremy Soller 2022-08-19 21:01:10 -06:00