Balazs Gerofi
0a0e2c04a0
support for dynamically toggling time sharing when CPU is oversubscribed
2015-08-07 08:51:50 +09:00
Balazs Gerofi
d5c243571f
cpu_clear_and_set(): atomic CPU mask update in migration code
2015-08-06 10:49:55 +09:00
Balazs Gerofi
328e69a335
schedule(): do not preempt while holding spinlocks or while in offloaded syscall
2015-08-06 10:36:13 +09:00
Balazs Gerofi
3988b0fc61
keep track of IRQ context and don't do thread migration there
2015-07-23 16:56:58 +09:00
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