Commit Graph

974 Commits

Author SHA1 Message Date
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 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
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
Jeremy Soller 220e53c24d Show CPU and PID in kernel panic 2020-08-02 12:12:59 -06:00
jD91mZM2 9ab778d649 Update redox_syscall 2020-08-01 16:53:39 +02:00
jD91mZM2 f07603902d Replace all llvm_asm! uses with asm! 2020-08-01 14:56:46 +02:00
Jeremy Soller c8263cc4bd Merge branch 'latest-rust' into 'master'
Support latest rust

See merge request redox-os/kernel!140
2020-08-01 12:22:17 +00:00
jD91mZM2 895c0c11da Use cargo for lto over manually entering rustflags 2020-08-01 13:19:12 +02:00
jD91mZM2 fbeb297949 Fix compilation since last rust
Thanks to @4lDO2 for all this. I just moved his changes to io_uring onto
the master branch of the kernel. I take no credit.
2020-08-01 13:00:52 +02:00
jD91mZM2 93856b43b9 s/\basm!/llvm_asm!/g 2020-08-01 12:31:56 +02:00
Jeremy Soller c8fb3792a9 Merge branch 'memory' into 'master'
Implement funmap2

See merge request redox-os/kernel!139
2020-07-30 13:36:59 +00:00
jD91mZM2 877259257c Update syscall submodule 2020-07-30 15:05:46 +02:00
jD91mZM2 55c3377c5c Use VirtualAddress wrapper in user.rs 2020-07-30 14:21:57 +02:00
jD91mZM2 3fca287bcc Remove debug prints 2020-07-30 13:21:17 +02:00
jD91mZM2 34194e2b79 Implement partial funmap-ing for user schemes 2020-07-30 13:08:03 +02:00
jD91mZM2 0ffa9b0be6 Track region instead of address in user.rs 2020-07-30 11:42:49 +02:00
jD91mZM2 9eb2aebd43 Implement unmapping multiple whole maps 2020-07-28 11:34:50 +02:00
jD91mZM2 639e603c4f WIP: Add funmap2 2020-07-25 22:29:21 +02: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
Jeremy Soller 2f94031221 Merge branch 'auxv' into 'master'
Implement auxiliary vector

See merge request redox-os/kernel!136
2020-07-21 14:16:05 +00:00
jD91mZM2 9c41424d3a Apply suggestion to src/syscall/process.rs 2020-07-21 14:10:58 +00:00
jD91mZM2 2782a5a7a9 Apply suggestion to src/syscall/process.rs 2020-07-21 14:10:43 +00:00
jD91mZM2 5dc65a920f Add restrictions on fmap 2020-07-21 16:08:28 +02:00
jD91mZM2 cf709783d6 Reverse mod/syscall.rs 2020-07-20 11:17:36 +02:00
jD91mZM2 07baf70c7a Don't push interpreter as argv[0] 2020-07-20 11:09:56 +02:00
Jeremy Soller 854149ee97 Support for debugging to system76 EC 2020-07-19 10:24:15 -06:00
jD91mZM2 ff5354b5b5 Fix mmap when using out-of-place address 2020-07-18 15:03:23 +02:00
jD91mZM2 2d63009ba4 Add debug entry for fmap2 2020-07-18 13:40:12 +02:00
jD91mZM2 310a425c65 Merge branch 'master' into auxv 2020-07-18 12:19:11 +02: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 c78b69969f Include trampoline in kernel to fix multi_core on EFI 2020-07-15 21:46:15 -06: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