Tomoki Shirasawa
7e342751a2
do_syscall: Delegate system calls to the mcexec with the same pid
...
This includes the following fix:
send_syscall, do_syscall: remove argument pid
Fujitsu: POSTK_TEMP_FIX_26
Refs: #1165
Change-Id: I702362c07a28f507a5e43dd751949aefa24bc8c0
2018-09-13 16:59:47 +09:00
Ken Sato
c23bc8d401
syscall_time: Handle by McKernel
...
refs: #1036
Change-Id: Ifa81b613c7ee8d95ae7cdf3dd54643f60526fa73
2018-09-13 07:44:02 +00:00
Masamichi Takagi
781a69617b
uti: Replace data types represented as arrays with C structures
...
Defining C structures for the following objects:
(1) Remote and local context
(2) Stack of system call arguments / return values
Change-Id: Iafbb6c795bd765e3c78c54a255d8a1e4d4536288
2018-09-04 19:53:03 +09:00
Masamichi Takagi
5cb8a1f10f
uti: Workaround not to share CPU with OpenMP threads
...
* Assign uti thread to the last idle CPU so that it's not shared with
an OpenMP thread
Change-Id: Ia42cae056ce81fde9b6dab6286b39a52f3c9e172
2018-09-04 19:53:01 +09:00
Masamichi Takagi
b6ab5911b7
uti: Identify uti thread by clone count
...
--uti-thread-count <count> is added to mcexec.
Change-Id: Id9ec464412a5bb71e4d9e87d05f79de22d35b067
2018-09-04 19:53:01 +09:00
Masamichi Takagi
52afbbbc98
uti: Call into McKernel futex()
...
(1) Masquerade clv
(2) Fix timeout
(3) Let mcexec thread with the same tid as McKernel thread migrating
to Linux handles the migration request
(4) Call create_tracer() before creating proxy related objects
Change-Id: I6b2689b70db49827f10aa7d5a4c581aa81319b55
2018-09-04 19:52:10 +09:00
Masamichi Takagi
d7b882855a
Correct comments in declaration of struct ikc_scd_packet
2018-09-04 19:52:10 +09:00
Masamichi Takagi
567dcd3846
Fix deadlock involving mmap_sem and memory_range_lock
...
Change-Id: I187246271163e708af6542c057d0a8dfde5b211e
Fujitsu: TEMP_FIX_1
Refs: #986
2018-09-04 19:51:10 +09:00
Balazs Gerofi
a697f5e98d
partitioned execution: pass process rank to LWK
...
Cherry-pick of d2d134d5e6a4b16a34d55d31b14614a2a91ecf47
Conflicts:
kernel/include/process.h
2018-09-04 19:51:10 +09:00
Tomoki Shirasawa
895a8c4099
procfs: Support multiple reads of e.g. /proc/*/maps
...
Refs: #1021
Change-Id: If36e1a0f3f41f0215868daf578e96775d96a59a3
2018-08-30 01:48:06 +00:00
Tomoki Shirasawa
14660a10c3
Fix to procfs read returns EIO
...
Refs: #1152
Change-Id: I48b330953fd7674ba1a3ac35744f9f50a5712730
2018-08-02 01:48:51 +00:00
Dominique Martinet
0758f6254e
headers: declare void arguments for functions
...
Not giving any argument means that any argument is OK,
this is not what is meant here.
Change-Id: Ide651c1dec973d4b8709cf00646988f4c4f3acdd
2018-07-03 09:18:25 +00:00
Dominique Martinet
854bc85602
mcctrl: convert send_signal to mcctrl_ihk_send_wait
...
Change-Id: Ibd2fc834444d83341a96579f0c9c22080a53e8fa
2018-07-02 16:11:01 +09:00
Dominique Martinet
ab8fe0bbbf
mcctrl: convert perf ctrl ioctls to mcctrl_ihk_send_wait
...
While we are here, also optimize code a bit: perf_desc does not need
to be allocated for every cpu; and fix coding style.
Change-Id: Iad19fed08205d38594fd3f1b7ddf2b19a9cf0d9d
2018-07-02 16:11:01 +09:00
Dominique Martinet
b939ca9370
mcctrl: refactor prepare_image into new generic ikc send&wait
...
Many ikc messages expecting a reply use wait_event_interruptible
incorrectly, freeing memory that could still be used on the other side.
This commit implements a generic ikc send and wait helper that helps
with memory management and ownership properly:
- if the message succeeds and a reply comes back normally, the memory
is freed by the caller as usual
- if the wait fails (signal before the reply comes or timeout) then the
memory is set as owner by ikc and will be free when the reply comes back
later
- if the reply never comes, the memory is freed at shutdown when
destroying ikc channels
Refs: #1076
Change-Id: I7f348d9029a6ad56ba9a50c836105ec39fa14943
2018-07-02 04:34:44 +00:00
Masamichi Takagi
9a5d5feb9c
time(): Split into architecture dependent functions
...
This fixes the bug reported as POSTK_ARCH_DEP_13 and POSTK_DEBUG_ARCH_DEP_13.
2017-12-23 11:36:52 +09:00
Katsuya Horigome
d649d6fc2d
Include mbind support (this is a rebase commit to merge into development)
2017-11-27 11:16:53 +09:00
Hitoshi Iizuka
08a625cc0d
modify:User space memory access
...
perf_event_open,futex,process_vm_readv,process_vm_writev,move_pages
2017-10-23 20:27:56 +09:00
Balazs Gerofi
d5629606c5
mcexec: -m: interpret as numactl -m (i.e., MPOL_BIND)
...
Conflicts:
executer/include/uprotocol.h
executer/user/mcexec.c
kernel/include/syscall.h
2017-10-18 16:54:34 +09:00
Masamichi Takagi
be4d84c0c1
mcexec: Add --stack-premap=<premap_size>[,<max>]
...
<premap_size> of stack is pre-mapped on creating a process.
And its max size of stack is set to <max>.
This replaces MCKERNEL_RLIMIT_STACK=<premap_size>,<max>.
2017-09-26 17:04:10 +09:00
Masamichi Takagi
daa7526127
rusage and ihklib: Fix out-of-memory reporting and cleanup
...
1. Fix OOM: Count memory usage only when allocation succeeded
2. Fix OOM: Make user allocation fail when memory is running out
3. Fix OOM: Move rusage_init() before numa_init()
4. Cleanup: Rename ihkconfig/ihkosctl functions
5. Cleanup: Pass event type to eventfd()
6. Cleanup: arch/.../rusage.h --> arch/.../arch_rusage.h
2017-09-20 15:11:57 +09:00
Takayuki Okamoto
9989f41fd3
add arm64 support
...
- add arm64 dependent codes with GICv3 and SVE support
- fix bugs based on architecture separation requests
2017-09-05 15:06:27 +09:00
Tomoki Shirasawa
d7b8e7f4f4
fix to count user pages
...
refs #864
2017-07-14 09:51:39 +09:00
Tomoki Shirasawa
07efb3ab9a
support to utility thread offloading
2017-06-27 13:27:09 +09:00
Tomoki Shirasawa
edf059888d
support rusage parameter of wait4
...
refs #857
2017-05-28 07:52:47 +09:00
Balazs Gerofi
9b5ccb5a33
Pre-map file mappings from /dev/shm (--mpol-shm-premap mcexec argument)
2017-05-23 20:00:06 +09:00
Balazs Gerofi
e901d42fb6
mcexec: --extend-heap-by: argument to specify heap extension size
2017-05-23 19:58:49 +09:00
Balazs Gerofi
e3e0f6a174
mcexec: introduction of --profile
2017-05-23 02:42:06 +09:00
Balazs Gerofi
9c25d47d9b
mcexec: transfer job information to LWK
2017-05-23 02:42:06 +09:00
Balazs Gerofi
26b9484bae
mcexec: --mpol-threshold to control MPOL_BIND/MPOL_PREFERRED
2017-05-23 02:39:42 +09:00
Balazs Gerofi
182202523e
mcexec/mm: user memory policy control for heap, stack, etc.
2017-05-23 02:39:42 +09:00
Balazs Gerofi
21373338cc
mcctrl: IHK CPU register manipulation implementation
2017-05-20 12:38:14 +09:00
Balazs Gerofi
9992fe0d72
mcctrl: support remote CPU MSR read/write operations
2017-05-05 00:01:43 +09:00
Ken Sato
1541b26086
ihklib: add pa_info functions.
2017-04-27 17:13:49 +09:00
Katsukura
3fe2257929
create rusage branch.
2017-03-15 23:22:51 +09:00
Balazs Gerofi
865ada46bf
IKC2: eliminate unused IKC structures
2017-01-13 08:43:25 +09:00
Yoichi Umezawa
f410af1cfc
xpmem: porting xpmem v2.6.3
...
implement xpmem_make, xpmem_remove
2016-12-16 17:00:09 +09:00
Balazs Gerofi
fdcf766337
prepare_process(): pass cpu_set in program_load_desc
2016-12-09 16:32:20 +09:00
Balazs Gerofi
ebcf9a0d6d
mcctrl: fix a bunch of -Wframe-larger-than warnings
2016-10-21 04:54:38 -04:00
Balazs Gerofi
c897a56c34
__notify_syscall_requester(): use CAS or IKC to notify syscall completion
2016-08-16 08:56:05 +09:00
Balazs Gerofi
5e9957da0f
syscall_response: introduction of req_thread_status field
2016-08-16 08:53:41 +09:00
Balazs Gerofi
45e51fcc07
mcctrl: fix padding for 128bytes SCD message
2016-08-14 11:29:02 +09:00
Balazs Gerofi
d7bc947a02
mcctrl: redesign mcctrl_channels for IKC packet based syscall offloading
2016-08-09 16:49:42 +09:00
Balazs Gerofi
fb84d4ef11
mcctrl: thread pool based system call offload handling
2016-08-08 19:43:05 +09:00
NAKAMURA Gou
e2e0fad849
arch_clear_host_user_space: set zero to args[2]
...
to avoid duplicated per_proc_list entry.
2016-04-21 23:22:54 +09:00
NAKAMURA Gou
1bb948f43b
hwloc support
2016-04-11 22:25:27 +09:00
NAKAMURA Gou
41bb2ab5e6
support vdso which borrows clocksource from linux
2016-03-28 22:57:44 +09:00
Tomoki Shirasawa
31595b7409
fix REQ-43
2016-03-25 12:57:31 +09:00
NAKAMURA Gou
d65135c040
move sys_shmget() into arch-dependent code
2016-03-23 19:14:27 +09:00
NAKAMURA Gou
81690c5b5a
mmap: cosmetic changes
2016-03-23 19:04:32 +09:00