Commit Graph

520 Commits

Author SHA1 Message Date
e2dc359ba7 execve(): iterate and close fds with FD_CLOEXEC, resolves LTP fcntl07_64 2014-09-17 15:32:53 +09:00
878ba35804 /proc/mcos?/<pid>/task/<tid>/stat support 2014-09-15 19:21:27 +09:00
f7780cfe93 kmalloc()/kfree(): allow CPU cores to kfree() a piece of memory that was kmalloc()ed by another core through embedding CPU id into malloc_header 2014-09-14 23:22:43 +09:00
225509786f do_fork(): fix variable name when DEBUG_PRINT_SC enabled 2014-09-11 16:58:59 +09:00
2a0e9c689f Fixed mckernel procfs so that the host kernel does not complain about leaking. 2014-09-11 15:25:52 +09:00
7e6fbc4854 Support negative first argument in waitpid
Make waitpid wait any process with the pgid of -<1st-arg> when setting
minus value to the first argument.
2014-09-11 15:20:32 +09:00
35dc8a3368 Issue IPI if needed when sending SIGSTOP 2014-09-10 21:21:17 +09:00
c78be27442 Support SIGSTOP and SIGCONT 2014-09-10 18:19:39 +09:00
7ca4ca4d37 Revert "Support SIGSTOP and SIGCONT"
This reverts commit 2325d47952.
2014-09-10 18:19:17 +09:00
2325d47952 Support SIGSTOP and SIGCONT 2014-09-10 17:01:21 +09:00
b50e205a61 Support pid of zero when calling waitpid
Make waitpid wait any process with the same pgid of the caller when
setting zero to the pid argument.
2014-09-10 17:01:05 +09:00
ac40b96c24 execve(): support for ETXTBSY via a new ioctl() call to test in kernel space with open_exec() 2014-09-10 14:09:11 +09:00
cee647aee4 sigsuspend restore sigmask 2014-09-09 13:54:36 +09:00
d6aef3aa2c copy sigmask from parent process to child 2014-09-09 13:53:25 +09:00
19fa391d4f Implement vfork system call
It's implemented by making it issue clone system call internally with
the arguments of (SIGCHLD, 0, 0, 0, 0). The feature in which the caller
of vfork blocks until the child issues exit/execve is not implemented.
Refer to #233.
2014-09-08 17:06:05 +09:00
0de6a30426 wait4(): do not return ECHILD when child exists but not in PS_ZOMBIE state yet 2014-09-05 18:28:40 +09:00
efc817de92 Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-05 17:20:50 +09:00
95781d59e3 Fix for eof. 2014-09-05 17:15:54 +09:00
a06e5eb47e Bug fixes. 2014-09-05 16:20:15 +09:00
15c9ae4c8d execve(): lookup_exec_path() support for symlinks based on COKERNEL_EXEC_ROOT 2014-09-04 18:11:41 +09:00
e45632c9f8 Check "options" argument in wait4
Make wait4 return -EINVAL when not supported options are requested.
2014-09-04 17:32:26 +09:00
a16c3170ef Correct wait4 when the child is not found
Make wait4 return -ECHILD when pid is specified and it's not found.
2014-09-04 17:11:05 +09:00
c939a372b0 Added mcexec hack. 2014-09-04 16:44:30 +09:00
12ef361436 Removed unneeded variable. 2014-09-04 15:04:22 +09:00
0f95a84293 Migrated. 2014-09-04 14:58:04 +09:00
fea02b0ece Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-03 18:33:32 +09:00
7da4b8b8dc fix sched_[sg]etaffinity(tid==0, ...) (LTP sched_getaffinity01) 2014-09-03 18:22:27 +09:00
cd366de097 execve():
- COKERNEL_PATH and COKERNEL_EXEC_ROOT support for co-kernels with different architecture than the host (i.e., Xeon Phi).
- fix various error codes: ENAMETOOLONG, ENOENT, ENOTDIR, EACCES, ENOEXEC, EFAULT.
- support for shell code execution.
2014-09-03 18:15:43 +09:00
319590910a Almost implemented. 2014-09-03 15:20:39 +09:00
308987c1ee infrequent fail LTP pipe02 2014-09-03 15:17:44 +09:00
d0b6aa1047 Merge branch 'bug201.get_user_pages' 2014-09-03 11:24:22 +09:00
7b825c0a65 fix coredump (ltp abort01) 2014-09-03 10:56:41 +09:00
4177f1c9cd TODO: get_page()ed pages have to be put_page()ed
The pages which get_page() has been called with should be recorded.
Because these pages have to be passed to put_page()
before they are freed.
2014-09-02 15:43:10 +09:00
f2e0e42ba4 mcexec: report proper error when __NR_munmap fails 2014-09-02 15:43:08 +09:00
431adf7e7c mcctrl: report success when __NR_munmap succeeds 2014-09-02 15:43:07 +09:00
34854d3c93 ltp times03 2014-09-01 14:27:31 +09:00
650088774d Fix for typo. 2014-08-28 15:02:59 +09:00
6245a8eb63 Aesthetical changes. 2014-08-28 15:02:10 +09:00
34c4dd8d77 Separated procfs functions for mcctrl. 2014-08-28 15:00:39 +09:00
3293bfaa1e Fix for generalization. 2014-08-28 14:41:32 +09:00
ca1bf7b7fa Remove debug error. 2014-08-28 09:16:50 +09:00
cb4b00ba97 Added debug messages. 2014-08-28 09:16:50 +09:00
c783ec8e11 Implemented procfs. 2014-08-28 09:16:50 +09:00
5775d3e6da Preliminary implementation for procfs. 2014-08-28 09:16:50 +09:00
f535670100 fix pipe02 2014-08-27 16:50:01 +09:00
bc8b441358 process table traversing must be under interrupt inhibition
add finding process table function (findthread_and_lock/process_unlock)
2014-08-25 13:24:06 +09:00
d2537e0963 sigsuspend don't wait SIGSTOP, not SIGTERM 2014-08-21 17:25:02 +09:00
f4818e9c09 don't force terminate, when SIGTERM recieved 2014-08-21 17:22:11 +09:00
dd8b2a8f15 sigaction returns -EINVAL, when sig == SIGKILL or SIGSTOP 2014-08-21 14:04:38 +09:00
78d10cce80 support process group 2014-08-18 17:08:28 +09:00