Commit Graph
2123 Commits
Author SHA1 Message Date
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
Balazs Gerofi bgerofi@riken.jp 2f63b7ed95 futex.h copyright 2013-11-14 17:21:47 +09:00
Masamichi Takagi 384328c6bc add copyright notice 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 17:09:58 +09:00
Yuji Saeki cd04de3131 cls.c, copy.c, debug.c, listeners.c, mikc.c copyright 2013-11-14 17:00:37 +09:00
NAKAMURA Gou 03521e9c2c add copyrights 2013-11-14 16:49:40 +09:00
Tomoki Shirasawa d126a35d48 Merge branch 'master' of postpeta.pccluster.org:mckernel 2013-11-14 16:27:39 +09:00
Tomoki Shirasawa e5890aa949 typo fix 2013-11-14 16:27:11 +09:00
Balazs Gerofi bgerofi@riken.jp dcea4fefb3 ap.c, futex.c, jhash.h, timer.c, waitq.c copyrights 2013-11-14 16:20:08 +09:00
Tomoki Shirasawa 3f60324d4e add copyright 2013-11-14 15:55:00 +09:00
Tomoki Shirasawa 334fe81cdb remove rbtree 2013-11-14 13:07:00 +09:00
Tomoki Shirasawa 98fb5bf091 check cpu_local_var initialized 2013-11-13 23:06:11 +09:00
Tomoki Shirasawa 392357e9d2 catch signal when before kernel init 2013-11-13 15:43:49 +09:00
Tomoki Shirasawa 2f5be14425 manifest software version 2013-11-12 17:15:19 +09:00
Tomoki Shirasawa 04cef6f073 Merge branch 'master' of postpeta.pccluster.org:mckernel 2013-11-12 10:43:05 +09:00
Tomoki Shirasawa 3f2db99057 move boot-attached-mic.sh.in to arch/x86/tools 2013-11-12 10:41:51 +09:00
NAKAMURA Gou 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
Naoki Hamada d35140ab0b Merge branch 'master' of postpeta.pccluster.org:mckernel 2013-11-07 00:30:46 -08:00
Naoki Hamada 3c490dcfab Added <sys/resource.h> which is required by getrlimit(2).
modified:   executer/user/mcexec.c
2013-11-07 00:29:17 -08:00
Tomoki Shirasawa 8980ffcc27 Merge branch 'master' of postpeta.pccluster.org:mckernel 2013-11-07 15:20:00 +09:00
Tomoki Shirasawa 3cceb63cf3 change wait default 50 -> 20 2013-11-07 15:19:08 +09:00
NAKAMURA Gou 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
NAKAMURA Gou 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