Commit Graph

1669 Commits

Author SHA1 Message Date
NAKAMURA Gou
d557ba84d6 exclude interpreter's segment from data region
When an interpreter is located on the lower address (e.g. 0x0),
the text region is included in data region.
A fix to avoid this.
2013-10-30 14:28:32 +09:00
NAKAMURA Gou
6e736f6248 change the stack size according to stack size limit 2013-10-30 12:33:03 +09:00
NAKAMURA Gou
db45e11921 apply demand paging to stack area 2013-10-30 12:33:03 +09:00
Toyohisa Kameyama
78214f3ce4 /opt/knc -> /usr 2013-10-21 09:44:44 +09:00
Tomoki Shirasawa
6cf1b0c331 rename boot.sh to mcreboot
rename ihktest to ihkconfig
rename ihkostest to ihkosctl
2013-10-15 13:02:35 +09:00
NAKAMURA Gou
27172ad413 support private mapped file 2013-10-15 12:30:41 +09:00
NAKAMURA Gou
603ef85454 mcexec: add a upper limit of the stack size
- When the stack size is greater than 1 GiB, reduced to 10 MiB.
- To achieve a reduction of the stack, restart itself using the exec().
- By using the environment variable MCKERNEL_RLIMIT_STACK,
  tell to McKernel the stack size of the original.
2013-10-11 22:36:16 +09:00
NAKAMURA Gou
3d32350be0 mcexec: add use of MCKERNEL_RLIMIT_STACK
MCKERNEL_RLIMIT_STACK is a environment variable which
specify RLIMIT_STACK value on McKernel.

syntax: MCKERNEL_RLIMIT_STACK=<cur>,<max>

example: MCKERNEL_RLIMIT_STACK=0x800000,-1
cur=8MiB, max=unlimited
2013-10-11 22:36:16 +09:00
NAKAMURA Gou
4fb6620f3a sys_getrlimit: modified to return mcexec's RLIMIT_STACK 2013-10-11 22:36:16 +09:00
NAKAMURA Gou
bc173baf13 mcexec: add a path prefix for interpreter search
- When the interpreter is not found,
  add a prefix to the path and retry search.
- the prefix is specified by a environment variable MCEXEC_ALT_ROOT.
- If the MCEXEC_ALT_ROOT does not exist,
  /usr/linux-k1om-4.7/linux-k1om is used as a prefix.
2013-10-11 22:23:22 +09:00
NAKAMURA Gou
413fe7b54a mcexec: add a interpreter invocation
When start a program which have a PT_INTERP segment
(dynamic linkaged program have a PT_INTERP segment),
start the interpreter indicated by the PT_INTERP segment.
2013-10-11 22:23:22 +09:00
NAKAMURA Gou
a171da1015 add a AT_ENTRY entry to the auxiliary vector 2013-10-11 22:23:22 +09:00
NAKAMURA Gou
bb1390b085 ignore the double registration error
allow the substitute of maps from mcexec thread to the syscall channel

the temporary correction of the problem that gethostbyname() after
accept() interruption finishes an error.
2013-09-05 20:31:47 +09:00
NAKAMURA Gou
6f76c392ee fix error message typo
- printk("register_peer_channel(%p,%p,%p):"
+ printk("deregister_peer_channel(%p,%p,%p):"
          ^^
2013-09-05 20:31:46 +09:00
NAKAMURA Gou
47722baf2e add mcexec's PTE cleaning to munmap()/mmap(MAP_FIXED)
The correction of the problem that MKL application does not start
2013-09-05 13:19:54 +09:00
NAKAMURA Gou
0e0684cd1c support shared anonymous mapping
mmap(..., MAP_SHARED|MAP_ANONYMOUS, ...) is possible now.
shared mapped file is still not implemented.
2013-09-04 19:03:31 +09:00
NAKAMURA Gou
877f1be797 fix error message
- ekprintf("sys_mmap(%lx,%lx,%x,%x,%x,%lx):unknown flags %lx\n",
+ ekprintf("sys_mmap(%lx,%lx,%x,%x,%x,%lx):unknown flags %x\n",
                                                         ^^
2013-09-04 19:03:31 +09:00
NAKAMURA Gou
15beb40f17 mcexec: upgrade CAP_SYS_RAWIO while do_mmap_pgoff()
for mmap_min_addr check avoidance
2013-09-03 19:42:58 +09:00
NAKAMURA Gou
fe05e1107c fix alignment of struct syscall_request variable
since used with DMA, it must be IHK_DMA_ALIGN
2013-09-03 19:37:37 +09:00
Tomoki Shirasawa
040fb64b22 add terminate thread 2013-09-02 00:39:22 +09:00
Tomoki Shirasawa
1d69225532 mcexec forward signal to MIC process. 2013-08-19 12:17:23 +09:00
NAKAMURA Gou
591f398768 add page fault forwarding 2013-08-08 12:43:15 +09:00
NAKAMURA Gou
480f6d4c2f rewrite page_fault_handler() 2013-08-08 12:43:00 +09:00
NAKAMURA Gou
b0de24f13e sys_mprotect: delete unnecessary error check 2013-08-08 12:39:12 +09:00
NAKAMURA Gou
6109eabc23 sys_munmap: add error check 2013-08-08 12:39:11 +09:00
NAKAMURA Gou
88ce001671 munmap/mprotect: add TLB flush for single thread program 2013-08-08 12:39:09 +09:00
NAKAMURA Gou
78d9d3fcd2 Revert "trial implementation of private file mapping"
This reverts commit abe57218c4.
2013-07-26 16:44:39 +09:00
NAKAMURA Gou
abe57218c4 trial implementation of private file mapping
for review only.  will soon be reverted.
2013-07-26 14:40:12 +09:00
Tomoki Shirasawa
70e46dcd4b mcexec print signum or exit status 2013-07-26 13:14:39 +09:00
Tomoki Shirasawa
a4973307bd deliver signum to sighandler 2013-07-26 12:50:32 +09:00
Tomoki Shirasawa
af1c0b1352 correct sighandler breaks registers 2013-07-26 12:24:00 +09:00
Tomoki Shirasawa
221f2c0517 support SIGSEGV(page fault) and SIGILL(general protection error) 2013-07-26 11:53:00 +09:00
NAKAMURA Gou
b6d25861e5 create more mcexec thread so that all cpu to be serviced. 2013-07-18 09:25:58 +09:00
NAKAMURA Gou
deb9cd4e75 implement sys_munmap() 2013-07-18 09:25:58 +09:00
NAKAMURA Gou
334662b7fe implement sys_mprotect() 2013-07-18 09:25:58 +09:00
NAKAMURA Gou
9de06e90e7 rewrite and replace sys_mmap() 2013-07-18 09:25:58 +09:00
NAKAMURA Gou
390eb6bca5 rus_vm_fault(): add handling of page absence 2013-07-18 09:24:16 +09:00
Tomoki Shirasawa
3749696d3e simple signal handler and kill(2) support. 2013-07-18 08:53:28 +09:00
NAKAMURA Gou
2aa5194958 rewrite sys_mmap() as sys_new_mmap() 2013-07-10 13:11:19 +09:00
NAKAMURA Gou
dae884d572 add syscall number constants in syscall.h 2013-07-10 13:11:19 +09:00
NAKAMURA Gou
630170fb6a add ihk_mc_allocate_aligned_pages() 2013-07-10 13:11:18 +09:00
NAKAMURA Gou
63d97642d5 add intptr_t, uintptr_t, off_t type definition 2013-07-10 13:11:18 +09:00
NAKAMURA Gou
99a228930f correct syscall name 2013-07-10 13:11:18 +09:00
NAKAMURA Gou
43f4bb3e78 free_process_memory(): support demand paging 2013-07-10 13:11:18 +09:00
Masamichi Takagi m-takagi@ab.jp.nec.com
4214441ac3 Make clone system-call create a new thread on the next available physical core
and skip the physical core with a system process so that
programs using Intel OpenMP bind threads to cores in that manner.
2013-07-05 18:55:03 +09:00
Masamichi Takagi m-takagi@ab.jp.nec.com
b59be07e9a implementing demand paging to make it possible to run Intel OpenMP programs 2013-07-04 15:41:12 +09:00
NAKAMURA Gou
75b51ec0c1 delete SYSCALL_DECLARE(process_data_section) 2013-07-01 12:44:12 +09:00
NAKAMURA Gou
cbc37b62a9 return syscall_table[] to the arch-independent part 2013-07-01 12:44:12 +09:00
NAKAMURA Gou
295c2ee5ca Revert "workaround for non-DCFA make"
This reverts commit 15ac1e246a.
2013-07-01 12:44:12 +09:00
Balazs Gerofi bgerofi@riken.jp
be71505e87 fix remove_process_memory_range(): remove INIT_LIST_HEAD for on-list item 2013-06-24 13:29:33 +09:00