Commit Graph

165 Commits

Author SHA1 Message Date
43e6de8124 fork()/execve()/ETXTBSY: sync parent a child duing fork() to make sure child holds a reference to the executable in the host kernel using open_exec() 2014-09-25 15:14:18 +09:00
a0c5d5c5de Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-23 23:18:27 +09:00
39f36120c1 support sigqueue 2014-09-23 23:17:53 +09:00
43e54dcf85 procfs: fix for http://postpeta.pccluster.org/redmine/issues/119#note-30 2014-09-22 10:46:33 +09:00
55aeceb1bf execve()/creat(): handle NULL env correctly and support for holding executable file so that write access returns ETXTBSY 2014-09-18 21:25:04 +09:00
f50132bd93 Revert "SC_DEBUG 時のエラーを消した"
This reverts commit 7dfa88ae6b.
2014-09-17 19:59:25 +09:00
7a5764bda4 Revert "mcexec のデバッグ出力を改善"
This reverts commit fb38917bf6.
2014-09-17 19:59:10 +09:00
c9f8bb0201 mmap: support device mapping (in progress) refs #218 2014-09-17 19:52:00 +09:00
fdb86115a8 add pager requests for device mapping
- PAGER_REQ_MAP
  map specified file, and create a private device pager.
- PAGER_REQ_UNMAP
  destroy specified private device pager, and unmap related mapping.
- PAGER_REQ_PFN
  report a physical address.
2014-09-17 19:48:00 +09:00
fb38917bf6 mcexec のデバッグ出力を改善 2014-09-17 19:46:55 +09:00
7dfa88ae6b SC_DEBUG 時のエラーを消した 2014-09-17 19:46:54 +09:00
d7436652bf procfs: add support for <pid>/mem files and ad hoc fix for memory incoherency. 2014-09-17 15:49:47 +09:00
e2dc359ba7 execve(): iterate and close fds with FD_CLOEXEC, resolves LTP fcntl07_64 2014-09-17 15:32:53 +09:00
2a0e9c689f Fixed mckernel procfs so that the host kernel does not complain about leaking. 2014-09-11 15:25:52 +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
efc817de92 Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-05 17:20:50 +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
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
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
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
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