1
0
mirror of https://github.com/rcore-os/rCore.git synced 2024-11-22 16:16:16 +04:00
Commit Graph

1255 Commits

Author SHA1 Message Date
Jiajie Chen
8f0b2702f0 Get mcontext back for pthread_cancel 2020-06-29 12:03:29 +08:00
Jiajie Chen
7ba001a0fa Document and cleanup signal code 2020-06-29 11:49:03 +08:00
Jiajie Chen
68609a0f7c Add yield to avoid starvation 2020-06-29 11:09:21 +08:00
Jiajie Chen
bc525e1902 Cleanup signal code 2020-06-28 23:21:22 +08:00
Jiajie Chen
25382e211e Support signal in sleep 2020-06-28 22:21:52 +08:00
Jiajie Chen
5165269f4b Cleanup signal code and move sig alt stack to thread 2020-06-28 21:35:40 +08:00
Jiajie Chen
d33448b91e Ease riscv32/64 check, fix riscv32 2020-06-26 23:39:27 +08:00
Jiajie Chen
611aaa5f01 Update dependencies 2020-06-26 23:23:57 +08:00
Jiajie Chen
00ac4c2dfa Remove thinpad, until we are able to test on it again 2020-06-26 22:31:40 +08:00
Jiajie Chen
2dca1399be Remove k210, until we are able to test on it again again 2020-06-26 22:30:01 +08:00
Jiajie Chen
1f9d7cd323 Use prebuilt image correctly 2020-06-26 22:11:56 +08:00
Jiajie Chen
e21a76cb50 Bump versions 2020-06-26 21:56:12 +08:00
Runji Wang
9d82b29517 move wait_for_interrupt from executor to kernel 2020-06-24 00:09:52 +08:00
Jiajie Chen
7479293a11 Cleanup code 2020-06-23 20:59:04 +08:00
Jiajie Chen
0290937833 Code cleanup 2020-06-23 20:46:36 +08:00
Jiajie Chen
d895f43d9a Fix bcm2837 serial 2020-06-23 19:59:36 +08:00
Jiajie Chen
55de8e6dcf Move raspi drivers out of arch, fix aarch64 trap handling and add spec.md 2020-06-22 22:51:32 +08:00
Jiajie Chen
a56e2b54e0 Fix is_page_fault in aarch64 2020-06-22 18:48:43 +08:00
Jiajie Chen
62de55de9d Use wrappers from riscv 2020-06-22 11:52:12 +08:00
Jiajie Chen
3aaaa28c41 Remove k210, until we are able to test on it again 2020-06-22 11:44:43 +08:00
Jiajie Chen
d08c14152b Fix aarch64 2020-06-21 23:36:48 +08:00
equation314
e218399113 aarch64: add bcm2835 sdhci as block driver
Now can load user programs from the SD card, but too slow to read/write
2020-06-21 18:55:29 +08:00
Jiajie Chen
458347c1c0 Fix aarch64 compilation 2020-06-21 15:54:15 +08:00
Jiajie Chen
fd59658355 Unify trap_handler interfaces 2020-06-21 11:38:31 +08:00
Jiajie Chen
1560e1c3f8 Fix riscv smp, maybe 2020-06-21 11:16:44 +08:00
Jiajie Chen
93f376ee8d Move sigset, add missing sfence_vma_all 2020-06-21 10:58:37 +08:00
Jiajie Chen
0086768392 Use tp to save hart id in riscv 2020-06-21 10:43:53 +08:00
Jiajie Chen
698732105b Set interrupt bits in plic 2020-06-21 08:59:15 +08:00
Jiajie Chen
61def0f1c9 Register uart16550 interrupt to plic 2020-06-21 08:53:09 +08:00
Jiajie Chen
5006ef952f Initial irq manager and add device tree registry 2020-06-21 08:04:49 +08:00
Jiajie Chen
d7def80d82 Remove unused rocket chip code 2020-06-20 23:04:37 +08:00
Jiajie Chen
3fd2d0b349 Remove unused router code and cleanup 2020-06-20 22:58:13 +08:00
Jiajie Chen
8ead1f85e8 Fix riscv fork 2020-06-20 22:47:20 +08:00
Jiajie Chen
f74eaeb11f Remove sbi console 2020-06-20 22:29:15 +08:00
Jiajie Chen
3ac4d7a607 Fix riscv external interrupt 2020-06-20 22:25:34 +08:00
Jiajie Chen
b3f86cc3d1 Use uart16550 as serial in riscv as well 2020-06-20 22:06:45 +08:00
Jiajie Chen
548495a149 Enable signal in riscv 2020-06-20 17:40:51 +08:00
Jiajie Chen
4971713518 Enable floating point in riscv 2020-06-20 17:37:09 +08:00
Jiajie Chen
b94b6aa09e Fix riscv interrupt 2020-06-20 17:16:57 +08:00
Jiajie Chen
57d923c1f9 Fix compilation for riscv 2020-06-20 16:53:18 +08:00
Jiajie Chen
88544bdd3c Move keyboard to drivers 2020-06-20 16:13:08 +08:00
Jiajie Chen
9732f2148d Move serial to drivers completely 2020-06-20 15:43:39 +08:00
Jiajie Chen
7644694158 Move COM1 to drivers 2020-06-20 15:13:52 +08:00
Jiajie Chen
5cc8e825ef Move rtc_cmos to drivers 2020-06-20 14:50:38 +08:00
Jiajie Chen
31bb2a839a Remove IDE 2020-06-20 14:38:05 +08:00
Jiajie Chen
c8573436e9 Split Driver trait 2020-06-20 14:35:59 +08:00
Jiajie Chen
d9234ccb4a More arch specific code cleanup 2020-06-20 14:07:44 +08:00
Jiajie Chen
08fc526521 Port to riscv #1 2020-06-20 10:06:35 +08:00
Jiajie Chen
fbc8757c22 Implement futex timeout 2020-06-20 07:55:20 +08:00
Jiajie Chen
f0c418e969 Fix sleeping and cleanup 2020-06-19 23:07:41 +08:00
Jiajie Chen
8bc8ab19e2 Add missing woken in futex 2020-06-19 21:30:26 +08:00
Jiajie Chen
4af73f5650 Fix sys_clone 2020-06-19 21:27:40 +08:00
Jiajie Chen
c5095f2316 Re implement futex by async, fix clone 2020-06-19 21:13:18 +08:00
Jiajie Chen
7672dd45e3 Add thread table, allocate tid instead of pid 2020-06-19 18:53:33 +08:00
Jiajie Chen
c230cd7b63 Make read() async 2020-06-19 14:20:12 +08:00
Jiajie Chen
17ba8d6262 Fix sys_exec when failed early 2020-06-19 13:56:23 +08:00
Jiajie Chen
dca8f3f598 Eliminate vm locking because vmtoken won't change 2020-06-19 13:02:17 +08:00
Jiajie Chen
39e750517c Re-construct vm in place in sys_exec 2020-06-19 12:59:12 +08:00
Jiajie Chen
e8046ec728 Fix ucore badarg 2020-06-19 11:37:08 +08:00
Jiajie Chen
33291ff5d3 Fix user fixup handling 2020-06-19 11:34:23 +08:00
Jiajie Chen
274addfc34 Fix page switching problem 2020-06-19 11:01:11 +08:00
Jiajie Chen
990bb6a4a1 Implement copy_to_user, use UserPtr in more places 2020-06-19 09:09:42 +08:00
Jiajie Chen
3d9a1a7356 Move clear child tid and remove kstack 2020-06-18 21:07:11 +08:00
Jiajie Chen
252520f336 Fix has_signal_to_do 2020-06-18 20:44:46 +08:00
Jiajie Chen
4613fef11b Rename and add comments to termios 2020-06-17 08:38:33 +08:00
Jiajie Chen
2a914ec011 Merge stdio and tty 2020-06-17 08:25:13 +08:00
Jiajie Chen
af853431d6 Use u8 in stdin 2020-06-17 08:05:24 +08:00
Jiajie Chen
eac5baa2ee Fix commented code 2020-06-16 21:37:56 +08:00
Jiajie Chen
96793936e9 Fix sys_wait4 finally 2020-06-16 20:19:09 +08:00
Jiajie Chen
c6818ccbb6 Store strong ref in PROCESSES, fix sys_wait4 2020-06-16 19:56:45 +08:00
Jiajie Chen
c552765622 Fix sys_wait4 2020-06-16 18:27:54 +08:00
Jiajie Chen
61a000798c Refactor process mod 2020-06-16 17:39:16 +08:00
Jiajie Chen
8bd384d048 Fix vfork 2020-06-16 17:09:44 +08:00
Jiajie Chen
294cbb5b44 Cleanup unused code 2020-06-16 16:16:45 +08:00
Jiajie Chen
9a61b334b1 Fix serial console 2020-06-16 10:02:56 +08:00
Jiajie Chen
4c9e956225 Add event bus for polling stdin 2020-06-16 10:01:22 +08:00
Jiajie Chen
5d05bccdd5 Add UserPtr, rewrite poll by async 2020-06-16 09:31:54 +08:00
Jiajie Chen
bc845fa9ff Fix thread switching 2020-06-15 22:53:12 +08:00
Jiajie Chen
172e2e75e0 Use async for syscall 2020-06-15 20:51:20 +08:00
Jiajie Chen
4cfead4c73 Use trapframe-rs 2020-06-15 19:48:17 +08:00
Jiajie Chen
a73fdde6ac Add executor and naive-timer 2020-06-15 18:38:59 +08:00
jiegec
59428269c7 Re-generate riscv patch on newer nightly 2020-06-15 17:47:44 +08:00
Jiajie Chen
18f862ca48 Upgrade aarch64 for llvm_asm change 2020-06-15 17:28:48 +08:00
Runji Wang
3ae186de10 update dependencies 2020-06-15 17:14:41 +08:00
Jiajie Chen
39ffdbb3e7 Bump to nightly-2020-06-04 and use llvm_asm instead of asm 2020-06-15 16:56:21 +08:00
Jiajie Chen
1c43d6044f Format code 2020-06-15 15:13:09 +08:00
Jiajie Chen
ad97e2ab13 Fix shmget conflict 2020-06-15 15:09:07 +08:00
Jiajie Chen
833faacf83 Merge branch 'master' into pull-30-merge 2020-06-15 15:07:29 +08:00
Runji Wang
eaa3b42f5d clean and refactor code 2020-06-15 12:34:24 +08:00
Jiajie Chen
f85f62dd81 Cleanup unneeded commented code 2020-06-12 09:50:43 +08:00
Chen
1176446f83
Merge branch 'master' into EatenBagpipe-master 2020-06-12 09:47:57 +08:00
Jiajie Chen
2fe309f6c8 Fix compilation for riscv32 2020-06-12 09:33:19 +08:00
Jiajie Chen
56eaa83e79 Fix compilation for aarch64 2020-06-12 09:18:10 +08:00
Jiajie Chen
dfa963ad04 Guard fpe by arch 2020-06-12 09:11:19 +08:00
Jiajie Chen
5b01f1b6ad Add missing functions for riscv 2020-06-12 09:10:25 +08:00
Jiajie Chen
ad4ea951e3 Don't enable kvm by default 2020-06-12 08:53:43 +08:00
Jiajie Chen
12a29297ba Revert part of changes 2020-06-12 08:50:07 +08:00
Liu Xiaoyi
b41147f436
Fixed RISC-V tlb not flushed during context switch
Added a missing SFENCE.VMA
2020-06-08 16:39:46 +08:00
function2-llx
c157890f33 run cargo fmt 2020-06-06 04:27:19 +08:00
function2-llx
3d83f84556 fix sigaltstack 2020-06-06 04:04:50 +08:00