Commit Graph

2668 Commits

Author SHA1 Message Date
Jeremy Soller 2dc0853903 Add constants for sizes 2020-09-06 21:06:12 -06:00
Jeremy Soller 4bf43652c3 Only use offset mapping 2020-09-06 14:38:31 -06:00
Jeremy Soller d5111d429e Implement PHYS_OFFSET mapping 2020-09-06 14:30:50 -06:00
Jeremy Soller a40b26293b Do not use explicit register fo x86_64 table operations 2020-09-06 14:20:29 -06:00
Jeremy Soller 379294b59f Implement x86_64 arch functions 2020-09-06 14:18:01 -06:00
Jeremy Soller f801a40908 Add function for addresses 2020-09-06 14:17:49 -06:00
Jeremy Soller 5fc0a080ad Update nightly 2020-09-06 14:17:26 -06:00
Jeremy Soller a482e506c5 Use physical and virtual address abstraction for arch functions 2020-09-06 13:58:40 -06:00
Jeremy Soller ab07997bbe Add derives for physical and virtual addresses 2020-09-06 13:55:38 -06:00
Jeremy Soller 8efc425b07 Add phys_to_virt function 2020-09-06 13:54:58 -06:00
Jeremy Soller 023bb5811a Add definition of physical address size 2020-09-06 13:25:21 -06:00
Jeremy Soller 2df212f48d Add tests to ensure correct constant calculation 2020-09-06 13:00:01 -06:00
Jeremy Soller f5e8c031ca Move constants into Arch trait 2020-09-06 08:30:56 -06:00
Jeremy Soller 8c8e09d23e Refactor, use trait for arch differences 2020-09-05 21:02:27 -06:00
Jeremy Soller 58323aadd0 Implement recursive mapping 2020-09-05 19:00:32 -06:00
Jeremy Soller 556b777386 Define for page levels, enable recursive mapping by default 2020-09-04 21:19:57 -06:00
Jeremy Soller adad6bbe65 Add recursive mapping 2020-09-04 21:07:31 -06:00
Jeremy Soller a55e19868e Add abstraction for page table 2020-09-04 20:56:48 -06:00
Jeremy Soller a70bc00264 Improve machine read/write functions 2020-09-04 15:42:42 -06:00
Jeremy Soller 048298d65b Add README.md 2020-09-04 21:24:43 +00:00
Jeremy Soller 21dc9624d7 Add LICENSE 2020-09-04 21:23:23 +00:00
Jeremy Soller e7ae8e6812 init 2020-09-04 15:22:35 -06:00
Jeremy Soller 8b27de416b Update Cargo.lock 2020-08-27 10:26:56 -06: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 8211e92c02 Merge branch 'master' of https://gitlab.redox-os.org/redox-os/kernel 2020-08-27 09:43:23 -06:00
Jeremy Soller 858dd6ef51 Update syscall 2020-08-27 09:43:15 -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
Jeremy Soller 4e3df8b953 Merge branch 'aj-chdir-initfs-message' into 'master'
Add more descriptive error message for when initfs chdir fails

See merge request redox-os/kernel!150
2020-08-17 16:25:46 +00:00
Jeremy Soller 6ba3850042 Merge branch 'aj-logging' into 'master'
Use logging instead of println in src/lib.rs

See merge request redox-os/kernel!149
2020-08-17 16:18:08 +00: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
Jeremy Soller 0590a71b87 Merge branch 'mynameissherlockholmes' into 'master'
Investigate why user heap isn't mapped

See merge request redox-os/kernel!147
2020-08-15 15:27:33 +00: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
Jeremy Soller e3814c1ca2 Merge branch 'deprecate-stuff' into 'master'
Deprecate the original fmap/funmap

See merge request redox-os/kernel!146
2020-08-14 15:20:36 +00: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
jD91mZM2 bdc504f862 Update redox_syscall again 2020-08-03 16:08:15 +02: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