Commit Graph

135 Commits

Author SHA1 Message Date
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
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
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
f535670100 fix pipe02 2014-08-27 16:50:01 +09:00
78d10cce80 support process group 2014-08-18 17:08:28 +09:00
663c121308 interrupt syscall sufficient threads 2014-08-18 16:49:49 +09:00
23ab6032ba don't close /dev/mcos 2014-08-18 16:25:24 +09:00
8c1c8a40d1 use madvise() when zap_vma_ptes() fails 2014-08-07 17:53:26 +09:00
b4910ec33f use vm_insert_page() if 'struct page' exists 2014-08-07 17:53:26 +09:00
fe39d56554 use mixed mapping instead of PFN mapping 2014-08-07 17:53:26 +09:00
a79a0a618d drop VM_IO because it's not MMIO 2014-08-07 17:53:26 +09:00
9fda245490 execve(): return correct error value when failure (errno) 2014-08-07 14:35:15 +09:00
3fa6818962 Merge from master. 2014-07-31 18:30:39 +09:00
b58682dd73 Merge branch 'master' of postpeta.pccluster.org:mckernel into gdb 2014-07-31 10:31:45 +09:00
27bfe37b80 execve(): fix looking up relative path and checking executable permission 2014-07-29 15:48:14 +09:00
f1e39f5fb2 execve(): find executable first in COKERNEL_PATH and then in PATH if executable name is not absolute 2014-07-29 11:14:09 +09:00
e5d3407d8e child mcexec don't print signal terminate message 2014-07-29 11:10:11 +09:00
c83e80ad91 execve(): clear host user-space PTEs before context switching 2014-07-28 18:57:56 +09:00
17730617e1 when wakeup for syscall and recieve signal occur in the same timing, a program is freezed. 2014-07-25 10:54:30 +09:00
10190e9ed6 prepare for a condition variable for each process. (Redmine#193) 2014-07-25 09:17:43 +09:00
01f52e73e1 Clarification. 2014-07-23 14:06:59 +09:00
dbdaf0ed32 Fix for demand paging and documentation. 2014-07-23 10:23:02 +09:00
cb61739c2b Deleted debug flags & al. 2014-07-18 15:45:40 +09:00
3e8083efc1 Prepare for a core file image. 2014-07-17 15:19:25 +09:00
cb9d346567 Fixed wrong %x to %lx. 2014-07-11 18:48:15 +09:00
ed9da789e6 Created gencore() and minor aestetical changes.
modified:   executer/kernel/mcctrl.h
	modified:   executer/kernel/syscall.c
	modified:   kernel/include/syscall.h
	modified:   kernel/mem.c
2014-07-02 16:23:32 +09:00
fd6f0c4075 Bookkeeping for error.
modified:   syscall.c
2014-07-02 14:00:46 +09:00
4f1b3f22ef Working code for infrastructure.
modified:   executer/kernel/mcctrl.h
	modified:   executer/kernel/syscall.c
	modified:   kernel/include/syscall.h
	modified:   kernel/mem.c
2014-07-02 12:39:08 +09:00
b3c7676425 Minor change.
modified:   syscall.c
2014-07-01 19:03:50 +09:00
53a80e0720 Experimental implementation of map & write.
Data is still dummy.
Not even compiled.
	modified:   executer/kernel/mcctrl.h
	modified:   executer/kernel/syscall.c
	modified:   kernel/include/syscall.h
	modified:   kernel/mem.c
2014-07-01 16:50:25 +09:00
83ced89fa3 Initial commit for core dump.
We can create a dummy core file when gpe occurs.
	modified:   executer/kernel/mcctrl.h
	modified:   executer/kernel/syscall.c
	modified:   kernel/include/syscall.h
	modified:   kernel/mem.c
2014-07-01 16:03:11 +09:00
2f4f3628f9 support tgkill 2014-06-10 10:42:29 +09:00
2331309d2f mcexec: use optind instead of shifting argv[] for arguments passing to remote app 2014-05-27 17:52:56 +09:00
514d75b685 execve(): supporting syscall and mcexec modifications 2014-05-22 17:39:13 +09:00
badb450153 more detailed report in memory management error path 2014-05-22 17:27:39 +09:00
6a8e75dda0 fix argc bug 2014-05-22 17:11:10 +09:00
6ca8b77cf2 fix argv/argc bug 2014-05-22 16:39:07 +09:00
84c18ef38e MCEXEC_UP_TRANSFER: generalize MCEXEC_UP_LOAD_IMAGE ioctl() to allow transfer in both directions 2014-05-22 12:42:23 +09:00
f810aa56b8 refactoring mcexec's main() in preparation for execve() 2014-05-21 21:55:49 +09:00
22d9d6d3a6 use dprintk() for per process data structure debug messages 2014-05-19 12:49:36 +09:00
81a78be20a clean up per process structure in exit_group() and fix wait4() on self bug 2014-05-19 12:49:36 +09:00
426c67861c introduction of mcctrl_per_process data to keep track remote page tables on a per-process basis 2014-05-13 00:22:56 +09:00
a5b8d388e9 dprintf exit status 2014-05-12 10:30:39 +09:00
cc8317643e SIGPIPE fix (ltp writev) 2014-04-25 08:43:08 +09:00
0e348e6295 SIGCHLD and wait4(), i.e. wait()/waitpid() implementation 2014-04-23 13:33:18 +09:00
39a86fad18 support execute disabled stack 2014-04-11 14:59:47 +09:00