Tomoki Shirasawa
59ee251e1c
fix /proc/pid/mem, /proc/pid/status, /proc/pid/cmdline
2015-07-02 00:22:35 +09:00
Balazs Gerofi
4ebe778ede
vm->exiting: deal with exit_group() and concurrent page faults
2015-06-25 16:04:04 +09:00
Tomoki Shirasawa
7d5a68be1b
add PID and GID to /proc/pid/status
...
add /proc/pid/cmdline
refs #445
refs #447
2015-05-18 17:45:37 +09:00
NAKAMURA Gou
4946964ed0
update copyright notices
2015-03-27 14:50:09 +09:00
NAKAMURA Gou
786ae83380
add arch-dependent mman.h
2015-03-19 16:36:57 +09:00
NAKAMURA Gou
4698bc40c2
implement System V shared memory for LTP syscalls
2015-03-19 16:21:18 +09:00
Tomoki Shirasawa
f5d935b703
support signalfd4 step1
2015-03-18 17:35:43 +09:00
Tomoki Shirasawa
8934eb91a4
kill syscall check uid
2015-03-17 15:04:36 +09:00
Susumu Komae
b553de7435
supports PTRACE_GETREGSET, PTRACE_SETREGSET.
...
supports PTRACE_GETFPREGS, PTRACE_SETFPREGS.
refs #421
2015-03-06 19:18:32 +09:00
Balazs Gerofi
bf12a5c45e
Introduction of write-combined memory type mappings.
...
Introduction of VR_WRITE_COMBINED, PTATTR_WRITE_COMBINED and modification
to the memobj's get_page() interface so that Linux communicates back mapping
flags (such as write-combined).
2015-03-05 16:03:21 +09:00
Tomoki Shirasawa
e6011be1af
create area for to save fp regs
...
refs #421
2015-03-05 12:18:46 +09:00
NAKAMURA Gou
2239a6b09b
modify page_fault_process()
...
- change its argument from 'struct process *'
to 'struct process_vm *'.
- change its name from 'page_fault_process()'
to 'page_fault_process_vm()'.
- allow to resolve a fault on the process_vm of another process.
2015-03-04 11:29:15 +09:00
Tomoki Shirasawa
8caeba7cba
support PTRACE_GETSIGINFO and PTRACE_SETSIGINFO
...
refs #422
2015-03-03 09:54:57 +09:00
Tomoki Shirasawa
f35cc66d18
delete unused argument "ctx" from do_syscall
...
support waitid option "WNOWAIT"
2015-02-23 17:14:14 +09:00
Tomoki Shirasawa
d9cf1d49b1
support waitid
...
send SIGCHLD to parent when SIGSTOP or SIGCONT received
refs #425
refs #283
2015-02-22 20:05:30 +09:00
Balazs Gerofi
0307f6a6cc
impementation of sched_{setparam, getparam, setscheduler, getscheduler, get_priority_min, get_priority_max, rr_get_interval} system calls
2015-02-19 11:46:03 -08:00
Tomoki Shirasawa
c0edb6fe6f
add new cpu state CPU_STATUS_RESERVED
2015-02-18 13:46:08 +09:00
NAKAMURA Gou
16af976a71
support msync() system call. refs #382
...
Msync(2) of this version writes only the pages which the calling process
modified. Modifications of the other processes are not written.
2015-02-18 11:52:15 +09:00
Susumu Komae
fa15f6b106
support PTRACE_SYSCALL.
...
support PTRACE_O_TRACESYSGOOD.
ptrace_report_exec() calls ptrace_report_signal().
refs #265
2015-02-17 16:56:27 +09:00
Susumu Komae
c3ade864d9
fix PTRACE_PEEKUSER, PTRACE_POKEUSER, PTRACE_GETREGS.
...
support PTRACE_SETREGS.
In struct process, add 'unsigned long *ptrace_debugreg', instead of 'struct user *userp'.
debug registers are read/written from/to ptrace_debugreg, save/restore in schedule().
most general registers are proc->uctx.
fs_base is proc->thread.tlsblock_base.
gs_base,ds,es,fs,gs and orig_rax are uncompleted.
other members in 'struct user' are ignored, same as Linux implementation.
refs #257
refs #373
refs #263
2015-01-29 14:08:38 +09:00
Tomoki Shirasawa
08cc31f9bf
support setrlimits/getrlimits, however this fix is these syscalls only.
...
checking resource process must implement it separately.
refs #330
2015-01-27 10:35:58 +09:00
Susumu Komae
765de119dc
support PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK, PTRACE_O_TRACEVFORKDONE.
...
to start with a SIGSTOP, do not set proc->ftn->status to PS_RUNNING in __runq_add_proc().
change vfork() set CLONE_VFORK.
refs #266
refs #267
refs #372
support PTRACE_GETEVENTMSG.
to store ptrace event, add 'unsigned long ptrace_eventmsg;' member in struct fork_tree_node.
refs #273
2015-01-14 10:43:18 +09:00
Tomoki Shirasawa
912b8a886c
do_kill distinguish PTRACE_CONT from kill.
2014-12-26 15:23:11 +09:00
Tomoki Shirasawa
815d907ca4
setpgid return -EACCES when the child process had already performed an execve (LTP setpgid03)
2014-12-09 14:01:20 +09:00
Tomoki Shirasawa
8f30e16976
when mcexec is killed by SIGKILL, terminate mckernel process (BUG#259)
2014-11-27 16:13:52 +09:00
Balazs Gerofi
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
Tomoki Shirasawa
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
Naoki Hamada
ec179f072d
ptrace: Add all known request value and report upon their request.
2014-10-15 15:42:45 +09:00
Naoki Hamada
f0f31e19fb
procfs: PTRACE_O_TRACESYSGOOD (fake)
2014-10-15 14:56:11 +09:00
Tomoki Shirasawa
4b46330624
support ptrace(PTRACE_PEEKUSER, ...)
2014-10-15 14:54:33 +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
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
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
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
NAKAMURA Gou
d692b57a67
Revert "idle 開始時に free_list の状況を表示する"
...
This reverts commit ec47968a48 .
2014-09-17 19:59:27 +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
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
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
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
Naoki Hamada
efc817de92
Merge branch 'master' of postpeta.pccluster.org:mckernel
2014-09-05 17:20:50 +09:00
Balazs Gerofi bgerofi@riken.jp
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