56 Commits (da58486be5b5c772dc9fe64befa56c04d5022973)

Author SHA1 Message Date
WangRunji da58486be5 refactor syscall: move all context and functions to struct Syscall
6 years ago
WangRunji 08d10522ff impl sys_set_tid_address. ignore invalid 'clear_child_tid' on exit
6 years ago
WangRunji 6c988c4bfd note potential lost wakeup problem in Condvar. fix some use case.
6 years ago
WangRunji c885ea6d77 impl pseudo INode '/proc/self/exe'
6 years ago
Jiajie Chen bd158e4e74 Do not panic when exec file is invalid
6 years ago
WangRunji a25c8132fe delay mapping file
6 years ago
WangRunji 5bc6395b23 fix sys_exec
6 years ago
WangRunji 27f5c7b2e4 detach thread to auto recycle tid. fix #25
6 years ago
WangRunji 58271c7c8a convert user ptr to reference on check
6 years ago
chyyuu c853eda9b3 disable so many wait4 LOG info
6 years ago
WangRunji ab62d542fd allocate pid independently from tid. fix sys_fork return value.
6 years ago
chyyuu 0d790f2dc5 add LOG info in sys_exec and new_user, add env var in run_user_shell
6 years ago
Jiajie Chen cf3fd0ec93 Fix ioctl numbers and sys_poll for mipsel
6 years ago
chyyuu 00685d9205 set 8MB user stack size, add more flags for sys_clone
6 years ago
WangRunji f74a3b8e8b by default: use busybox sh, disable log, build in release mode
6 years ago
WangRunji 520bb2d957 change args from Iter to Vec<String>
6 years ago
Jiajie Chen 0ff24fe589 Implement env support in sys_exec
6 years ago
chyyuu 56e472c8f8 fix bug: sys_exec should name as exec_path, then loader can find the exec file.
6 years ago
Jiajie Chen ff50a45396 Now ready to use busybox sh for user shell
6 years ago
Jiajie Chen b5f194d20f Fix get_ppid for init process
6 years ago
Jiajie Chen 8115256162 Check exec args
6 years ago
WangRunji b836b11792 reformat code using `cargo fmt`
6 years ago
Jiajie Chen adb66167f8 Fix a potential racing in Condvar
6 years ago
Jiajie Chen 285ffc7618 Move absolute/relative path resolution to rcore-fs, implement dummy sys_fchown, sys_fchownat and sys_symlinkat
6 years ago
Jiajie Chen 556d263d8e Implement sys_openat and sys_renameat
6 years ago
Jiajie Chen 547baa9ecd Implement symlink following
6 years ago
WangRunji 5ddd5ece8d rename, simplify
6 years ago
WangRunji 17e644e54e unimportant changes
6 years ago
Jiajie Chen 8860f1e4a3 Implement mapping from riscv to x86_64 syscall numbering
6 years ago
Jiajie Chen a4c1d1231b Use rust user shell instead of kernel shell and fix sys_exec
6 years ago
Jiajie Chen af63d937d6 Add udp remote endpoint state
6 years ago
Jiajie Chen b7aee438db Fix sys_kill and add killtest
6 years ago
Jiajie Chen 17c08ce26c Fix sys_exit/sys_exit_group deadlock
6 years ago
WangRunji 98b3b12c96 continue refactoring process
6 years ago
Jiajie Chen 8cb11b7aa8 Implement tid/pid/ppid separation
6 years ago
Jiajie Chen 6697861860 Add is_listening to TcpSocketState, support sys_poll for listen
6 years ago
WangRunji 84c12ae6e1 rename functions. ignore readonly in mmap to avoid page fault.
6 years ago
WangRunji ab63c933c2 fix sys_nanosleep
6 years ago
WangRunji 491353acfd impl sys_futex. fix clear_child_tid for thread exit
6 years ago
WangRunji 84b2af3cdb refactor sys_close_internal to SocketWrapper::drop
6 years ago
WangRunji dc55238989 fix sys_clone newtls
6 years ago
WangRunji d51c52902d minimal impl sys_clone
6 years ago
WangRunji c3563192b5 fix SysResult::Ok(isize -> usize)
6 years ago
WangRunji fdc28724a3 fix sys_wait -1. update fs.
6 years ago
Jiajie Chen 35dad6853f Enable SSE and save FP registers in trapframe, implement sys_pread, sys_uname and sys_sched_getaffinity, support FIXED in mmap
6 years ago
Jiajie Chen 8809c6ca7f Improve sys_wait and replace CR with LF
6 years ago
Jiajie Chen 6e7dc9e349 Minor fixes around thread pool, writev, fs and implement gettid
6 years ago
Jiajie Chen cca53536d1 Implement sys_pipe, fix sys_chdir, add dummy sys_setuid, and set an ephermal port when binding port 0
6 years ago
Jiajie Chen a1576b12ad Fix dup2 socket ref count and sys_accept, close sockets on sys_exit
6 years ago
Jiajie Chen c5aa5922bd Fix forking and sys_dup2, implement sys_getsockopt and update sys_exec
6 years ago