function2-llx
b2e714d68d
fix dup
2020-04-12 18:52:21 +08:00
function2-llx
d777f59118
run shell
2020-04-11 10:05:49 +08:00
function2-llx
47dade0c73
merge
2020-04-09 22:30:33 +08:00
Runji Wang
139544f946
update Rust nightly to 2020-04-06
2020-04-06 17:19:05 +08:00
equation314
d3b82267c1
Merge branch 'master' into clear-warning
2020-04-06 00:44:18 +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
function2-llx
7223cee638
add tty
2020-04-05 20:25:11 +08:00
equation314
332830b7c4
Update rcore-fs version
2020-04-04 23:48:39 +08:00
equation314
822f3010c8
Move device file system codes into src/fs/devfs
2020-04-04 23:48:28 +08:00
equation314
f95b863d80
Add read_at/write_at functions to Framebuffer
2020-04-04 23:33:36 +08:00
equation314
f1e5b94ec5
Dispatch mmap operation of files in FileHandle
2020-04-04 23:33:35 +08:00
equation314
357be4858e
Add fbdev to DevFS
2020-04-04 23:33:03 +08:00
equation314
5c8fa87c27
Resolve deprecated funtions
2020-04-04 23:02:05 +08:00
equation314
9b488bed06
Resolve never used constants/fileds/methods
2020-04-04 21:57:37 +08:00
equation314
110c967693
Resolve unused variables & unnecessary mut
2020-04-04 19:01:24 +08:00
equation314
a6cd153fca
Remove unused import
2020-04-04 17:58:20 +08:00
function2-llx
749f2e40ce
debug
2020-03-31 22:05:52 +08:00
function2-llx
9168afa818
Merge branch 'master' of github.com:rcore-os/rCore
2020-03-30 17:14:19 +08:00
function2-llx
9f07940204
fix rcore-fs
2020-03-26 20:15:36 +08:00
function2-llx
dc2bf6e879
test
2020-03-25 20:49:16 +08:00
Runji Wang
a395d5ea10
move virtio drivers to external crate
2020-03-24 22:27:21 +08:00
Jiajie Chen
1f75b26945
Run cargo fmt
2020-03-24 20:27:49 +08:00
Jiajie Chen
3e742b7cbc
Fix compilation for mipsel target
2020-03-24 20:21:59 +08:00
Jiajie Chen
d5c0e0d58c
Run cargo fmt
2020-03-24 20:03:02 +08:00
Jiajie Chen
5fb1fb08c8
Merge remote-tracking branch 'rcore/master' into orig-Loremkang
2020-03-24 19:56:45 +08:00
Jiajie Chen
c0be01319b
Don't create len=0 slices in iov
2020-03-24 18:44:25 +08:00
Jiajie Chen
36a1ed98c8
Bump rcore-fs revision for newer bitvec version
2020-03-24 18:21:33 +08:00
equation314
79baa289f4
ARM: Use RwLock to wrap raspi3 IRQ handler
2020-03-24 15:09:18 +08:00
Chen
cd81f4cc73
Add .align 4 to fix potential alignment problem, see issue #33 ( #34 )
2020-02-17 21:26:06 +08:00
Runji Wang
f66c8d29cd
uppercase arguments in Makefile
2020-02-01 13:25:55 +08:00
Runji Wang
ab06b2cd55
remove dependency cargo-binutils
2020-02-01 12:47:43 +08:00
Runji Wang
3723dde083
update dependencies and CI badge
2020-01-29 20:09:04 +08:00
Runji Wang
fc5c82be28
ci: add GitHub Actions
2020-01-29 17:42:08 +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
Hongbo Kang
ed5471ff3d
support basic shm syscall & pass test.
2020-01-02 16:33:15 +08:00
康鸿博
eb99232432
add shmget, shmat, shmdt syscall and pass compilation.
2020-01-02 14:16:00 +08:00
康鸿博
7c7031e5d0
Use offset instead of virtAddrAddress in shared memory guard, provide basis for sys_shm. Merge branch 'master' into shared_memory
2019-12-31 21:23:06 +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
20f8b45888
riscv: rename 'arch/riscv32' to 'arch/riscv'
2019-11-30 15:48:12 +08:00
Runji Wang
915ef6f95e
riscv: use -bios option for QEMU 4.1
...
And remove prebuilt OpenSBI for virt, since it's included in QEMU.
Ref: https://qemu.weilnetz.de/doc/qemu-doc.html#Deprecated-features B.1.15
2019-11-30 15:48:12 +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
Jiajie Chen
52afd05946
Run code format
2019-11-18 13:59:12 +08:00
LoremKang
b5c08c2825
add support for mmap shared memory. passed compilation.
2019-11-08 02:36:55 +08:00
ssryps
0a1e422cac
change code structure
2019-11-07 22:57:13 +08:00
ssryps
f6e5769a51
fix some bug
2019-11-06 10:02:14 +08:00
ssryps
ec1d588890
optimize code structure
2019-11-04 14:34:43 +08:00
ssryps
47f8a7d6eb
modification for pull request
2019-11-03 23:35:15 +08:00
ssryps
a81bb579ef
epoll module complete
2019-11-03 23:35:15 +08:00
ssryps
93a4962205
fix a bug of epoll module
2019-11-03 23:35:10 +08:00
ssryps
14f0965bd2
finish epoll implementation
2019-11-03 23:35:10 +08:00
ssryps
ba09ab92a8
modify select implementation
2019-11-03 23:34:26 +08:00
ssryps
0aa995d98c
improve the implementation of poll
2019-11-03 23:34:26 +08:00
ssryps
d1c2a2c731
finish lab1
2019-11-03 23:34:26 +08:00
Runji Wang
7d849f8d30
fix fb_bitfield for all pixel formats
2019-11-02 01:28:02 +08:00
Runji Wang
242cbfa76c
implement sys_pselect6, same as sys_select
2019-11-02 00:56:48 +08:00
Runji Wang
1ee6796346
init FramebufferInfo for VirtIOGPU
2019-11-01 17:14:43 +08:00
Runji Wang
91a4860b64
Rust style docs and cargo fmt
2019-11-01 15:12:56 +08:00
刘丰源
74b13a449a
fix bugs
2019-10-30 18:08:45 +08:00
刘丰源
d28ce19ae4
update ioctl
2019-10-30 17:06:30 +08:00
Runji Wang
d4702faa0f
fix SYS_IPC on mips
2019-10-26 11:29:27 +08:00
Runji Wang
b7a192a1ea
move all process related semaphore operations to struct SemProc
2019-10-24 20:33:00 +08:00
Runji Wang
a99f4396eb
clean and improve code
2019-10-24 19:44:42 +08:00
LoremKang
0b05a58e3b
update submodule rboot & user. format the code.
2019-10-24 15:50:46 +08:00
LoremKang
4da6a1471a
support SEM_UNDO. now support all 3 syscall without safety check.
2019-10-22 23:23:30 +08:00
LoremKang
702ea47ae8
fix the deadlock bug. semaphores now work well without SEM_UNDO.
2019-10-22 16:15:03 +08:00
LoremKang
e6b4c77c05
solve a potential unwrap error. deadlock when child lock first.
2019-10-22 14:58:48 +08:00
LoremKang
a180c3b4bb
solve the deadlock problem & sometimes pass test.
2019-10-22 14:30:23 +08:00
LoremKang
198717c071
try to solve the deadlock problem caused by locking SemArray while waiting for Semaphores.
2019-10-22 13:48:17 +08:00
LoremKang
d4d57a5095
finish semctl.setval. pass compilation.
2019-10-21 15:33:40 +08:00
HongboKang
c241ec1f5b
finish semget & semop. write a small test on semget.
2019-10-21 14:55:17 +08:00
HongboKang
64cdfa277f
pass compilation with semget and part of semop.
2019-10-18 02:16:32 +08:00
HongboKang
374c34cd34
write code for semget and semop. not compiled yet.
2019-10-14 23:30:20 +08:00
Bran
3caa091ec5
solve forktest problem, release zombie process when parent process exits. ( #21 )
2019-10-14 01:36:48 +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
44f1c8e8c3
aarch64: Add some comments for SMP booting
2019-10-05 15:45:32 +08:00
equation314
3069e17d78
Remove unnecessary lazy_static
2019-10-05 13:02:43 +08:00
equation314
9f6cb5966d
Fix typo
2019-10-05 13:00:47 +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
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
equation314
444ce34859
aarch64: SMP works in real machine, but still have bugs
2019-10-03 21:04:22 +08:00
equation314
344ff85a21
Pass the environment variable SMP
to consts::SMP_CORES
2019-09-29 15:36:43 +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
Yuekai Jia
c99266c013
Merge branch 'master' into dev
2019-09-26 11:29:39 +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
3beddf12da
build: remove filling symbols. prepare command 'make test'.
2019-09-24 14:26:18 +08:00
Runji Wang
2722371d86
mips: fix build
2019-09-24 01:49:08 +08:00
Runji Wang
8dac3f107f
travis: remove GCC toolchain, download prebuilt user image from github release
2019-09-24 01:49:08 +08:00
equation314
233ccdd914
Fix fnctl nonblock check
...
musl will add extra flags when set `arg` to `O_NONBLOCK` for non-x86 architecture
2019-09-23 22:16:20 +08:00
fengyuan
0639affc55
error exit will return to shell
2019-09-18 23:38:46 +08:00
Runji Wang
5a2f1d5be0
x86_64: use ACPI address from bootloader
2019-09-14 00:27:39 +08:00
Runji Wang
a07822a446
x86_64: fix for real hardware. remove legacy drivers.
2019-09-13 23:00:00 +08:00
Runji Wang
590df849f3
update Rust toolchain and README
...
NOTE: MIPS is broken due to a Rust compiler bug
2019-09-11 23:58:52 +08:00
Runji Wang
50d833e420
refactor fb & console mod structure
...
- move both modules to crate::drivers
- no longer need `probe_fb_info` for each board
2019-09-11 23:58:52 +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
Runji Wang
977c0badcb
remove 'runui' makefile command
2019-09-03 12:15:33 +08:00
equation314
d65aba8470
Update FramebufferInfo
2019-09-03 00:27:23 +08:00
equation314
22f5cf93fd
aarch64: map framebuffer & set mem attr in bootloader
2019-09-02 21:46:41 +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
100f3b9525
Implement /dev/{u,}random
2019-08-07 19:22:14 +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
Jiajie Chen
287e48adde
Only create /dev /tmp directories when they do not exist
2019-08-05 18:01:45 +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
WangRunji
2db599ab40
fix deprecated warnings
2019-07-24 22:43:15 +08:00
WangRunji
f132e61c98
simplify including DTB file using include_bytes!()
2019-07-24 22:41:26 +08:00
Jiajie Chen
08b59be1ae
Use updated ACPI crate to parse ACPI in x86
2019-07-17 09:43:49 +08:00
Jiajie Chen
0b0e364fcd
Use Option to replace usage of MaybeUninit in paging
2019-07-05 10:53:26 +08:00
Jiajie Chen
de6d5b6d54
Fix rv32 page table panic
2019-06-30 16:54:18 +08:00
Jiajie Chen
7a2383eba6
Fix unused unsafe for mipsel and riscv32
2019-06-30 16:26:54 +08:00
Jiajie Chen
5dc74c60d2
Use ..= instead of ...
2019-06-30 15:54:33 +08:00
Jiajie Chen
5f9cbc7b2c
Eliminate stable feature and unused unsafe warnings
2019-06-30 15:50:43 +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
087e18b202
Implement reboot in sys_reboot
2019-06-30 01:33:07 +08:00
Jiajie Chen
e77e09a949
Use IRQ_MANAGER in drivers
2019-06-30 01:11:40 +08:00
Jiajie Chen
dec07da035
Add irq manager for drivers
2019-06-29 21:19:45 +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
Jiajie Chen
a285b242e9
Fix compilation for mipsel
2019-06-16 22:02:25 +08:00
Jiajie Chen
7cfa6a1ee4
Make emmc less verbose
2019-06-16 09:48:50 +08:00
Jiajie Chen
26e06c5cf4
Fix rv paging abort issue
2019-06-16 09:19:38 +08:00
Jiajie Chen
f09dc0cce0
Fix compilation for riscv
2019-06-16 00:42:04 +08:00
Jiajie Chen
07b75b0a74
Fix fill_symbols aarch64 on macOS
2019-06-16 00:11:25 +08:00
Jiajie Chen
164e94a146
Separate SFSIMG and SFSQCOW2 and fix aarch64 qemu boot
2019-06-16 00:03:32 +08:00
Jiajie Chen
81c77586c6
Adapt fill_symbols for macOS
2019-06-15 23:43:01 +08:00
Jiajie Chen
611c2dd5bf
Align vm area to page boundary and fix musl's reclaim()
2019-06-15 22:26:28 +08:00
gjz010
da8699c44e
Merge branch 'dev' into shared-library
2019-06-09 19:32:00 +08:00
gjz010
7ad8c6a6d2
Shared library done in a formal way (using auxv). Now kernel loads both loader and program.
...
Known issues: not compatible with musl's reclaim_gaps (crash on __malloc_donate). Removing reclaim makes hello world work.
2019-06-09 19:25:43 +08:00
Jiajie Chen
5ecdb4e656
Change release to mode in Makefile
2019-06-08 22:36:41 +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
gjz010
da028c1f10
Added virtual memory support for aarch64 and x86_64.
...
1. Memory mapping at KSEG2_START(0xffff_fe80_0000_0000) will now be visible to all processes.
This feature is required by Loadable Kernel Module when mapping kernel module into memory.
2. Wrapping PageTableImpl::active() into ManuallyDrop, so that no extra "mem::forget" is required.
3. Added PageTableImpl::kernel_table(). This function is the same as active() on x86_64, but not the same on aarch64.
2019-06-07 15:57:18 +08:00
Jiajie Chen
8e5e798d78
Do not print to graphci console unless graphic=console on aarch64
2019-06-03 09:47:57 +08:00
Jiajie Chen
d8ea224283
Fix mgba merge
2019-06-03 09:46:27 +08:00
Jiajie Chen
a42d4b4d26
Merge branch 'mgba' into dev
2019-06-03 09:44:28 +08:00
Jiajie Chen
c8b0014c5f
Remove u-boot support
2019-06-03 09:36:01 +08:00
Jiajie Chen
8b06314828
Format code and update debug code
2019-06-03 09:33:02 +08:00
Jiajie Chen
33513ded94
Merge remote-tracking branch 'sdcard/geminilab' into sdcard
2019-06-03 09:27:21 +08:00
NagiNikaido
730f5d94a6
write() check passed. a minor bug fixed.
2019-05-30 17:06:13 +08:00
NagiNikaido
e20a2ca8e2
Now we can parse the partion entries. Yeeeeaaahh!
2019-05-30 14:57:20 +08:00
NagiNikaido
a3f8601d18
HUGE SUCCESS! Now we can fetch the first section of an SD card.
...
the bug of SCR fixed.
2019-05-30 01:49:44 +08:00
BenjaminPMLovegood
cb682392f4
add emmc option for qemu
2019-05-29 18:38:59 +08:00
NagiNikaido
6a00cf602b
tons of bugs fixed. moved sd_get_base_clock_hz() to mailbox
2019-05-29 18:32:43 +08:00
NagiNikaido
4b543a189f
debug info added.
2019-05-27 18:39:20 +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
PanQL
e8c38d748f
Merge pull request #54 from rcore-os/dev
...
Fix check_and_clone_cstr null check
2019-05-25 22:14:41 +08:00
PanQL
376ca53f3a
Merge branch 'mgba' into dev
2019-05-25 21:21:02 +08:00
PanQL
7df015842d
some about ioctl fb info
2019-05-25 21:08:43 +08:00
Yuhao Zhou
a708ee401d
Fix syscall in thinpad.
2019-05-25 20:05:27 +08:00
Yuhao Zhou
2b96462da3
Fix malta const.
2019-05-25 18:04:54 +08:00
BenjaminPMLovegood
d2f583a948
wrap init
2019-05-25 17:57:02 +08:00
Yuhao Zhou
65b121e55e
Merge remote-tracking branch 'origin/dev'
2019-05-25 14:51:45 +08:00
Yuhao Zhou
0938a0cb58
Update malta consts.
2019-05-25 14:33:52 +08:00
BenjaminPMLovegood
335f4701eb
modified
2019-05-25 14:28:55 +08:00
Jiajie Chen
35e909d96b
Fix check_and_clone_cstr null check
2019-05-25 13:51:21 +08:00
Jiajie Chen
cd49ee5093
Fix x86_64 fb depth
2019-05-25 11:39:42 +08:00
Jiajie Chen
235005608d
Do not hardcode fb addr in Vga
2019-05-25 08:29:54 +08:00
Jiajie Chen
30f94238b8
Yeild when polling for EAGAIN
2019-05-25 07:48:49 +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
aefbecb127
Merge remote-tracking branch 'origin/mgba' into dev
2019-05-24 15:21:07 +08:00
Jiajie Chen
e9c0bcadf7
Add graphic=console option and fix vga on x86_64
2019-05-24 15:20:39 +08:00
PanQL
fcc8fb4b2d
Merge branch 'mgba' into dev
2019-05-24 11:34:28 +08:00
PanQL
3b6d94efae
simple ioctl for fb is reachable
2019-05-24 09:33:03 +08:00
Jiajie Chen
e22cfd9b30
Fix compilation for u540
2019-05-24 09:22:49 +08:00
Jiajie Chen
0971181473
Fix compilation for rv32
2019-05-24 09:09:35 +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
f410aef5bc
Merge branch 'mipsel' into dev
2019-05-24 08:39:29 +08:00
Jiajie Chen
51c463e120
Remove non-AHCI pci id
2019-05-24 08:28:47 +08:00
Jiajie Chen
51868e1616
Eliminate some warnings
2019-05-23 23:31:36 +08:00
Jiajie Chen
d1d7fe44a7
Fix condvar race(maybe)
2019-05-23 23:21:02 +08:00
Jiajie Chen
f10421bf83
Revert "x86_64: enable interrupt during syscall. set TSS.sp0 through gs."
...
This reverts commit 72efa797e5
.
2019-05-23 23:13:47 +08:00
PanQL
9740983b2d
Merge branch 'mgba' into dev
2019-05-23 21:11:13 +08:00
PanQL
a6f211cef5
fix mmap for framebuffer
2019-05-23 20:59:04 +08:00
WangRunji
1a377ca7c3
x86_64: update bootloader. fix on real machine
2019-05-23 16:46:00 +08:00
WangRunji
9dec0bbda5
simplify copy_from_user
2019-05-23 13:06:39 +08:00
Jiajie Chen
8b07e7d31c
Fix extra parentheses
2019-05-23 08:20:00 +08:00
Harry Chen
3658e265a8
Update device tree file and add stub for SYS_RT_SIGQUEUE
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-05-23 02:19:42 +08:00
Harry Chen
0614e2b1aa
Merge branch 'dev' into mipsel
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-05-22 23:38:21 +08:00
Jiajie Chen
6f5414c531
Split router ports into different ifaces
2019-05-22 18:25:51 +08:00
Jiajie Chen
20da06add5
Fix rcore router for linear mapping
2019-05-22 14:37:59 +08:00
Jiajie Chen
c67f00d7ca
Use MaybeUninit for uninitialized
2019-05-22 14:23:04 +08:00
equation314
e63f11d199
console: support \t
2019-05-21 00:59:59 +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
f8c88baeea
nonblock stdin for mgba keyboard support
2019-05-20 10:28:27 +08:00
BenjaminPMLovegood
469e866dca
Merge branch 'geminilab' of github.com:GeminiLab/rCore into geminilab
2019-05-20 03:14:51 +08:00
BenjaminPMLovegood
e9588086be
sd_init
2019-05-20 03:14:37 +08:00
NagiNikaido
62654b99f9
SEND_SCR done & bug fixed.
2019-05-20 00:22:53 +08:00
PanQL
f9734b6134
mmap support for mgba's partical redraw
2019-05-19 17:09:05 +08:00
PanQL
545d9d301c
use copy_from_slice to speed up
2019-05-17 00:53:23 +08:00
Jiajie Chen
3cdd3231d8
Update enlarge heap and drivers provider
2019-05-16 08:47:22 +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
Jiajie Chen
6344f80a9b
Support efault fixup for riscv
2019-05-15 23:12:06 +08:00
Jiajie Chen
92a9674f66
Implement efault detection by fixup
2019-05-15 22:45:09 +08:00
Harry Chen
fbca9a6e3a
Add conditional compilation for mipsel, fix heap size for thinpad
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-05-14 00:21:04 +08:00
Harry Chen
22d29a6257
Revert "Revert "Fix trapframe.""
...
This reverts commit 6a83de7846
.
2019-05-14 00:11:25 +08:00
Harry Chen
6544093dc6
Revert "Revert "Save/restore FP registers when context switching (broken mipsel arch)""
...
This reverts commit b8f4ee2ce8
.
2019-05-14 00:11:22 +08:00
Harry Chen
b8f4ee2ce8
Revert "Save/restore FP registers when context switching (broken mipsel arch)"
...
This reverts commit d261b4e0b3
.
2019-05-13 23:53:52 +08:00
Harry Chen
6a83de7846
Revert "Fix trapframe."
...
This reverts commit 297c9d453d
.
2019-05-13 23:53:47 +08:00
Yuhao Zhou
297c9d453d
Fix trapframe.
2019-05-13 22:20:52 +08:00
Harry Chen
d261b4e0b3
Save/restore FP registers when context switching (broken mipsel arch)
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-05-13 21:18:25 +08:00
PanQL
9e4a3f9662
create virtual vga file, now can draw fb on user state
2019-05-13 20:57:03 +08:00
NagiNikaido
8c3323c4d4
mutex added.
2019-05-13 13:47:33 +08:00
NagiNikaido
edf9cf1225
nearly done. it seems that the architecture is not applausible. rust sucks.
2019-05-13 05:04:18 +08:00
Yuhao Zhou
6add7002fd
Update consts for MIPS.malta
2019-05-12 22:56:34 +08:00
Harry Chen
9203a612f8
Merge branch 'dev' into mipsel
2019-05-12 22:41:51 +08:00
Jiajie Chen
deba6e9204
Fix phys_to_virt
2019-05-12 15:32:30 +08:00
Jiajie Chen
221304d78a
Use phys_to_virt and virt_to_phys to replace the use of KERNEL_OFFSET
2019-05-12 15:28:42 +08:00
Jiajie Chen
28652ef685
Fix rv mask
2019-05-12 07:14:30 +08:00
Jiajie Chen
ba8f9370ba
Remove rv48 support, for it has no use and it's easy to add back when necessary
2019-05-12 01:46:55 +08:00
Jiajie Chen
5afd84e5d3
Finish rv64 with sv39 support
2019-05-12 01:44:49 +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
0d801eceb5
[WIP] Fix rv32 serial interrupt
2019-05-11 23:12:05 +08:00
Jiajie Chen
f6a54c398d
[WIP] rv32 can enter userland now
2019-05-11 23:10:19 +08:00
Jiajie Chen
cf6a7746f4
[WIP] update rv32 linear mapping
2019-05-11 22:50:41 +08:00
Yuhao Zhou
c1d139598c
Merge remote-tracking branch 'origin/dev' into mipsel
2019-05-11 18:24:20 +08:00
Jiajie Chen
d66df43ec0
[WIP] rv32 linear mapping
2019-05-11 12:21:58 +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
Jiajie Chen
8149793b9a
Fix typo in mips paging
2019-05-10 17:34:18 +08:00
Harry Chen
75b67fa575
Replace \n to \r\n in serial driver
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-05-10 17:25:49 +08:00
PanQL
66b783de21
should not be so rude
2019-05-10 14:56:14 +08:00
WangRunji
6e5b3e2515
fix broken pipe status. rustc works now!
2019-05-10 12:28:37 +08:00
Jiajie Chen
6bb11a5433
Reset router tx/rx fifo and fix tx length
2019-05-10 08:10:03 +08:00
WangRunji
fbd2aef916
fix page table racing by adding a global mutex
2019-05-10 00:11:09 +08:00
WangRunji
ba8d08d733
fix Process dropping by making proc.parent
a weak reference
2019-05-09 23:56:39 +08:00
WangRunji
9df9d01e68
impl deadlock detection
2019-05-09 22:27: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
Jiajie Chen
2653069a43
Implement tx for router driver
2019-05-09 17:54:10 +08:00
Jiajie Chen
5932372750
Initial rcore router device support
2019-05-09 17:08:28 +08:00
Harry Chen
324b64c2ed
Merge remote-tracking branch 'rcore/dev' into dev
2019-05-09 10:24:12 +08:00
Harry Chen
887a207c8b
Run cargo fmt
...
Signed-off-by: Harry Chen <i@harrychen.xyz>
2019-05-09 10:12:19 +08:00
Harry Chen
5b53e86c41
Merge remote-tracking branch 'origin/dev' into mipsel
2019-05-09 10:05:32 +08:00
WangRunji
75919dce41
x86_64: simplify IPI
2019-05-08 23:07:58 +08:00