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
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
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
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
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
6f3094cb2b
Work around unmapping user heap
2020-08-02 16:33:56 -06:00
jD91mZM2
f07603902d
Replace all llvm_asm! uses with asm!
2020-08-01 14:56:46 +02:00
jD91mZM2
93856b43b9
s/\basm!/llvm_asm!/g
2020-08-01 12:31:56 +02:00
Jeremy Soller
854149ee97
Support for debugging to system76 EC
2020-07-19 10:24:15 -06:00
jD91mZM2
615e516585
Add extra assembler metadata
2020-07-16 17:13:30 +02:00
jD91mZM2
11f26140f5
Fix most MR concerns
2020-07-16 16:59:58 +02:00
jD91mZM2
895a4a5656
Deprecate int 0x80
...
Mainly because I think the code could be cleaner if we can remove
support entirely :)
2020-07-16 16:33:25 +02:00
jD91mZM2
4fbe86a9ce
Fix random userspace page faults
...
I was an idiot and forgot rbx wasn't always backed up. As a result, we
should never ever write to it
2020-07-16 16:32:48 +02:00
jD91mZM2
acebd1a8d1
Merge remote-tracking branch 'origin/master' into global-asm
2020-07-16 15:35:42 +02:00
jD91mZM2
b00456dbb9
WIP: Continue trying to fix clone_ret
2020-07-16 13:46:53 +02:00
Jeremy Soller
1e44f157d0
Fix graphical_debug feature
2020-07-15 16:10:51 -06:00
jD91mZM2
145c1898be
Merge branch 'master' into global-asm
2020-07-15 12:05:34 +02:00
jD91mZM2
3bb234009a
WIP: Ensure clone_ret correctness
2020-07-15 11:43:17 +02:00
Jeremy Soller
93303af931
Merge branch 'catch-kernel-signal' into 'master'
...
Catch kernel signal
See merge request redox-os/kernel!135
2020-07-14 12:53:46 +00:00
Jeremy Soller
6b2302f92e
Merge branch 'paging-packed-use-unsafe' into 'master'
...
Wrap borrows of page table entries in unsafe
See merge request redox-os/kernel!126
2020-07-14 12:53:21 +00:00
jD91mZM2
ca3ddcdeca
Add TODOs for mapping PTI properly
...
I think we need to reimplement these functions in assembly :(
2020-07-14 09:14:16 +02:00
jD91mZM2
701c31cee0
Fix PTI compilation
...
It's broken on master anyway
2020-07-13 15:49:37 +02:00
jD91mZM2
5927743ff8
fixup! WIP: Rewrite interrupts as global assembly
2020-07-13 15:25:15 +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
jD91mZM2
56f55a3b97
Always save proccess registers
...
Not sure if this is going to be required, and I'm not sure if this will
hurt performance, y'know, *always* doing this.
2020-07-08 11:47:12 +02:00
jD91mZM2
103ed1b17f
Make interrupt stack readable on kernel signals
2020-07-08 11:44:04 +02:00
jD91mZM2
039f7f5c83
Simplify EXEC catching
...
Instead of having a separate flag, let's reuse STOP_SINGLESTEP :)
I wasn't thinking enough when making this flag!
2020-07-07 14:16:42 +02:00
jD91mZM2
cdcb34486b
Keep singlestep across signals
2020-07-07 13:32:10 +02:00
jD91mZM2
4701838118
Fix RIP register on int3
2020-06-23 19:47:44 +02:00
jD91mZM2
7fc49eed74
ptrace: Allow stopping on fexec
2020-06-22 13:11:32 +02:00
jD91mZM2
727217ad42
Fix acid test-bench issues
2020-06-15 17:14:52 +02:00
jD91mZM2
3420339c04
proc scheme: Rewrite try_stop_context
2020-06-15 15:08:59 +02:00
4lDO2
1c0e6c253f
Fix test.
2020-06-11 16:11:46 +02:00
4lDO2
8117119d8e
Wrap borrows of page table entries in unsafe.
...
This is safe because `Entry` is `#[repr(8)]` which is the minimum
alignment for qwords. Since the size of a qword is equal to that
alignment (8), they can also be borrowed from the array.
2020-06-11 16:05:00 +02:00
Jeremy Soller
5d53c65f0b
Merge branch 'resolve-kernel-warnings' into 'master'
...
Fix various kernel warnings.
See merge request redox-os/kernel!125
2020-06-11 13:18:58 +00:00
4lDO2
e7d00d4735
Fix various kernel warnings.
2020-06-11 12:58:03 +02:00
4lDO2
c7b207f4dc
Use #[repr(packed)] with correct align for paging.
2020-06-11 11:58:58 +02:00