Commit Graph

406 Commits

Author SHA1 Message Date
Tomoki Shirasawa
fef946e5ff support PTRACE_GETREGS 2014-10-15 14:55:49 +09:00
Tomoki Shirasawa
4b46330624 support ptrace(PTRACE_PEEKUSER, ...) 2014-10-15 14:54:33 +09:00
Naoki Hamada
a101aa0534 ptrace: Temporal fix for signal inconsistency. 2014-10-15 14:52:32 +09:00
Naoki Hamada
1f120b929b ptrace: Make unimplemented ptrace requests return error. 2014-10-15 14:50:11 +09:00
Masamichi Takagi
f28eb0a672 Fix taking exit status when wait4()-ing stopped 2014-10-15 14:49:36 +09:00
Masamichi Takagi
95dd193fd6 Fix reporting of having done execve to ptracer 2014-10-15 14:49:23 +09:00
Naoki Hamada
2997274470 Make __WCLONE option for wait4(2) and flags for clone(2) work properly. 2014-10-15 14:45:58 +09:00
Masamichi Takagi
66db108dd3 Use erase-safe Ver. of list traversal in waitpid 2014-10-15 14:42:52 +09:00
Masamichi Takagi
013d3e95c2 Fix manipulation of fork_tree_node for ptrace 2014-10-15 14:42:17 +09:00
Masamichi Takagi
658b88fd7b Modify spacing 2014-10-15 14:40:47 +09:00
Naoki Hamada
da17625be9 gdb: definitions for ptrace() and syscall part of TRACEME 2014-10-15 14:30:17 +09:00
Masamichi Takagi
dbecaa2fc8 Add ptrace functions of job-control and signal
Note that a forked process automatically becomes ptraced state in this
commit.
2014-10-15 14:28:55 +09:00
NAKAMURA Gou
aa05f00e7e don't map syscall pages into process space
Request pages, response pages, and a doorbell page are mapped into
process space to enable user processes to delegate system calls
directly to mcctrl/mcexec.

This commit removes these mappings for the following reasons.
- These mappings cause a memory leak in current fork() implementation.
- These mappings are not used.
- These mappings do not function properly.
  And the fix which corrects function of these mappings is not easy.
2014-10-10 16:20:38 +09:00
NAKAMURA Gou
6415559a81 procfs: use current cpu's syscall_channel 2014-10-10 16:20:38 +09:00
Tomoki Shirasawa
658aa18ade add memory debug (kmalloc/kfree)
* support "memdebug" mckernel option
* check buffer overrun when memory free and next mcexec run
* check double free
* check memory leak when next mcexec run
2014-10-07 15:45:16 +09:00
NAKAMURA Gou
905fb9abb6 devobj: relax the size limit to 512 pages 2014-09-25 18:07:31 +09:00
Tomoki Shirasawa
a0c5d5c5de Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-23 23:18:27 +09:00
Tomoki Shirasawa
39f36120c1 support sigqueue 2014-09-23 23:17:53 +09:00
Masamichi Takagi
a7b0880a8d Make findthread_and_lock take ihk_spinlock_t ** 2014-09-23 12:03:48 +09:00
Naoki Hamada
43e54dcf85 procfs: fix for http://postpeta.pccluster.org/redmine/issues/119#note-30 2014-09-22 10:46:33 +09:00
bgerofi@riken.jp
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
NAKAMURA Gou
e5917e6bf1 Revert "fix warnings"
This reverts commit fbd33470e7.
2014-09-17 19:59:37 +09:00
NAKAMURA Gou
f267b65fba Revert "marker"
This reverts commit b361012563.
2014-09-17 19:59:36 +09:00
NAKAMURA Gou
b13b8e91b2 Revert "exit_group 時に空きページ数を表示する"
This reverts commit 219291f40f.
2014-09-17 19:59:33 +09:00
NAKAMURA Gou
7e12f0db72 Revert "テスト支援コード"
This reverts commit 054cb2ada2.
2014-09-17 19:59:32 +09:00
NAKAMURA Gou
776dfff734 Revert "terminate するときに空きページ数を表示するようにした"
This reverts commit d4ffe7db8d.
2014-09-17 19:59:29 +09:00
NAKAMURA Gou
d692b57a67 Revert "idle 開始時に free_list の状況を表示する"
This reverts commit ec47968a48.
2014-09-17 19:59:27 +09:00
NAKAMURA Gou
c9f8bb0201 mmap: support device mapping (in progress) refs #218 2014-09-17 19:52:00 +09:00
NAKAMURA Gou
438c7fd784 add devobj a new memobj 2014-09-17 19:48:02 +09:00
NAKAMURA Gou
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
NAKAMURA Gou
f641090a7e support uncachable on-demand mapping 2014-09-17 19:47:58 +09:00
NAKAMURA Gou
ec47968a48 idle 開始時に free_list の状況を表示する 2014-09-17 19:46:52 +09:00
NAKAMURA Gou
d4ffe7db8d terminate するときに空きページ数を表示するようにした 2014-09-17 19:46:50 +09:00
NAKAMURA Gou
054cb2ada2 テスト支援コード
- vm_range_list のテスト支援コード
- vm_range 一致確認用関数追加
  できれば、指定範囲内の変更を無視させたいのだが、
  指定範囲内の変更のために split されたエントリを無害と判断できない
- page table のテスト支援コード
2014-09-17 19:46:48 +09:00
NAKAMURA Gou
219291f40f exit_group 時に空きページ数を表示する 2014-09-17 19:46:46 +09:00
NAKAMURA Gou
b361012563 marker 2014-09-17 19:46:41 +09:00
NAKAMURA Gou
fbd33470e7 fix warnings 2014-09-17 19:46:39 +09:00
Naoki Hamada
d7436652bf procfs: add support for <pid>/mem files and ad hoc fix for memory incoherency. 2014-09-17 15:49:47 +09:00
Tomoki Shirasawa
878ba35804 /proc/mcos?/<pid>/task/<tid>/stat support 2014-09-15 19:21:27 +09:00
Balazs Gerofi bgerofi@riken.jp
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
bgerofi@riken.jp
225509786f do_fork(): fix variable name when DEBUG_PRINT_SC enabled 2014-09-11 16:58:59 +09:00
Masamichi Takagi
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
Masamichi Takagi
c78be27442 Support SIGSTOP and SIGCONT 2014-09-10 18:19:39 +09:00
Masamichi Takagi
7ca4ca4d37 Revert "Support SIGSTOP and SIGCONT"
This reverts commit 2325d47952.
2014-09-10 18:19:17 +09:00
Masamichi Takagi
2325d47952 Support SIGSTOP and SIGCONT 2014-09-10 17:01:21 +09:00
Masamichi Takagi
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
Tomoki Shirasawa
cee647aee4 sigsuspend restore sigmask 2014-09-09 13:54:36 +09:00
Tomoki Shirasawa
d6aef3aa2c copy sigmask from parent process to child 2014-09-09 13:53:25 +09:00
Masamichi Takagi
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
bgerofi@riken.jp
0de6a30426 wait4(): do not return ECHILD when child exists but not in PS_ZOMBIE state yet 2014-09-05 18:28:40 +09:00