2c50b716fd
support setitimer/getitimer
2016-02-19 15:25:05 +09:00
eba2be8a35
support times
2016-02-18 13:14:18 +09:00
a997af71be
support tkill
...
refs #664
2016-02-17 12:48:12 +09:00
c0cc6ac6db
Add skeleton for perf_event_open.
2016-02-09 14:54:53 +09:00
828a3ea57a
futex(): support for cross address-space futexes
2015-11-24 14:58:04 +09:00
c25f8c7a39
support settimeofday()
2015-10-27 19:21:50 +09:00
9e53ae20d4
add memory barriers
...
- rmb()
- wmb()
2015-10-27 19:21:50 +09:00
09c9ee58d1
add 64bit atomic operations
...
- ihk_atomic64_t
- IHK_ATOMIC64_INIT()
- ihk_atomic64_read()
- ihk_atomic64_inc()
2015-10-27 19:21:50 +09:00
04e193de13
refactoring process structures
2015-10-13 23:04:08 +09:00
2ca46fabfd
support reader/writer lock
2015-10-02 14:05:10 +09:00
5b737b499d
fix cmpxchgq operand
2015-10-02 14:04:05 +09:00
9ae5bcf46e
gettimeofday(): an implementation based on CPU invariant TSC support
2015-08-24 23:53:56 +02:00
7c816a6b73
an implementation of the Mellor-Crummey Scott (MCS) lock
2015-08-20 15:26:52 +09:00
aa191b87d3
schedule(): use XSAVE/XRSTOR and swap floating point registers in context switch
2015-08-07 08:41:00 +09:00
328e69a335
schedule(): do not preempt while holding spinlocks or while in offloaded syscall
2015-08-06 10:36:13 +09:00
1ff4cf68c2
support SA_RESTART flag and restart syscall
2015-07-16 16:33:14 +09:00
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
a0d909af75
add supports for dump analyzer
2015-03-31 12:59:53 +09:00
4946964ed0
update copyright notices
2015-03-27 14:50:09 +09:00
5f19842a6a
support for process_vm_readv()/process_vm_writev()
2015-03-25 19:44:56 +09:00
055769254d
implement mlockall()/munlockall() for LTP syscall
2015-03-19 16:46:31 +09:00
786ae83380
add arch-dependent mman.h
2015-03-19 16:36:57 +09:00
8c662c83be
implement mincore(2) for LTP
2015-03-19 16:32:03 +09:00
4698bc40c2
implement System V shared memory for LTP syscalls
2015-03-19 16:21:18 +09:00
f5d935b703
support signalfd4 step1
2015-03-18 17:35:43 +09:00
8934eb91a4
kill syscall check uid
2015-03-17 15:04:36 +09:00
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
ea5681232e
x86 Page Attribute Table (PAT) MSR support.
...
Reconfigure PAT to permit write-combining memory type to be assigned
on a page-by-page basis. Changes PWT and PCD bit combinations in page
table entries so that they correspond to the following format:
PAT
|PCD
||PWT
|||
000 WB Write Back (WB)
001 WC Write Combining (WC)
010 UC- Uncached (UC-)
011 UC Uncacheable (UC)
2015-03-05 16:03:20 +09:00
e6011be1af
create area for to save fp regs
...
refs #421
2015-03-05 12:18:46 +09:00
2eac58aab3
add patch_process_vm(). (in progress)
...
This function patches specified range of specified user space even if
the range is not writable.
refs #401
2015-03-04 12:00:51 +09:00
e4f47df3c3
initialize pstate, turbo mode and power/performace bias MSR registers
...
MSR_IA32_MISC_ENABLE, MSR_IA32_PERF_CTL and MSR_IA32_ENERGY_PERF_BIAS
are responsible for performance settings, this change enables McKernel
to perform on par with Linux when running the fwq benchmark.
2015-02-27 11:29:11 +09:00
b66b950129
add x86_sregs into x86_user_context
...
x86_sregs contains the registers which are included in user_regs_struct
but not included in x86_basic_regs.
2015-02-26 17:43:10 +09:00
4aa8ba2eef
sort x86_basic_regs into user_regs_struct's order
2015-02-26 17:43:10 +09:00
fab2c2aa97
wrap x86_regs with x86_user_context
...
and, rename x86_regs to x86_basic_regs.
2015-02-26 17:43:10 +09:00
d9cf1d49b1
support waitid
...
send SIGCHLD to parent when SIGSTOP or SIGCONT received
refs #425
refs #283
2015-02-22 20:05:30 +09:00
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
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
8cdf70c500
Enable AVX extensions for processors that support it.
2015-02-12 17:51:50 -08:00
d21ae28843
add dummy NUMA system calls. refs #405
...
ENOSYS system call handlers for the following.
- get_mempolicy()
- mbind()
- migrate_pages()
- move_pages()
- set_mempolicy()
2015-02-10 21:16:19 +09:00
d30d8fe71c
support getcpu() system call. refs #385
...
It appeared on Linux(x86) in kernel 3.1.
2015-02-10 18:35:41 +09:00
bd5f43b119
support PTRACE_SINGLESTEP.
...
support debug/int3 exception.
2015-01-29 15:48:05 +09:00
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
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
d46110b4d9
support PTRACE_DETACH.
...
change getppid() to use proc->ftn->ppid_parent->pid, for ptraced process.
refs #280
2015-01-08 12:39:52 +09:00
b388f59ebd
ihk_ikc_irq and ihk_ikc_irq_apicid
2014-12-25 11:03:01 +09:00
ff47261337
receive trampoline addr via parameter of arch_start()
2014-12-25 11:03:00 +09:00
d4ba4dc8b3
introduction of mckernel_procfs_file_operations; fix /proc/self path resolution;
...
implementation of /proc/self/pagemap (LTP mmap12)
2014-12-15 12:46:05 +09:00
86f2a9067b
getppid() implementation
2014-12-04 16:55: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
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