Commit Graph

379 Commits

Author SHA1 Message Date
c9f8bb0201 mmap: support device mapping (in progress) refs #218 2014-09-17 19:52:00 +09:00
438c7fd784 add devobj a new memobj 2014-09-17 19:48:02 +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
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
d4ffe7db8d terminate するときに空きページ数を表示するようにした 2014-09-17 19:46:50 +09:00
054cb2ada2 テスト支援コード
- vm_range_list のテスト支援コード
- vm_range 一致確認用関数追加
  できれば、指定範囲内の変更を無視させたいのだが、
  指定範囲内の変更のために split されたエントリを無害と判断できない
- page table のテスト支援コード
2014-09-17 19:46:48 +09:00
219291f40f exit_group 時に空きページ数を表示する 2014-09-17 19:46:46 +09:00
b361012563 marker 2014-09-17 19:46:41 +09:00
fbd33470e7 fix warnings 2014-09-17 19:46:39 +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
878ba35804 /proc/mcos?/<pid>/task/<tid>/stat support 2014-09-15 19:21:27 +09:00
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
225509786f do_fork(): fix variable name when DEBUG_PRINT_SC enabled 2014-09-11 16:58:59 +09:00
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
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
cee647aee4 sigsuspend restore sigmask 2014-09-09 13:54:36 +09:00
d6aef3aa2c copy sigmask from parent process to child 2014-09-09 13:53:25 +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
0de6a30426 wait4(): do not return ECHILD when child exists but not in PS_ZOMBIE state yet 2014-09-05 18:28:40 +09:00
efc817de92 Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-05 17:20:50 +09:00
95781d59e3 Fix for eof. 2014-09-05 17:15:54 +09:00
a06e5eb47e Bug fixes. 2014-09-05 16:20:15 +09:00
e45632c9f8 Check "options" argument in wait4
Make wait4 return -EINVAL when not supported options are requested.
2014-09-04 17:32:26 +09:00
a16c3170ef Correct wait4 when the child is not found
Make wait4 return -ECHILD when pid is specified and it's not found.
2014-09-04 17:11:05 +09:00
0f95a84293 Migrated. 2014-09-04 14:58:04 +09:00
fea02b0ece Merge branch 'master' of postpeta.pccluster.org:mckernel 2014-09-03 18:33:32 +09:00
7da4b8b8dc fix sched_[sg]etaffinity(tid==0, ...) (LTP sched_getaffinity01) 2014-09-03 18:22:27 +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
7b825c0a65 fix coredump (ltp abort01) 2014-09-03 10:56:41 +09:00
3293bfaa1e Fix for generalization. 2014-08-28 14:41:32 +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
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
d2537e0963 sigsuspend don't wait SIGSTOP, not SIGTERM 2014-08-21 17:25:02 +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
9fda245490 execve(): return correct error value when failure (errno) 2014-08-07 14:35:15 +09:00
26e219e698 Clarification. 2014-08-01 11:31:34 +09:00
2a1c092fcb Merge remote branch 'origin/master' into gdb 2014-08-01 11:19:18 +09:00
dca9def246 Finalize merger. 2014-08-01 09:25:10 +09:00
570b850861 temporal fix 2014-08-01 09:23:11 +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
3fa6818962 Merge from master. 2014-07-31 18:30:39 +09:00
0dd7a8deff Put AT_CLKTCK in ELF auxiliary vectors
Put AT_CLKTCK in ELF auxiliary vectors because some functions
use the value as described below.
1. GLRO(dl_clktck) set by
   _dl_aux_init (in glibc/elf/dl-support.c)
   or
   _dl_sysdep_start (in elf/dl-sysdep.c)

2. GLRO(dl_clktck) is referenced by
__sysconf (in glibc/sysdeps/posix/sysconf.c)
   __getclktck
      (in glibc/sysdeps/unix/sysv/linux/getclktck.c)
profil (in glibc/sysdeps/posix/profil.c)
   __profile_frequency
      (in glibc/sysdeps/unix/sysv/linux/prof-freq.c)
2014-07-31 16:20:48 +09:00