function2-llx
ff54128273
Merge branch 'master' of github.com:rcore-os/rCore
2020-05-22 23:10:54 +08:00
Liu Xiaoyi
0d41db4991
Fixed noncontiguous frame allocated in DMA initialization
2020-05-15 14:59:03 +08:00
function2-llx
64957a6d2e
use wrapping add to prevent panic
2020-05-09 11:07:28 +08:00
equation314
acd7ee945a
Flush I/D cache after copying user code in page fault handler
...
* Now SMP works in real machine with no bugs!!!
2019-10-04 14:05:20 +08:00
WangRunji
2db599ab40
fix deprecated warnings
2019-07-24 22:43:15 +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
a285b242e9
Fix compilation for mipsel
2019-06-16 22:02:25 +08:00
Jiajie Chen
611c2dd5bf
Align vm area to page boundary and fix musl's reclaim()
2019-06-15 22:26:28 +08:00
Jiajie Chen
c67f00d7ca
Use MaybeUninit for uninitialized
2019-05-22 14:23:04 +08:00
Jiajie Chen
41da379593
Use new check_and_clone_cstr{,array}
2019-05-16 00:49:46 +08:00
Jiajie Chen
14a01cf3fc
Implement fixup for mipsel and small fixes
2019-05-16 00:28:29 +08:00
WangRunji
c8262f936f
fix paging for mips
2019-05-11 12:00:39 +08:00
WangRunji
cd22273ef9
refactor to linear mapping for x86_64
2019-05-11 01:06:44 +08:00
Yuhao Zhou
87d4027221
Align MemorySet with 64bytes.
2019-05-07 00:38:39 +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
60cdea81d9
fix check user ptr across VMAs
2019-04-30 16:30:00 +08:00
WangRunji
a25c8132fe
delay mapping file
2019-04-30 15:02:52 +08:00
WangRunji
88e1055eed
refactor fork MemorySet, introduce clone_map to MemoryHandler
2019-04-30 11:34:31 +08:00
WangRunji
8024401bd2
simplify x86_64 consts. keep MemoryArea order by start address
2019-04-30 01:45:01 +08:00
WangRunji
58271c7c8a
convert user ptr to reference on check
2019-04-28 17:16:07 +08:00
Jiajie Chen
cd2c78dd46
Add Rocket Chip platform in README
2019-04-27 23:04:10 +08:00
chyyuu
734e01cc46
fix bug: sys_mmap didn't zero clean the anonymous memory
...
We can use delay mode or eager mode(in added comment codes)
WRJ's great work!
2019-04-25 16:00:29 +08:00
WangRunji
f29f5e4d35
fix memory area alignment #41
2019-04-18 21:29:45 +08:00
WangRunji
b836b11792
reformat code using cargo fmt
2019-03-27 18:45:24 +08:00
Jiajie Chen
10e883d56f
Fix mmap clashing with temporary map addr. Add riscv toolchains in travis CI
2019-03-26 17:33:32 +08:00
Jiajie Chen
394afa493e
Fix TODO in work stealing scheduler
2019-03-24 21:39:15 +08:00
Jiajie Chen
48ebf98f11
Fix pop_with_split, check file existence in sys_access
2019-03-24 16:25:32 +08:00
Jiajie Chen
0272aa1070
Implement sys_readlink and improve sys_mremap
2019-03-23 11:33:53 +08:00
Jiajie Chen
08ba9261aa
Fix sys_mprotect with page alignment, dynamic loading seems working
2019-03-23 00:46:32 +08:00
WangRunji
5ddd5ece8d
rename, simplify
2019-03-22 23:45:57 +08:00
WangRunji
c6c76147d6
impl custom syscall: sys_get_paddr
2019-03-16 21:24:41 +08:00
Jiajie Chen
8cb11b7aa8
Implement tid/pid/ppid separation
2019-03-10 15:23:15 +08:00
WangRunji
84c12ae6e1
rename functions. ignore readonly in mmap to avoid page fault.
2019-03-09 15:55:00 +08:00
Jiajie Chen
1645451749
Implement memory_set splitting for munmap, add sys_sysinfo
2019-03-09 07:15:47 +08:00
Jiajie Chen
69498ae909
Fix delay memory handler: set present=true before unmapping
2019-03-08 15:24:28 +08:00
WangRunji
f7f740a021
remove TLS setup code. fix check writable memory
2019-03-08 10:50:46 +08:00
Jiajie Chen
84e07a6d83
Implement sys_mprotect and move attr setting from page_fault_handler to map in Delay
2019-03-08 00:03:06 +08:00
Jiajie Chen
2683314c38
Allocate pages eagerly for Delay when forking. Implement sys_getsockname.
2019-03-06 15:35:10 +08:00
Jiajie Chen
a51b9dbd90
Implement tls setup code(not working yet), tcp sys_bind and sys_connect
2019-03-06 10:19:19 +08:00
WangRunji
738554386b
introduce VMError to simplify EFAULT error handling
2019-03-03 01:27:30 +08:00
Jiajie Chen
e543449836
Implement basic version of sys_munmap and sys_time
2019-03-02 20:15:55 +08:00
WangRunji
6d78206f77
impl finding free area for mmap
2019-02-26 00:46:25 +08:00
WangRunji
ca45f8f152
fix check user ptr in syscalls
2019-02-22 16:30:56 +08:00
Jiajie Chen
8313b8854e
cherry-pick virtio improvement from lab8-rv32
...
Move mandelbrot to test mod, cleanup virtio feature negotiation and add addr2line script to Makefile
Implement full virtqueue operations, virtio input driver
Use new virtqueue implementation for virtio net driver
Implement virtio blk device support and use it instead of memory sfs when available
fix dirty hack for virtio_blk
2019-02-16 16:52:11 +08:00
WangRunji
fc8888db72
update for new paging mechanism on riscv. move kernel va to 0x(ffffffff)c0000000.
2019-01-31 23:20:21 +08:00
WangRunji
047f4ffdcc
cherry-pick jiegec's work ( #3 ) from lab8-rv32: virtio drivers, network stack
...
Read and parse dtb upon boot
Implement virtio net device detection
Negotiate feature bits for virtio-net
Read MAC address from virtio-net device and detect virtqueues
Receiving from virtio net device is working for the first time
Implement driver interface and interrupt handling routines
Rearrange drivers into upper directory
Implement initial support for processing arp request and reply packet
Refactor MAC address and IPv4 address into structs, and implement ICMP echo reply
Fix typos
Implement initial support for virtio gpu driver
Complete first working version of virtio gpu driver with mandelbrot example
Use smoltcp and implement a udp and tcp server on top of it
Cleanup virtio net code
2019-01-23 22:28:45 +08:00
WangRunji
2d5178d0b7
rename ucore to rcore
2019-01-03 21:26:50 +08:00
WangRunji
61dfcb5558
Merge remote-tracking branch 'equation314/arch-aarch64' into merging
...
# Conflicts:
# kernel/Makefile
# kernel/src/arch/aarch64/board/raspi3/irq.rs
# kernel/src/arch/aarch64/memory.rs
# kernel/src/arch/riscv32/paging.rs
# kernel/src/arch/x86_64/paging.rs
2019-01-03 18:21:13 +08:00
WangRunji
33eaded142
Merge remote-tracking branch 'bpc/user-lib-bin' into merge-1228
...
# Conflicts:
# kernel/src/arch/riscv32/compiler_rt.c
# kernel/src/arch/riscv32/consts.rs
# kernel/src/arch/riscv32/context.rs
# kernel/src/arch/riscv32/io.rs
# kernel/src/arch/riscv32/memory.rs
# kernel/src/arch/riscv32/paging.rs
# user/ucore-ulib/src/syscall.rs
2018-12-28 17:41:21 +08:00