Commit Graph

156 Commits

Author SHA1 Message Date
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
ab89de0de6 show the interrupt context in lower case
This commit is intended to make it easier to find the corresponding line
in the objdump output.
2014-10-14 14:16:46 +09:00
759fd2e078 show all GPRs saved in interrupt context
This commit adds:
- rbp, r12 .. r15
- rflags
- error code
2014-10-14 14:16:46 +09:00
7fcd36fbd3 Lock when setting PTE for kernel virual address
We didn't have any lock variable to guard the manipulation of a PTE for
kernel virual address space. Note that we have one for user virtual
address space.
2014-10-08 14:06:17 +09:00
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
ef52ba7607 kill system call returned bad number 2014-09-25 14:09:07 +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
434597e629 Make lock/unlock in lock.c accord with arch-lock.h
Make both of the lock/unlock function pairs use the same interfaces.
2014-09-23 12:00:18 +09:00
aaa466ed05 Revert "ihk_mc_pt_print_pte で PTE を表示するようにした"
This reverts commit 9a1d535f5c.
2014-09-17 19:59:34 +09:00
7e12f0db72 Revert "テスト支援コード"
This reverts commit 054cb2ada2.
2014-09-17 19:59:32 +09:00
054cb2ada2 テスト支援コード
- vm_range_list のテスト支援コード
- vm_range 一致確認用関数追加
  できれば、指定範囲内の変更を無視させたいのだが、
  指定範囲内の変更のために split されたエントリを無害と判断できない
- page table のテスト支援コード
2014-09-17 19:46:48 +09:00
9a1d535f5c ihk_mc_pt_print_pte で PTE を表示するようにした 2014-09-17 19:46:45 +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
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
efc817de92 Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-05 17:20:50 +09:00
319590910a Almost implemented. 2014-09-03 15:20:39 +09:00
7b825c0a65 fix coredump (ltp abort01) 2014-09-03 10:56:41 +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
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
663c121308 interrupt syscall sufficient threads 2014-08-18 16:49:49 +09:00
9448cefe80 do not track arch/x86/tools/mcshutdown-attached-mic.sh (generated file) 2014-08-07 14:32:43 +09:00
2a1c092fcb Merge remote branch 'origin/master' into gdb 2014-08-01 11:19:18 +09:00
4d223269e6 Remove delivative files. 2014-08-01 11:14:31 +09:00
1e0db73a48 Add files from master. 2014-08-01 09:16:53 +09:00
6dd5407b5f Return error when no core is available
clone returns -EAGAIN when there is no vacant core.
In addition, clone tries to use the next vacant hyper-threading
core instead of trying to use next vacant hyper-threading core
of the next vacant physical core.
2014-07-31 19:50:41 +09:00
b58682dd73 Merge branch 'master' of postpeta.pccluster.org:mckernel into gdb 2014-07-31 10:31:45 +09:00
8f78b3085c Sending SIGKILL/SIGTERM resulting in SIGSEGV delivered (Redmine#194) 2014-07-29 11:04:46 +09:00
f5b37ef577 Fixed bad offset problem and clarified alignment. 2014-07-25 10:26:24 +09:00
530535c162 Merge remote branch 'origin/master' into gdb 2014-07-23 10:29:07 +09:00
dbdaf0ed32 Fix for demand paging and documentation. 2014-07-23 10:23:02 +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
6c3d901069 Include switch for a plain Xeon. 2014-07-17 17:26:54 +09:00
97a74f4692 Fix for core NOTE alignment & al. 2014-07-17 16:56:28 +09:00
3e8083efc1 Prepare for a core file image. 2014-07-17 15:19:25 +09:00
35b8716966 push/pop r12,r13 and r14 as well when entering/leaving kernel space 2014-07-15 18:03:44 +09:00
99931179e1 add get_cpu_id syscall with No.700 for testing 2014-07-13 17:05:27 +09:00
3751fa1766 add some functions related to migration into kernel/process.h
... and also add include guard to arch/x86/kernel/include/signal.h
2014-07-13 17:05:09 +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
39c8617793 Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-07-13 12:52:16 +09:00
5e6ed852cb Kill child threads when receiving terminating signals(redmine#63)
Create process table (child is missing when sending a signal to a child process just after forking it)(redmine#61)
2014-07-13 12:51:28 +09:00
cb9d346567 Fixed wrong %x to %lx. 2014-07-11 18:48:15 +09:00