0942bf0ce0
make dkprintf() evaluate its parameters always
...
Parameters of dkprintf() should be evaluated even if dkprintf() is
disabled. Because this enables to find expression of parameter obsolete
and to avoid unnecessary compiler warnings such as "unused variable".
2014-12-22 16:58:03 +09:00
9c94e90007
use ftn->tid instead of proc->tid
2014-12-22 16:58:02 +09:00
8909597499
clone(): support for handling CLONE_SIGHAND and CLONE_VM flags separately
2014-12-04 16:55:17 +09:00
8f30e16976
when mcexec is killed by SIGKILL, terminate mckernel process (BUG#259)
2014-11-27 16:13:52 +09:00
89acf5c5d6
support for AT_RANDOM auxiliary entry on the process stack (needed for _dl_random in glibc)
2014-11-11 08:48:27 +09:00
3fe7e39607
some variables definition are gathered to fork_tree_node from process.
...
- remove both-defined: pid, pgid, status
- move to fork_tree_node: tid
- make dummy fork_tree_node for idle_process.
2014-10-29 16:54:09 +09:00
11947a4ce3
initialize and propagate a cpu affinity (temporary fix)
...
This fix is only intended to work an OpenMP program.
It is necessary to investigate behavior of linux and reimplement this
fix.
2014-10-20 15:21:49 +09:00
f195b9c675
don't use COW pages in private anonymous mapping (quick fix)
2014-10-17 23:25:15 +09:00
d2cb890cdd
idle(): recheck runq just before cpu status check
...
There is a problem which causes wait4(2) hang when wait4(2) called by a
process races with its child process termination.
This is a quick fix for this problem. See idle().
refs #271
2014-10-15 17:58:27 +09:00
758796bb69
idle(): cosmetic changes
2014-10-15 17:58:27 +09:00
95dd193fd6
Fix reporting of having done execve to ptracer
2014-10-15 14:49:23 +09:00
2997274470
Make __WCLONE option for wait4(2) and flags for clone(2) work properly.
2014-10-15 14:45:58 +09:00
013d3e95c2
Fix manipulation of fork_tree_node for ptrace
2014-10-15 14:42:17 +09:00
658b88fd7b
Modify spacing
2014-10-15 14:40:47 +09:00
da17625be9
gdb: definitions for ptrace() and syscall part of TRACEME
2014-10-15 14:30:17 +09:00
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
a7b0880a8d
Make findthread_and_lock take ihk_spinlock_t **
2014-09-23 12:03:48 +09:00
7e12f0db72
Revert "テスト支援コード"
...
This reverts commit 054cb2ada2 .
2014-09-17 19:59:32 +09:00
d692b57a67
Revert "idle 開始時に free_list の状況を表示する"
...
This reverts commit ec47968a48 .
2014-09-17 19:59:27 +09:00
f641090a7e
support uncachable on-demand mapping
2014-09-17 19:47:58 +09:00
ec47968a48
idle 開始時に free_list の状況を表示する
2014-09-17 19:46:52 +09:00
054cb2ada2
テスト支援コード
...
- vm_range_list のテスト支援コード
- vm_range 一致確認用関数追加
できれば、指定範囲内の変更を無視させたいのだが、
指定範囲内の変更のために split されたエントリを無害と判断できない
- page table のテスト支援コード
2014-09-17 19:46:48 +09:00
d6aef3aa2c
copy sigmask from parent process to child
2014-09-09 13:53:25 +09:00
c783ec8e11
Implemented 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
26e219e698
Clarification.
2014-08-01 11:31:34 +09:00
dca9def246
Finalize merger.
2014-08-01 09:25:10 +09:00
570b850861
temporal fix
2014-08-01 09:23:11 +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
c83e80ad91
execve(): clear host user-space PTEs before context switching
2014-07-28 18:57:56 +09:00
07b07476b7
remote TLB invalidation: follow migrated threads by affinity calls
2014-07-27 13:11:41 +09:00
530535c162
Merge remote branch 'origin/master' into gdb
2014-07-23 10:29:07 +09:00
101a0f6e4a
remote TLB invalidation code for multi-threaded applications (e.g., during munmap())
2014-07-22 12:24:07 +09:00
9dd7d6283c
Merge remote branch 'origin/master' into gdb
...
Conflicts:
kernel/include/process.h
2014-07-18 16:03:35 +09:00
170a54d976
add CPU affinity function
...
- syscall support
-- sched_setaffinity
-- sched_getaffinity
- migration in scheduler
- resched at return of syscalls/interrupts
2014-07-13 17:04:47 +09:00
f923e03565
fix to make CPU idle when len(runq) != 0 but all queued are sleeping
2014-07-13 17:04:09 +09:00
292b34fe21
signal handler is not passed to a child process(redmine#62)
2014-07-13 12:49:30 +09:00
1d45444d54
Added code for generating core image.
...
modified: arch/x86/kernel/gencore.c
modified: arch/x86/kernel/include/elfcore.h
modified: kernel/include/process.h
modified: kernel/process.c
2014-07-10 15:55:35 +09:00
11bb334bd4
support mremap(2)
...
fixes #22
2014-07-02 15:30:52 +09:00
90aaf9dc9c
support remap_file_pages(2)
...
fixes #21
2014-06-30 17:33:51 +09:00
bb3756dc74
add fileoff-type PTE
...
fileoff-type PTE holds a file offset which the page data should be
loaded from.
refs #21
2014-06-30 17:33:50 +09:00
dc7f38c8c7
Merge branch 'master' of postpeta.pccluster.org:mckernel
2014-06-25 13:45:46 +09:00
770eae0186
support sigaltstack
2014-06-25 13:45:33 +09:00
a9bebf1e14
Make idle loop not miss a chance to schedule
...
Prevents the case where McKernel misses one chance to schedule a
task when an interrupt occurs just after enabling interrupt and
just before executing "halt" in the idle loop (in kernel/process.c).
refs #45
2014-06-12 11:22:02 +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
e5aad641ac
delete old page fault handlers
2014-05-07 22:10:21 +09:00
71d1359d53
merge two page fault functions
...
fixes #18
2014-05-07 21:24:45 +09:00