1
0
mirror of https://github.com/rcore-os/rCore.git synced 2024-11-25 17:33:28 +04:00
Commit Graph

182 Commits

Author SHA1 Message Date
equation314
395b8b51c1 Updata rcore-fs version to 7e7c74a
Support non-zero return value for INode::io_control()
2020-04-14 20:24:27 +08:00
Runji Wang
139544f946 update Rust nightly to 2020-04-06 2020-04-06 17:19:05 +08:00
equation314
d10997f90f Update Rust nightly to 2020-03-23. 2020-04-05 22:01:43 +08:00
equation314
c7f64461d0 Bump rboot version 2020-04-05 21:35:07 +08:00
equation314
332830b7c4 Update rcore-fs version 2020-04-04 23:48:39 +08:00
Runji Wang
a395d5ea10 move virtio drivers to external crate 2020-03-24 22:27:21 +08:00
Jiajie Chen
36a1ed98c8 Bump rcore-fs revision for newer bitvec version 2020-03-24 18:21:33 +08:00
Runji Wang
3723dde083 update dependencies and CI badge 2020-01-29 20:09:04 +08:00
Runji Wang
9c2459f2f0 update Rust nightly to 2020-01-17. remove dependence of cargo-xbuild. 2020-01-29 11:57:14 +08:00
Jiajie Chen
ab8356f28d Bump rboot and user commit, update Cargo.lock and fix addr2line.py 2020-01-29 10:59:39 +08:00
Runji Wang
af83913188 fix data racing on thread crate
The key point is that all methods on 'Processor' must be called with interrupt disabled. Otherwise if an interrupt happened inside a method, and then the thread is switched to other CPUs, it will touch other 'Processor'.
2019-11-30 18:11:26 +08:00
Runji Wang
7d1a37a7bf update Rust nightly to 2019-11-28
- disable hard float on mips to avoid LLVM error
- update smoltcp and fix drivers for API change
- update atomic.patch for libcore on riscv
- update rboot to fit new nightly
2019-11-30 15:48:09 +08:00
Runji Wang
b11e1b9be1 update user submodule and thread crate
fix some bugs in ucore programs found at OSTrain2019
2019-10-06 13:47:55 +08:00
equation314
6a7c72dbde aarch64: add mutex for KERNEL_MEMORY_SET, update bcm2837 2019-10-05 00:11:50 +08:00
equation314
90c2cd28f8 aarch64: use new cache & TLB maintenance operations 2019-10-04 23:25:42 +08:00
equation314
fee3e87110 aarch64: SMP works in qemu!!! 2019-09-28 23:39:09 +08:00
equation314
c6a4792f13 aarch64: update crate bcm2837 to use local timer 2019-09-28 01:30:29 +08:00
equation314
f76208542b aarch64: add map_kernel() function
* create fine-grained mappings in memory::init()
* put physical memory mappings to 0xFFFF_8000_0000_0000
* reuse ioremap() for framebuffer memory
2019-09-26 02:25:02 +08:00
equation314
48d7fb091a aarch64: no longer use bootloader, enable paging in entry.S 2019-09-24 20:12:28 +08:00
Runji Wang
a07822a446 x86_64: fix for real hardware. remove legacy drivers. 2019-09-13 23:00:00 +08:00
Jiajie Chen
0778f8f84c Bump rcore-console version, fixing mipsel compilation 2019-09-11 23:48:10 +08:00
Runji Wang
c2a80c54f9 x86_64: switch from legacy BIOS to UEFI. use rboot as new bootloader
- remove dependencies: rust-osdev/{bootloader, bootimage}
- remove kernel stack segment
- find a bug: IDT should be initialized after GDT
2019-09-04 10:37:31 +08:00
equation314
2237d2e5bd aarch64: pass bootinfo from bootloader to kernel 2019-08-30 18:22:28 +08:00
equation314
fa30f5f96b aarch64: fix bus address for mailbox property 2019-08-28 21:38:50 +08:00
equation314
d56a88947e aarch64: set ttbr0_el1 to null for kernel thread, fixed #56 2019-08-28 01:41:47 +08:00
Jiajie Chen
55cfce6c02 Show target in logging, and fix console deadlock 2019-08-23 10:44:24 +08:00
Runji Wang
c881bdc65d move Console to extern crate
also remove x86_64 VGA text mode support
2019-08-16 11:11:49 +08:00
Jiajie Chen
655c1f19c2 Move impl_inode default impl to rcore-fs crate 2019-08-07 18:55:35 +08:00
Jiajie Chen
92d878c144 Correctly report rdev of device nodes 2019-08-05 18:20:17 +08:00
WangRunji
78b322e842 update crates 2019-08-02 17:34:55 +08:00
WangRunji
52d72790bc introduce MountFS, mount RamFS at /tmp, mount DevFS at /dev 2019-08-02 17:24:27 +08:00
Jiajie Chen
08b59be1ae Use updated ACPI crate to parse ACPI in x86 2019-07-17 09:43:49 +08:00
Jiajie Chen
96357e63df Bump rust version to newer nightly and use acpi crate to print acpi info 2019-06-30 03:41:50 +08:00
Jiajie Chen
ffe4fae975 Fix ahci driver and match ahci driver by SATA class 2019-06-28 17:01:31 +08:00
Jiajie Chen
4607e0646d Fix vga in vmware 2019-06-27 11:28:03 +08:00
gjz010
7b8252eb1b Basic loadable kernel module support, with a module template written in Rust.
Under aarch64 and x86_64, hello_rust can be built and loaded by `/busybox insmod hello_rust.ko`.
2019-06-07 20:59:51 +08:00
Jiajie Chen
8b06314828 Format code and update debug code 2019-06-03 09:33:02 +08:00
NagiNikaido
3535faccd9 Merge branch 'dev' of https://github.com/rcore-os/rCore into rcore-os-dev 2019-05-27 16:34:29 +08:00
Jiajie Chen
dcfb02c514 Add EAGAIN for nonblocking io and poll for file in read_at() 2019-05-24 20:53:13 +08:00
Jiajie Chen
22946c699d Allow ahci port init to fail 2019-05-24 19:21:48 +08:00
Jiajie Chen
0be1b1e56b Support 32bit MSI Addr 2019-05-24 16:45:28 +08:00
Jiajie Chen
e2bb86aa54 Get screen info from bootloader for vga 2019-05-24 16:20:25 +08:00
Jiajie Chen
e9c0bcadf7 Add graphic=console option and fix vga on x86_64 2019-05-24 15:20:39 +08:00
Jiajie Chen
c5acdb67e6 Fix compilation for merge and update vga buffer address 2019-05-24 08:57:21 +08:00
Jiajie Chen
53bb55b971 Merge remote-tracking branch 'origin/dev' into dev 2019-05-24 08:42:33 +08:00
Jiajie Chen
d1d7fe44a7 Fix condvar race(maybe) 2019-05-23 23:21:02 +08:00
PanQL
9740983b2d
Merge branch 'mgba' into dev 2019-05-23 21:11:13 +08:00
WangRunji
1a377ca7c3 x86_64: update bootloader. fix on real machine 2019-05-23 16:46:00 +08:00
equation314
97539dd760 aarch64: speed up page table map/unmap
1. update crate aarch64, call tlb_invalidate() instead of tlb_invalidate_all() in MapperFlush::flush().
2. reduce user stack size to 1MiB.
2019-05-21 00:46:12 +08:00
equation314
52251b2adb aarch64: refactor to linear mapping
TODO:
* `map`, `unmap` is significantly slower than other archs
* set segment permissions for kernel page table in bootloader
2019-05-20 21:51:53 +08:00