Commit Graph

116 Commits

Author SHA1 Message Date
6992b829a0 delegate the open(2) with the generic forwarding.
This commit solves a problem that causes getpwnam()/getpwuid() to return
NULL.
2014-01-14 18:50:20 +09:00
8411f353fe signal part 3 (EFAULT) 2014-01-13 10:52:29 +09:00
0465cc16b9 signal (part 2) sigpending 2014-01-07 19:52:06 +09:00
a8c249ddaf signal (part 1) 2014-01-07 11:57:57 +09:00
9e00275120 fork & execve return EOPNOTSUPP (temporary hack) 2013-12-18 16:10:13 +09:00
96576aaee7 fix general protection fault caused by SIGALARM 2013-12-16 13:45:45 +09:00
03521e9c2c add copyrights 2013-11-14 16:49:40 +09:00
bbbc6e1570 add shared mapped file (in progress)
implemented:
- Pages can be shared between maps.
- A change made to a map is written to the file, at munmap().

not yet implemented:
- VM operation during page IO execution.
  Because page IO is executed with VM's lock.
- Page IO, which does not change a file size with any case.
  When munmap() races with truncate(), the file size may be changed
  illegally.
2013-11-11 18:18:33 +09:00
bdc02bb687 refuse the write to a read-only memory
It was able to change a read-only memory using a system call that
forwarded to host.

To fix this, when read-only mmap(), it places read-only vm_area in the
mcexec's space.
2013-11-06 16:06:58 +09:00
89be2af09a sys_mprotect: remove blocking of free_pages()
Because mprotect() does not release physical page, this is unnecessary.
2013-11-06 16:06:01 +09:00
27172ad413 support private mapped file 2013-10-15 12:30:41 +09:00
4fb6620f3a sys_getrlimit: modified to return mcexec's RLIMIT_STACK 2013-10-11 22:36:16 +09:00
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
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
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
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
040fb64b22 add terminate thread 2013-09-02 00:39:22 +09:00
1d69225532 mcexec forward signal to MIC process. 2013-08-19 12:17:23 +09:00
591f398768 add page fault forwarding 2013-08-08 12:43:15 +09:00
b0de24f13e sys_mprotect: delete unnecessary error check 2013-08-08 12:39:12 +09:00
6109eabc23 sys_munmap: add error check 2013-08-08 12:39:11 +09:00
88ce001671 munmap/mprotect: add TLB flush for single thread program 2013-08-08 12:39:09 +09:00
78d9d3fcd2 Revert "trial implementation of private file mapping"
This reverts commit abe57218c4.
2013-07-26 16:44:39 +09:00
abe57218c4 trial implementation of private file mapping
for review only.  will soon be reverted.
2013-07-26 14:40:12 +09:00
70e46dcd4b mcexec print signum or exit status 2013-07-26 13:14:39 +09:00
221f2c0517 support SIGSEGV(page fault) and SIGILL(general protection error) 2013-07-26 11:53:00 +09:00
deb9cd4e75 implement sys_munmap() 2013-07-18 09:25:58 +09:00
334662b7fe implement sys_mprotect() 2013-07-18 09:25:58 +09:00
9de06e90e7 rewrite and replace sys_mmap() 2013-07-18 09:25:58 +09:00
3749696d3e simple signal handler and kill(2) support. 2013-07-18 08:53:28 +09:00
2aa5194958 rewrite sys_mmap() as sys_new_mmap() 2013-07-10 13:11:19 +09:00
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
b59be07e9a implementing demand paging to make it possible to run Intel OpenMP programs 2013-07-04 15:41:12 +09:00
75b51ec0c1 delete SYSCALL_DECLARE(process_data_section) 2013-07-01 12:44:12 +09:00
cbc37b62a9 return syscall_table[] to the arch-independent part 2013-07-01 12:44:12 +09:00
4695b332e2 move syscall_table[] to the architecture-depended part 2013-06-19 16:52:46 +09:00
5369864551 fix warnings 2013-06-19 16:47:02 +09:00
32b8cc4651 delete unused codes 2013-06-17 18:07:26 +09:00
8a7429d872 delete SYSCALL_DECLARE(gettimeofday) 2013-06-17 18:07:26 +09:00
329dd42c32 add gettimeofday by physical buffer. used by futex() 2013-06-17 18:07:26 +09:00
3d11115491 delete SYSCALL_DECLARE(readlink) 2013-06-17 18:07:26 +09:00
1167ea7fb6 delete SYSCALL_DECLARE(getdents64) 2013-06-17 18:07:26 +09:00
b463f39344 delete SYSCALL_DECLARE(access) 2013-06-17 18:07:26 +09:00
628793225f delete SYSCALL_DECLARE(getcwd) 2013-06-17 18:07:26 +09:00
d6f6e4d6d7 delete SYSCALL_DECLARE(uname) 2013-06-17 18:07:26 +09:00
4494e54d38 delete SYSCALL_DECLARE(lseek) 2013-06-17 18:07:26 +09:00
58c5a45aad delete SYSCALL_DECLARE(close) 2013-06-17 18:07:26 +09:00
43792fbce9 delete SYSCALL_DECLARE(pwrite) 2013-06-17 18:07:25 +09:00
f7d9ad966c delete SYSCALL_DECLARE(write) 2013-06-17 18:07:25 +09:00
887295a189 delete SYSCALL_DECLARE(pread) 2013-06-17 18:07:25 +09:00