Robin Randhawa
ae0aebd036
aarch64: clone: Return from clone syscall
...
No CLONE_STACK functionality yet.
2021-01-17 10:12:42 +00:00
Robin Randhawa
67ec6c23e7
aarch64: Move tpidr_el0 setup from spawn to switch
2021-01-17 10:09:03 +00:00
Robin Randhawa
67d72532a9
aarch64: usermode: Remove tpidr_el0 manipulation
...
Was using the incorrect USER_TLS_OFFSET instead of USER_TCB_OFFSET. In
any case, this is better done in process::clone.
2021-01-17 10:06:04 +00:00
Robin Randhawa
3585f620b0
aarch64: clone: Fix incorrect stack offset in clone_ret
2021-01-17 10:03:50 +00:00
Robin Randhawa
208fb681f4
aarch64: vectors: Manage unhandled exceptions
...
So we can more clearly see when things go wrong.
2021-01-17 10:01:34 +00:00
Jeremy Soller
17fd135017
Merge branch 'pagetabletype-and-misc-fixes' into 'aarch64-rebase'
...
Pagetabletype and misc fixes
See merge request redox-os/kernel!158
2021-01-15 19:50:13 +00:00
Robin Randhawa
5bc9dea242
aarch64: context::switch: update the CONTEXT_SWITCH_LOCK
2021-01-15 19:03:42 +00:00
Robin Randhawa
6677cfbf1e
aarch64: Make interrupt::pause use nop so we can move ahead before interrupts are enabled
2021-01-15 19:02:43 +00:00
Robin Randhawa
825bc4a02d
aarch64: spawn: split out arch specific mods
2021-01-15 09:12:30 -07:00
Robin Randhawa
14d79927af
aarch64: Add a set_tcb method to setup tpidr_el0
2021-01-15 09:12:30 -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
76129ddf75
aarch64: Mirror PRESENT and VALID bits in Page and Table descriptors
2021-01-15 15:54:25 +00:00
Robin Randhawa
c5e077546a
aarch64: spawn: split out arch specific mods
2021-01-15 15:51:47 +00:00
Robin Randhawa
e0a7471cf8
aarch64: Add a set_tcb method to setup tpidr_el0
2021-01-15 15:50:00 +00:00
Robin Randhawa
9c3f6e3660
Introduce a PageTableType enum to help distinguish User and Kernel Tables
2021-01-15 15:49:04 +00:00
Jeremy Soller
bdea7f553a
Remove PRESENT flag from aarch64 descriptors
2021-01-15 06:57:02 -07:00
Jeremy Soller
5f8b004476
Fix typo in InterruptStack parameter
2021-01-15 06:56:36 -07:00
Robin Randhawa
02c37d3fae
WIP: aarch64 rebase
2021-01-15 05:54:42 -07:00
Jeremy Soller
6c4c19a95c
Move consts to arch
2021-01-12 19:57:42 -07:00
Jeremy Soller
ea6b1e7f8b
Update redox_syscall to 0.2.4
2021-01-11 07:01:05 -07:00
Jeremy Soller
334584b3d5
Use rmm::PhysicalAddress and rmm::VirtualAddress directly
2021-01-09 21:16:11 -07:00
Jeremy Soller
ccddabadf7
Make x86 specific dependencies, x86 specific
2021-01-09 20:12:59 -07:00
Jeremy Soller
e771e6a4d9
Reduce duplication in context::switch
2020-12-27 20:03:13 -07:00
Jeremy Soller
9033902830
Better messaging about which timer is used
2020-12-23 10:33:09 -07:00
Jeremy Soller
04cc8a2d9c
Simplify reserved memory hack
2020-12-23 09:55:03 -07:00
Jeremy Soller
7355ae1671
Hack to ensure kernel is mapped even if it uses reserved memory
2020-12-23 09:46:34 -07:00
Jeremy Soller
f5ac405db6
Support for RMM
2020-11-27 16:49:39 +00:00
Jeremy Soller
afa175f778
Merge branch 'jD91mZM2/kernel-remove-brk' into HEAD
2020-08-27 10:26:29 -06:00
Jeremy Soller
1baeb5a891
Format memory entries using hex
2020-08-27 09:43:39 -06:00
Jeremy Soller
45b48f8078
Merge branch 'fix-deprecate' into 'master'
...
Fix printing of deprecation warning
See merge request redox-os/kernel!151
2020-08-27 15:33:12 +00:00
Jeremy Soller
853b77e3a4
Unmap owned grants, use owned grants to calculate memory usage
2020-08-25 10:35:55 -06:00
jD91mZM2
5fc6acacc4
Fix printing of deprecation warning
2020-08-17 15:25:14 +02:00
Aaron Janse
dc6132dc06
elaborate error message for initfs chdir failure
2020-08-17 03:24:56 -07:00
Aaron Janse
dfcf5be778
use logging instead of println
2020-08-17 02:55:40 -07:00
jD91mZM2
922b3d0437
Remove brk
2020-08-15 17:36:50 +02:00
jD91mZM2
da7b813fa9
Investigate why user heap isn't mapped
...
Took me way too long to spot this :D
2020-08-15 17:22:34 +02:00
jD91mZM2
78e5c71103
Deprecate the original fmap/funmap
...
The cool thing here is that we're temporarily binary compatible with the
old stuff, so if anyone would use an old version of redox_syscall we can
easily find them with these prints.
2020-08-14 15:18:47 +02:00
Jeremy Soller
2057b889ae
Merge branch 'log_experiment' into 'master'
...
Log experiment
See merge request redox-os/kernel!144
2020-08-09 13:01:39 +00:00
Wren Turkal
4c009530a8
Make x86_64 log writer not use println!.
...
This opens the door to completely elimnating println! usage from the
kernel.
Signed-off-by: Wren Turkal <wt@penguintechs.org >
2020-08-09 00:00:26 -07:00
Wren Turkal
5301057324
Convert some println -> log::info!.
...
Signed-off-by: Wren Turkal <wt@penguintechs.org >
2020-08-08 21:18:18 -07:00
Wren Turkal
dafd2e9f98
Add a way to customize how logging is done.
...
Each architecture may have a different method to enable logging. Now
that can be customized with a function passed to the init_logger
function.
Also, provide a minimal x86_64 implementation.
This is the first commit where you can see logging coming from the log
crate.
Signed-off-by: Wren Turkal <wt@penguintechs.org >
2020-08-08 21:18:15 -07:00
Wren Turkal
29a9592e7b
Re-export log::set_max_level.
...
Signed-off-by: Wren Turkal <wt@penguintechs.org >
2020-08-08 20:50:55 -07:00
Wren Turkal
50675842af
Add logger init and initialize on x86_64.
...
Signed-off-by: Wren Turkal <wt@penguintechs.org >
2020-08-08 20:50:53 -07:00
Wren Turkal
03e60f7da6
Add log crate and add a generic logger.
...
This is the first step of integrating the log crate as the main way to
log messages from the kernel.
Also, reexport all log macros. This module should eventually be the
only logging API used in the kernel.
Signed-off-by: Wren Turkal <wt@penguintechs.org >
2020-08-08 20:48:41 -07:00
Jeremy Soller
d8a0a8182d
Merge branch 'add_debug_to_structs' into 'master'
...
Implement Debug for a couple structs.
See merge request redox-os/kernel!142
2020-08-08 12:55:53 +00:00
Jeremy Soller
ad6035c7de
Merge branch 'idiomatic-rust' into 'master'
...
Replace llvm_asm with asm
See merge request redox-os/kernel!141
2020-08-03 15:09:08 +00:00
Wren Turkal
efb5b47463
Implement Debug for a couple structs.
...
I am finding it useful to be able to pretty print Mappers and
ActivePageTable structs.
Signed-off-by: Wren Turkal <wt@penguintechs.org >
2020-08-02 22:13:24 -07:00
Jeremy Soller
1a8f47330e
Add a message when user heap is not mapped, do not panic
2020-08-02 17:07:57 -06:00
Jeremy Soller
ec1809e7c0
Add memory: to null namespace, temporarily
2020-08-02 17:05:17 -06:00
Jeremy Soller
6f3094cb2b
Work around unmapping user heap
2020-08-02 16:33:56 -06:00