86 Commits

Author SHA1 Message Date
Jeremy Soller
07ed93225e 0.3.4: Update syscall to matching version 2022-08-31 16:15:25 -06:00
Jeremy Soller
bb12da2b68 Update syscall 2022-08-24 08:53:37 -06:00
Jeremy Soller
cc6c974c91 Bump kernel to 0.3.0 to match syscall 2022-07-29 18:18:27 -06:00
Jeremy Soller
e99cbcf5d2 Fixes for compiling aarch64 2022-07-29 18:06:53 -06:00
Jeremy Soller
8db4596f73 Use x86 crate on i686 as well 2022-07-28 08:22:26 -06:00
4lDO2
1cdd462244 Move the initfs scheme to userspace. 2022-07-27 10:52:22 +02:00
4lDO2
6e5015dcab WIP: Add necessary interfaces for setuid/setgid. 2022-07-27 10:51:45 +02:00
4lDO2
15b029de36 Fix everything all the way to booting to desktop. 2022-07-27 10:51:45 +02:00
Jeremy Soller
65bbd50416 Update kernel version to match syscall version 2022-04-26 08:28:05 -06:00
Jeremy Soller
6f83a0800a Set graphical_debug by default 2022-04-25 08:47:10 -06:00
4lDO2
df37b1f634 External initfs 2022-04-11 21:09:08 +00:00
4lDO2
6255bea143 Update to latest toolchain.
Multi-core is slightly broken when using the latest version of spin
(0.9.2). I believe this is because Once used to do SeqCst loads/stores
everywhere, which might have made any possible data race much harder to
come by.
2022-03-12 17:10:36 +01:00
Jeremy Soller
ae3bdea4bc Update raw-cpuid 2022-03-01 18:12:06 -07:00
Jeremy Soller
1aae949fc4 Support for getting live disk from bootloader 2022-02-10 15:49:34 -07:00
Jeremy Soller
61279db991 Remove no_threaded_syscalls feature 2021-10-27 20:48:16 -06:00
Jeremy Soller
9ea278997c Disable threaded syscalls until threaded allocation issues are solved 2021-10-20 20:05:47 -06:00
4lDO2
d7a1c6255b Fix possible race condition in paranoid ISRs.
Additionally, because it turned out to be infeasible to rely on
link-time constants in global_asm! code, I have also converted the
interrupt handlers to naked fns. This removes the proc-macro-reliant
"paste" dependency, but inserts a tiny ud2 at the end of every ISR.
2021-08-06 17:34:56 +02:00
4lDO2
0968e4f87e Support fsgsbase at compile time. 2021-07-31 10:12:59 +02:00
4lDO2
3e5cf387d5 Use offset_of! in context::arch::switch_to.
This is definitely better than hardcoding the offsets!
2021-06-21 10:16:41 +02:00
4lDO2
1cf5f5ea22 Update dependencies to work with latest nightly. 2021-06-17 22:42:54 +02:00
4lDO2
2dc899dc3b Update paste and align interrupt handlers. 2021-06-17 22:42:50 +02:00
Jeremy Soller
28d1d7e847 Update version to 0.2.8 2021-05-05 21:21:57 -06:00
Jeremy Soller
11a3315255 Re-enable acpi feature and gate it for x86_64 only 2021-05-04 08:33:00 -06:00
Jeremy Soller
d331f72f2a Use UTF-8 for all paths 2021-04-28 20:06:07 -06:00
Robin Randhawa
02c37d3fae WIP: aarch64 rebase 2021-01-15 05:54:42 -07:00
Jeremy Soller
ccddabadf7 Make x86 specific dependencies, x86 specific 2021-01-09 20:12:59 -07:00
Jeremy Soller
f5ac405db6 Support for RMM 2020-11-27 16:49:39 +00: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
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
Jeremy Soller
854149ee97 Support for debugging to system76 EC 2020-07-19 10:24:15 -06: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
Jeremy Soller
30b109d288 Update dependencies 2020-05-06 09:05:58 -06:00
Graham MacDonald
0614d3298d bump raw-cpuid dep to avoid pulling in serde 2020-05-02 14:11:23 +01:00
Jeremy Soller
fdf46d8043 Fix multi_core livelocks and add livelock debugging 2020-04-19 08:46:50 -06:00
4lDO2
c11d6d9e46 Update the x86 crate. 2020-03-28 13:37:03 +01:00
Jeremy Soller
90b113f047 Add lpss_debug 2019-11-13 19:33:21 -07:00
Jeremy Soller
63e2a835e0 Fix clippy.sh script and fix a number of clippy warnings 2019-10-06 11:04:06 -06:00
Jeremy Soller
6160de495f Make multi_core require acpi 2019-08-12 19:33:50 -06: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
28cd51efed Update goblin 2019-04-13 21:57:58 -06:00
Jeremy Soller
58f9e5a801 0.1.54 - Add support for cache disable 2019-04-08 17:57:25 -06:00
Jeremy Soller
f36506613b Update funmap support 2019-04-06 20:13:55 -06:00
Jeremy Soller
e5cf6efa64 Support specification of stack with clone system call and CLONE_STACK flag 2019-03-31 14:35:45 -06:00
Jeremy Soller
a0e9f4a8a0 Use serial for debugging by default 2019-03-11 19:54:54 -06:00
Jeremy Soller
b80f38b039 More debugging output options 2019-03-11 19:50:50 -06:00
Tibor Nagy
2ec775905a Use rustc-demangle in the stack traces 2019-02-14 15:54:17 +01:00
Jeremy Soller
5c31c0991c 0.1.51 2019-01-20 19:37:55 -07:00
Jeremy Soller
c28c147add Update to new dependencies 2018-06-19 18:17:16 -06:00
Jeremy Soller
48007b8f1e Update to new allocation API (WIP) 2018-04-28 22:07:43 -06:00