Commit Graph

95 Commits

Author SHA1 Message Date
Darley Barreto 66ea2b46ee Adding openat syscall 2025-07-13 06:43:20 -06:00
bjorn3 7a440bcd67 Merge close and on_close scheme calls 2025-07-05 16:59:08 +02:00
Jeremy Soller d712ff5158 Add flink 2025-05-03 12:25:46 -06:00
4lDO2 ce77a018ec Reach init again, with proc mgr. 2025-04-19 16:30:46 +02:00
4lDO2 a9fb2dcb93 Simplify proc scheme security. 2025-04-19 16:30:46 +02:00
4lDO2 5d41cd7c53 Remove unimplemented itimer scheme. 2025-04-13 18:13:00 +02:00
Jacob Lorentzon 4607576006 Implement bidirectional SYS_CALL support 2025-03-03 23:21:56 +00:00
4lDO2 7295777985 Add one-way close message for schemes. 2025-02-21 15:56:05 +01:00
Jeremy Soller 34a6a441f1 Initial aarch64 ACPI support 2024-10-30 16:16:24 -06:00
Andrey Turkin db32f5f7a3 Move some conditionally compiled code from common files into arch-gated files 2024-10-19 21:59:14 +03:00
Andrey Turkin 55041e2eeb Use a custom config flag to conditionally compile DTB-specific areas
Would be great if we could use a feature instead, but Cargo can't do target-specific defaults features
2024-10-19 21:03:43 +03:00
4lDO2 e3e05ebca8 Fix root scheme order by using indexmap (tmp). 2024-09-11 22:09:29 +02:00
4lDO2 97f60de4ef WIP: Add getdents opaque_id 2024-09-11 22:09:29 +02:00
4lDO2 339271b4d7 Add getdents syscall, and switch schemes to it. 2024-09-11 22:09:26 +02:00
4lDO2 d94baa2712 Run rustfmt. 2024-07-15 17:50:18 +02:00
4lDO2 5e7db80285 Fix a bunch of warnings. 2024-07-15 17:48:45 +02:00
Jacob Lorentzon bf0fc66ac1 Improved scheme protocol. 2024-06-14 11:31:51 +00:00
4lDO2 12282439b6 Reduce dead code, fix aarch64. 2024-03-23 23:51:12 +01:00
4lDO2 156017a25d Refactor: wrap RwLock<AddrSpace>. 2024-03-04 19:03:00 +01:00
Jeremy Soller 45f1c4e29e Add rustfmt from relibc and apply it with cargo fmt 2024-01-17 13:52:01 -07:00
Ivan Tan ebf96fa843 aarch64: fix dtb scheme 2023-12-14 03:34:37 +00:00
bjorn3 2d065083df Use HashMap instead of BTreeMap where possible
This shrinks the kernel from 905840 bytes to 862408 bytes.
2023-12-13 19:55:20 +01:00
4lDO2 78beae5c92 Fix aarch64 2023-12-13 11:08:12 +01:00
4lDO2 88508a2cb7 Remove as_user_inner. 2023-12-13 11:08:12 +01:00
4lDO2 3a35338aa7 Remove as_{filetable,sigaction,addrspace}. 2023-12-13 11:08:12 +01:00
4lDO2 f3ce5b167d Make proc: and thisproc: global. 2023-12-13 11:08:11 +01:00
4lDO2 3be015ce4d Make sys: global. 2023-12-13 11:08:11 +01:00
4lDO2 fe0e3103f4 Make itimer: global. 2023-12-13 11:08:11 +01:00
4lDO2 87b0c568a0 Make time: global. 2023-12-13 11:08:11 +01:00
4lDO2 f6002e839d Centralize global scheme constructors. 2023-12-13 11:08:11 +01:00
4lDO2 ce313ba28d Add global scheme IDs to map, for now. 2023-12-13 11:08:11 +01:00
4lDO2 d9c2443ae3 Make irq: a GlobalScheme. 2023-12-13 11:08:11 +01:00
4lDO2 10e86ea89d Hardcode global scheme IDs. 2023-12-13 11:08:11 +01:00
4lDO2 679c26c03b s/Arc<dyn KernelScheme>/enum, but deref as dyn. 2023-12-13 11:08:07 +01:00
bjorn3 017702d3d2 Remove a lot of dead code 2023-12-12 15:01:29 +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
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
Ivan Tan eb0d48ac81 aarch64: add dtb scheme 2023-09-18 20:45:23 +00:00
4lDO2 6d65a93606 Remove live scheme. 2023-09-08 01:57:34 +00: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 3cfec39b47 Pass MunmapFlags to scheme. 2023-07-25 10:52:24 +02:00
4lDO2 55f1829e77 Call funmap if applicable. 2023-07-25 10:52:22 +02:00
4lDO2 ad78dcc5a1 WIP: Rudimentary MAP_SHARED fmap implementation. 2023-07-25 10:52:21 +02:00
4lDO2 56f88e80c2 Usercopy migration 2023-07-06 13:03:21 +00:00
4lDO2 5abf16a51e Improved pipe scheme. 2023-06-26 13:54:13 +02:00
4lDO2 b1d4f55e0a Use kopen and kdup in syscall handlers. 2023-06-02 14:50:44 +02:00