Commit Graph

1656 Commits

Author SHA1 Message Date
Ivan Tan bfbf435546 draft: aarch64: add irq_bcm2835. Need refactoring 2023-12-11 16:07:53 +00:00
Ivan Tan 9a5b9798ca remove qemu-aarch64-virt hard code 2023-12-11 16:07:53 +00:00
Ivan Tan ed68c98b42 aarch64: add irq-bcm2836 for raspi3b+ && refactor irq module 2023-12-11 16:07:53 +00:00
Ivan Tan b65a7e9103 move gic into irqchip module 2023-12-11 16:07:53 +00:00
Ivan Tan 01d0e9a4b5 aarch64: add irqchip module to initialize all irq chip. 2023-12-11 16:07:53 +00:00
Ivan Tan 78a8568932 update dtb syscall scheme to kernelscheme 2023-12-11 16:07:53 +00:00
Ribbon 4f98319a92 Improve the README and fix the docs badge link 2023-12-07 15:32:45 +00:00
Ron Williams 02087065c1 don't panic when adding an existing name to a namespace 2023-11-15 22:18:50 +00:00
4lDO2 036a4bdee4 Replace syscall::Scheme with KernelScheme. 2023-11-15 20:00:47 +01:00
4lDO2 192d663d84 Forbid / in scheme names. 2023-11-09 14:40:20 +01:00
Ron Williams 29803e7865 setrens: always ignore -1 2023-11-08 23:29:08 -08:00
4lDO2 431dba9563 Update syscall 2023-10-19 17:07:17 +02:00
4lDO2 2d04b76a2c Close sendfd file descriptor unless consumed. 2023-10-14 15:38:21 +02:00
4lDO2 2f2e76c0ca Inform SYS_SENDFD scheme if the fd was exclusive. 2023-10-14 14:56:40 +02:00
4lDO2 1546a4a08f Implement SYS_SENDFD and SKMSG_FOBTAINFD. 2023-10-14 12:44:38 +02:00
4lDO2 da491fd5fc Disable sys:trigger_debugger by default. 2023-10-08 11:21:59 +02:00
4lDO2 6f6f69c728 Fix test instruction reg length in paranoid swapgs. 2023-10-08 11:21:23 +02:00
bjorn3 d819277d56 Make rustc directly invoke the linker 2023-10-03 09:53:37 +02:00
bjorn3 b9299224ea Move debuginfo option to Cargo.toml 2023-10-03 09:39:14 +02:00
Enver Balalic 750e566a27 Get aarch64 to compile
Fixes enough errors to get the kernel to compile
2023-10-01 23:55:24 +02:00
4lDO2 c481f6b5d4 Track state for all UserScheme calls. 2023-09-30 12:53:37 +02:00
Jeremy Soller e794f2fe9b Fix panic when there is no xsave support 2023-09-18 15:01:39 -06:00
Ivan Tan eb0d48ac81 aarch64: add dtb scheme 2023-09-18 20:45:23 +00:00
Ivan Tan a76cbc9f31 aarch64: trap msr, mrs or system instruction 2023-09-18 20:45:23 +00:00
4lDO2 5eace9997a Compile successfully on i686 as well. 2023-09-16 10:48:25 +02:00
4lDO2 0b9c5bbf49 Pass both original and padded length in altrelocs. 2023-09-16 10:33:09 +02:00
4lDO2 ed3d2d7832 Allow disabling overwrite-based optimizations. 2023-09-14 16:44:12 +02:00
4lDO2 ce0d474cb9 Fail if a feature is force-enabled but unsupported. 2023-09-14 16:28:14 +02:00
4lDO2 dfc372d241 Replace with rdgsbase dynamically in paranoid ISRs. 2023-09-14 14:43:46 +02:00
4lDO2 d90aeef62e Fix nop-filling code. 2023-09-14 14:34:04 +02:00
4lDO2 dde8f78903 Support XSAVE, XSAVEOPT, and AVX2. 2023-09-14 10:54:30 +02:00
4lDO2 38e669c807 Dynamic fsgsbase support, enable by default. 2023-09-14 09:25:30 +02:00
4lDO2 f581c71c7c Allow code-overwriting optimizations, use for smap. 2023-09-14 08:38:49 +02:00
4lDO2 dd30ae109a Ensure altcode/data/features sections are kept. 2023-09-14 08:38:08 +02:00
4lDO2 e005619b78 Add alternative! macro. 2023-09-12 21:43:37 +02:00
4lDO2 f028b77412 Use config.toml instead of x86_* Cargo feature. 2023-09-12 21:19:06 +02:00
4lDO2 c210e59a75 Add a config.toml to the kernel. 2023-09-12 21:13:58 +02:00
4lDO2 9fd2488d64 Use a compact push+jump table for IRQs. 2023-09-10 21:42:02 +02:00
Jeremy Soller 5c4961d139 Update Cargo.lock 2023-09-09 12:31:14 -06:00
Jeremy Soller 4cd76ea9e3 arch/x86: sync LogicalCpuId changes 2023-09-09 12:31:04 -06:00
Jeremy Soller a4d0960b3f Update redox syscall 2023-09-08 11:16:53 -06:00
4lDO2 6d65a93606 Remove live scheme. 2023-09-08 01:57:34 +00:00
Jeremy Soller 40a3601ca5 Update syscall 2023-09-07 16:17:57 -06:00
4lDO2 eeb0d8c1e6 Unify Interrupt{,Error}Stack. 2023-09-06 22:45:29 +02:00
4lDO2 c4a5abb34a Remove AtomicSchemeId. 2023-09-06 09:22:59 +02:00
4lDO2 126c7b7d8a Pass scheme ID to UserInner cleaner. 2023-09-06 09:21:53 +02:00
4lDO2 0d4f3125cd Use Once<SchemeId> for debug:, simplify other Once. 2023-09-06 08:58:59 +02:00
4lDO2 27d350955a Replace atomic with Once<SchemeId> for irq: 2023-09-06 08:49:37 +02:00
4lDO2 2862f7abb5 Once<SchemeId> for serio, simplify queue globals. 2023-09-06 08:48:22 +02:00
4lDO2 16cb32b178 Make WaitQueue::new() const fn. 2023-09-06 08:47:52 +02:00