4lDO2
de23cd447e
Fix aarch64 build.
2023-08-08 12:01:43 +02:00
4lDO2
2070fa44b7
Fix warnings.
2023-08-02 13:07:49 +02:00
4lDO2
ec9c24f841
WIP: aarch64
2023-07-27 19:05:33 +02:00
4lDO2
d58ddc35fe
Complete PageInfo cleanup.
...
This enables proper CoW ^ shared enforcement, so that e.g. acquiring a
new CoW page from already shared memory, or vice versa, will enforce
that they aren't both simultaneously.
2023-07-25 10:52:23 +02:00
4lDO2
70b4d99c96
Implement MAP_FIXED without MAP_FIXED_NOREPLACE.
2023-07-25 10:52:23 +02:00
4lDO2
490e1b2777
WIP: Track grant ownership.
2023-07-25 10:52:18 +02:00
4lDO2
34b4512dbd
Refactor Grants.
...
Page alignment is now verified at compile time, for example.
2023-07-25 10:52:13 +02:00
4lDO2
37eb577ada
Support physmap via memory:physical@<mem type>.
2023-07-15 00:28:56 +02:00
4lDO2
56f88e80c2
Usercopy migration
2023-07-06 13:03:21 +00:00
uuuvn
63290429b2
Improve aarch64 code + memory management and crush some bugs
2023-06-12 14:46:02 +00:00
Jeremy Soller
7fbe5112ca
Allow physmap with unaligned size
2022-08-29 09:41:35 -06:00
Jeremy Soller
aa51e9812d
Use PAT flags on x86
2022-08-22 19:54:14 -06:00
Jeremy Soller
6b2439f1b9
Improved 32-bit x86 support
2022-08-18 14:57:15 -06:00
Jeremy Soller
0c80643077
Make graphical_debug arch independent and fix lots of warnings
2022-07-29 15:56:44 -06:00
Jeremy Soller
4d1c41232b
Support inner_physmap on 32-bit systems
2022-07-29 09:27:54 -06:00
4lDO2
99362f98d2
Add a better interface for modifying addrspaces.
2022-07-27 10:52:52 +02:00
4lDO2
5bbfdcda6b
Add mmap-min-addr and support unmapping parent PTs.
2022-07-27 10:52:45 +02:00
4lDO2
c912d9e0db
Partial: migrate syscall handling code to RMM.
2022-07-27 10:52:23 +02:00
4lDO2
283ada82a0
WIP: Remove SYS_CLONE (to be done in userspace).
2022-07-27 10:52:03 +02:00
4lDO2
15b029de36
Fix everything all the way to booting to desktop.
2022-07-27 10:51:45 +02:00
Jeremy Soller
d3cf4db47b
Prerequisites for risv64 support
2021-05-12 20:23:53 -06:00
Jeremy Soller
8d61c79b23
Use RMM TableKind and fix x86_64 compilation
2021-05-03 21:15:46 -06:00
Jeremy Soller
2aa4d8caf5
Merge remote-tracking branch 'origin/aarch64-rebase' into riscv64
2021-05-03 20:52:59 -06:00
Jeremy Soller
b9448274fc
Switch to using RMM PageFlags
2021-05-03 17:28:08 -06:00
Jeremy Soller
8fcd375bd9
Switch Context::grants to RwLock
2021-04-28 20:04:27 -06:00
Jeremy Soller
c19bd573b5
Switch Context::grants to RwLock
2021-02-13 13:06:13 -07:00
Robin Randhawa
ae3a55f5d1
Introduce a PageTableType enum to help distinguish User and Kernel Tables
2021-01-15 09:12:30 -07:00
Robin Randhawa
02c37d3fae
WIP: aarch64 rebase
2021-01-15 05:54:42 -07:00
Jeremy Soller
334584b3d5
Use rmm::PhysicalAddress and rmm::VirtualAddress directly
2021-01-09 21:16:11 -07:00
Jeremy Soller
f5ac405db6
Support for RMM
2020-11-27 16:49:39 +00:00
jD91mZM2
a811774c58
Add necessary functions for funmap2
2020-07-23 16:45:35 +02:00
jD91mZM2
ccc577b3a1
Abstract over finding nice addresses
2020-07-23 11:22:54 +02:00
jD91mZM2
57c167d2fa
Make grants be a BTreeSet
2020-07-22 15:09:28 +02:00
jD91mZM2
fbdfcd2ba0
WIP: Rewrite interrupts as global assembly
...
Because the way we were using inline assembly was technically incorrect
and breaking the laws of rust
This *finally* compiles. That doesn't mean it works!
2020-07-11 16:15:25 +02:00
4lDO2
003bd6a0d2
More complex physalloc
2020-06-16 21:20:00 +00:00
jD91mZM2
538ca49ee2
Suggestion: Switch to bitflags
2019-07-26 12:23:21 +02:00
jD91mZM2
6fbb4fbae1
Ptrace memory reading and floating point registers support
2019-07-07 17:07:04 +00:00
Jeremy Soller
788526a3b3
Bare-bones ptracing functionality
...
Since even a very basic ptrace can be nice to have, I thought I would split
the, perhaps rather big, ptrace project up in multiple PRs to make as few
changes as necessary in each. This PR contains the initial registry modifying
bits and only a very basic security measure. Letting this out to the community
should be good for spotting bugs and maybe getting some hype ;)
2019-07-02 07:38:26 -06:00
Jeremy Soller
45ea634798
Revert "Merge branch 'ptrace' into 'master'"
...
This reverts merge request !103
2019-07-02 11:56:11 +00:00
jD91mZM2
effe02bd45
Remove change I am faaairly certain I did NOT add :O
...
I'm guessing it's some issue after a rebase or something...
2019-07-01 22:50:19 +00:00
jD91mZM2
fe705d9b63
Switch to 2018 edition
...
Most of this was generated by the absolutely extraordinary `cargo fix`
subcommand. There were still 2 errors and a few warnings to patch up,
but compared to the normal 600+ errors, I'd say the fixer did a damn
good job! I'm also amazed that I could still start the VM after this,
I half expected some kinds of runtime failure...
2019-06-21 12:12:01 +02:00
Jeremy Soller
58f9e5a801
0.1.54 - Add support for cache disable
2019-04-08 17:57:25 -06:00
Jeremy Soller
a31af81f8b
Update fmap support
2018-12-28 15:35:21 -07:00
jD91mZM2
55f2303d2c
Implement fmap for memory:
2018-07-05 14:17:58 +02:00
Gabriel Majeri
305e7980d8
Update to bitflags 1.0
2017-10-11 15:59:14 +03:00
Jeremy Soller
4ae6ed9d4c
Pass syscall data to syscall, implement iopl
2017-07-19 14:51:12 -06:00
Jeremy Soller
2087544ea7
Move all files to src
2017-04-03 21:47:01 -06:00
Jeremy Soller
0c8ba636f4
Cleanup Redox repo, update Rust, remove old target
2017-01-03 15:55:00 -07:00