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
5fb1fb08c8
Merge remote-tracking branch 'rcore/master' into orig-Loremkang
2020-03-24 19:56:45 +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
LoremKang
b5c08c2825
add support for mmap shared memory. passed compilation.
2019-11-08 02:36:55 +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
PanQL
9ac8f1b887
some work for console-vga(1024*7683) adaption
2019-05-12 01:43:02 +08:00
Jiajie Chen
26e47fc36f
[WIP] Initial rv64 sv39 support
2019-05-12 01:11:53 +08:00
Jiajie Chen
d66df43ec0
[WIP] rv32 linear mapping
2019-05-11 12:21:58 +08:00
WangRunji
cd22273ef9
refactor to linear mapping for x86_64
2019-05-11 01:06:44 +08:00
WangRunji
d28f54ce32
show tid on log
2019-05-09 21:33:26 +08:00
PanQL
a0fc201695
set up vga 320x200
2019-05-09 21:16:25 +08:00
equation314
03a8b3e449
aarch64: disable FP/SIMD registers again, update crates
2019-05-07 22:37:53 +08:00
equation314
bfe03b8ea0
aarch64: fix vm clone fault in fork
2019-05-06 23:30:01 +08:00
Jiajie Chen
35079e4193
Bump buddy system allocator
2019-05-06 12:15:21 +08:00
BenjaminPMLovegood
682f772eb8
begin translation
2019-05-05 17:44:03 +08:00
BenjaminPMLovegood
5be9ae7775
Merge branch 'dev' into geminilab
2019-05-05 03:40:18 +08:00
BenjaminPMLovegood
f9bdcc7cd9
add emmc file. waiting for merging main repo.
2019-05-05 03:21:07 +08:00
WangRunji
6883127d5a
update fs. add BlockCache
2019-05-03 00:35:00 +08:00
Jiajie Chen
8651f09b31
Automatically enlarge heap when kernel heap is about to run out
2019-05-01 18:33:55 +08:00
WangRunji
54de0d8ae7
remove once crate. fix bitvec crate commit id.
2019-05-01 00:18:11 +08:00
WangRunji
c885ea6d77
impl pseudo INode '/proc/self/exe'
2019-04-30 17:37:18 +08:00
WangRunji
27f5c7b2e4
detach thread to auto recycle tid. fix #25
2019-04-28 23:34:45 +08:00
NagiNikaido
1bfb979d96
Upd. #2
2019-04-21 14:32:24 +08:00
Jiajie Chen
ff50a45396
Now ready to use busybox sh for user shell
2019-04-17 08:16:02 +08:00
WangRunji
48c40497ac
update crate uart_16550 to v0.2. deny unused_must_use.
2019-04-17 00:46:48 +08:00
WangRunji
f88cffb8ab
fix bitvec version
2019-04-15 22:08:20 +08:00
NagiNikaido
ae710ca08d
Toolchain version updated to nightly-2019-04-14. Bitvec commit id updated.
2019-04-15 21:08:02 +08:00
Jiajie Chen
41dab25f9c
Merge remote-tracking branch 'origin/master' into dev
2019-04-09 20:30:30 +08:00
Harry Chen
358e682bad
Enable PCI initialization for matal, update mips crate and user app repo
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-04-09 01:08:49 +08:00
Yuhao Zhou
b6aa9858d3
Fix return register in sys_clone.
2019-04-08 04:47:36 +08:00
Harry Chen
88bda7c4a0
Use Linux syscall number for mips N32 ABI, update user app
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-04-07 17:08:03 +08:00
Yuhao Zhou
9d576b4827
Update Cargo.lock for rust-mips.
2019-04-07 04:21:35 +08:00
Harry Chen
a2e98d73fd
Extract serial driver and add mipssim board for mipsel
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-04-06 21:59:16 +08:00
Harry Chen
fedb53346a
Update mips crate
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-04-06 15:46:08 +08:00
Harry Chen
62fe4e5361
Update rust-mips crate
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-04-06 14:45:28 +08:00
Harry Chen
48864bd79b
Add more output to backtrace, revert fs change, update rust-mips
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-04-06 14:43:10 +08:00
WangRunji
a712f37c65
update fs. support poll for INode.
2019-04-05 23:20:17 +08:00
Harry Chen
9f7f82a72d
Fix compilation errors in drivers
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-04-05 22:57:12 +08:00
WangRunji
56cb8654ae
move E1000 driver to isomorphic_drivers crate
2019-04-05 22:15:56 +08:00
WangRunji
847664fda1
move AHCI driver to isomorphic_drivers crate
2019-04-05 20:24:45 +08:00
Jiajie Chen
b0c9087f0f
Implement ioctl arp translation
2019-04-05 01:16:26 +08:00
Jiajie Chen
025007c8bf
Upgrade rcore-thread for riscv fixes
2019-04-04 13:12:36 +08:00
WangRunji
b77a52dccb
move bit-allocator and rcore-thread crate to remote
2019-04-04 12:45:55 +08:00
WangRunji
c9a68634f5
simplify FdSet using bitvec crate
2019-04-04 11:46:50 +08:00
Harry Chen
f8a62b5549
Merge remote-tracking branch 'origin/master' into mipsel
2019-04-04 00:31:59 +08:00
Jiajie Chen
66af7473eb
Do not use alloc::prelude
2019-04-02 08:52:13 +08:00
Harry Chen
b6f1b3c926
Merge remote-tracking branch 'origin/master' into mipsel
2019-04-01 23:32:30 +08:00
Yuhao Zhou
a78916c57e
Add MIPS target.
2019-03-31 22:04:22 +08:00
WangRunji
11c5609171
refactor PCI mod using pci crate
2019-03-30 23:48:33 +08:00
Jiajie Chen
9831cae13c
Fix travis CI for riscv32
2019-03-29 15:19:40 +08:00
Jiajie Chen
311cf104f9
Many minor fixes to allow gcc to run inside rCore. Add some syscalls, fix SEEK_* and enlarge the heap
2019-03-29 13:14:08 +08:00
WangRunji
c2a90e2ab1
update dependencies
2019-03-27 18:45:24 +08:00
WangRunji
fc584753c1
update crate x86_64 to v0.5, bootloader to v0.4
2019-03-25 18:13:43 +08:00
Jiajie Chen
285ffc7618
Move absolute/relative path resolution to rcore-fs, implement dummy sys_fchown, sys_fchownat and sys_symlinkat
2019-03-24 18:25:13 +08:00
Jiajie Chen
547baa9ecd
Implement symlink following
2019-03-23 15:47:44 +08:00
Jiajie Chen
0272aa1070
Implement sys_readlink and improve sys_mremap
2019-03-23 11:33:53 +08:00
Jiajie Chen
c7b34a7f72
Use enable_irq explicitly in ixgbe driver
2019-03-22 12:33:48 +08:00