NAKAMURA Gou
da81cd2d1d
mcexec: copy a pathname string of open(2) safely
...
When a open system call request is delegated, mcexec will check whether
a path name is known one such as "/proc/meminfo" and "/proc/cpuinfo".
During this check, if mcexec causes a SIGSEGV or SIGBUS signal,
mcexec will begin a loop, because mcexec has a signal handler which
returns simply.
2014-04-03 15:27:49 +09:00
Balazs Gerofi bgerofi@riken.jp
583c9355cd
fix argument of set_tid_address()
2014-04-02 18:02:04 +09:00
Balazs Gerofi bgerofi@riken.jp
ab13f9a57c
declare fork() so that __NR_fork is available
2014-04-02 18:00:09 +09:00
Balazs Gerofi bgerofi@riken.jp
cf442e6a14
fork(): preliminary version (no wait()/waitpid() support yet)
2014-04-02 14:07:38 +09:00
Balazs Gerofi bgerofi@riken.jp
391b69e8c4
refactor mcexec's main and separate signal and syscall thread initialization
2014-04-02 14:04:55 +09:00
Balazs Gerofi bgerofi@riken.jp
3ce94072b4
save/restore rbp when entering/leaving kernel (required for fork() in glibc)
2014-04-02 14:02:20 +09:00
Tomoki Shirasawa
dabca28e4b
Merge branch 'master' of postpeta.pccluster.org:mckernel
2014-03-30 16:14:43 +09:00
Tomoki Shirasawa
e112aa8b06
remove DMA call
2014-03-30 16:14:19 +09:00
Balazs Gerofi bgerofi@riken.jp
b01b31f04d
use GFP_ATOMIC in interrupt context
2014-03-28 18:43:34 +09:00
Balazs Gerofi bgerofi@riken.jp
ccd770ba24
use per-process wait queues for system call request processing in mcexec so that multiple processes can share the per-core system call channels
2014-03-27 19:31:42 +09:00
Balazs Gerofi bgerofi@riken.jp
11ddbcf3c8
wait only 10 secs in mcreboot-attached
2014-03-27 15:35:42 +09:00
Balazs Gerofi bgerofi@riken.jp
a2515747cf
print CPU core ID in debug messages
2014-03-27 15:32:23 +09:00
Balazs Gerofi bgerofi@riken.jp
51f75d9ba8
mcexec: options for target CPU core ID where application is executed
2014-03-27 14:58:26 +09:00
Tomoki Shirasawa
76089e2682
add AT_PAGESZ to auxvec
2014-02-26 10:31:44 +09:00
Tomoki Shirasawa
74339586d5
change dma_buf size 256MB -> 4kB
2014-02-07 10:57:50 +09:00
NAKAMURA Gou
dca831b94f
add error check codes for madvise()
...
The advice will be ignored even if this madvise() succeed.
2014-02-05 11:31:03 +09:00
NAKAMURA Gou
b2b9b566c8
implement munlock()
2014-02-05 11:31:01 +09:00
NAKAMURA Gou
f2a6515448
implement mlock()
2014-02-05 11:30:59 +09:00
NAKAMURA Gou
fcbaa9726c
correct the syscall return type
...
Long size syscall return values such as shmat()'s and lseek()'s are
broken, because lower 32 bits are only returned.
2014-02-05 11:30:57 +09:00
NAKAMURA Gou
93c5385f65
implement mmap(MAP_LOCKED)
2014-01-27 18:59:36 +09:00
NAKAMURA Gou
f0a52d4519
implement mmap(MAP_POPULATE)
...
populate_process_memory() function is not efficient,
because whether every small page is present is checked.
2014-01-27 18:50:38 +09:00
NAKAMURA Gou
bdc945cb34
mcexec: wait for the signal to be received
...
The mcexec may send a signal to itself in order that the mcexec
terminates abnormally.
Generally, the signal is delivered to the thread which sent the signal.
In this case, the signal terminates the mcexec immediately.
However, if the signal is delivered to another thread,
the thread which sent the signal can call exit(3)
before the signal terminates the mcexec.
2014-01-24 20:22:54 +09:00
NAKAMURA Gou
069bb10a02
make mcexec ignore garbage request
...
When a signal is forwarded from McKernel,
ioctl(MCEXEC_UP_WAIT_SYSCALL) may return EINTR error.
In this case, though no syscall request has been received,
the mcexec starts to process the syscall requst that is garbage.
2014-01-24 20:20:45 +09:00
NAKAMURA Gou
f5b4057074
add vsyscall
...
- getcpu() is not implemented. It will cause SIGILL.
- gettimeofday() and time() are implemented with syscall.
2014-01-24 20:18:36 +09:00
Tomoki Shirasawa
26d68d391d
signal part 4 (sigsuspend etc)
2014-01-24 10:14:49 +09:00
NAKAMURA Gou
c421965542
relocate a program interpreter to the map_start
...
This commit makes a system call that dereferences a NULL pointer fail.
2014-01-14 18:55:16 +09:00
NAKAMURA Gou
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
NAKAMURA Gou
afc38718a0
add MCEXEC_UP_STRNCPY_FROM_USER
...
It allows a mcexec to execute the strncpy_from_user().
2014-01-14 18:50:19 +09:00
NAKAMURA Gou
e86ffb0b57
do write back only MAP_SHARED pages
...
Fix a problem that cause write reference to a MAP_PRIVATE mapping to
change the underlying file.
2014-01-14 18:48:43 +09:00
Tomoki Shirasawa
8411f353fe
signal part 3 (EFAULT)
2014-01-13 10:52:29 +09:00
Tomoki Shirasawa
2a55f3d718
install manual
2014-01-08 17:13:49 +09:00
Tomoki Shirasawa
0465cc16b9
signal (part 2) sigpending
2014-01-07 19:52:06 +09:00
Tomoki Shirasawa
a8c249ddaf
signal (part 1)
2014-01-07 11:57:57 +09:00
Tomoki Shirasawa
9e00275120
fork & execve return EOPNOTSUPP (temporary hack)
2013-12-18 16:10:13 +09:00
Tomoki Shirasawa
9926d469d8
remove debug print
2013-12-18 15:33:37 +09:00
Tomoki Shirasawa
96576aaee7
fix general protection fault caused by SIGALARM
2013-12-16 13:45:45 +09:00
Tomoki Shirasawa
8e4cbfeea1
print exit code or signal, if stderr is a tty
2013-12-10 14:45:37 +09:00
Tomoki Shirasawa
52e818c3ec
Merge branch 'master' of postpeta.pccluster.org:mckernel
2013-12-10 14:41:56 +09:00
Tomoki Shirasawa
daec3b2f32
propagate exit code and signal
2013-12-10 14:40:22 +09:00
Masamichi Takagi
c01cccd1b2
Add "ihkosctl 0 shutdown" to mcreboot.sh
2013-12-10 14:17:55 +09:00
Min Si
6d9bf6ad84
Added the full path of mcreboot.1 in configure
2013-11-26 17:06:54 +09:00
Yutaka Ishikawa ishikawa@is.s.u-tokyo.ac.jp
dc9f282d58
adding the mcshutdown command
2013-11-19 06:08:43 +09:00
Yutaka Ishikawa ishikawa@is.s.u-tokyo.ac.jp
eff0b92c25
1) DATA --> DATE
...
2) version and date variables are visible in makefile and documents
AC_SUBST
2013-11-18 08:09:28 +09:00
Masamichi Takagi
2f89e26ac0
add modification history entry to the following files,
...
mckernel/lib/include/*.h
mckernel/arch/x86/elfboot/*
mckernel/arch/x86/kboot/main.c
mckernel/arch/x86/kernel/*
mckernel/lib/page_alloc.c
mckernel/lib/string.c
mckernel/lib/include/ihk/*
except
mckernel/arch/x86/kernel/include/signal.h
mckernel/arch/x86/tools/mcreboot-attached-mic.sh.in
mckernel/arch/x86/kernel/include/syscall_list.h
mckernel/arch/x86/kernel/syscall.c
.
2013-11-14 18:30:06 +09:00
Yuji Saeki
0551fb26dd
affinity.h, waitq.h copyright
2013-11-14 17:40:59 +09:00
Yuji Saeki
506caa7e7f
page.h, process.h, rlimit.h, syscall.h, time.h, timer.h copyright
2013-11-14 17:34:30 +09:00
Yuji Saeki
821396be7b
amemcpy.c, cls.h, init.h, kmalloc.h, kmsg.hcopoyright
2013-11-14 17:30:43 +09:00
ubuntu12.10
611d14da67
Merge branch 'master' of postpeta.pccluster.org:mckernel
2013-11-14 17:26:14 +09:00
ubuntu12.10
d10416cb04
for release
2013-11-14 17:26:03 +09:00
Balazs Gerofi bgerofi@riken.jp
6bcec77d51
Merge branch 'master' of postpeta.pccluster.org:mckernel
2013-11-14 17:21:54 +09:00