07b07476b7
remote TLB invalidation: follow migrated threads by affinity calls
2014-07-27 13:11:41 +09:00
530535c162
Merge remote branch 'origin/master' into gdb
2014-07-23 10:29:07 +09:00
5888dcd4c7
Aestethical change.
2014-07-23 10:26:36 +09:00
dbdaf0ed32
Fix for demand paging and documentation.
2014-07-23 10:23:02 +09:00
101a0f6e4a
remote TLB invalidation code for multi-threaded applications (e.g., during munmap())
2014-07-22 12:24:07 +09:00
9dd7d6283c
Merge remote branch 'origin/master' into gdb
...
Conflicts:
kernel/include/process.h
2014-07-18 16:03:35 +09:00
cb61739c2b
Deleted debug flags & al.
2014-07-18 15:45:40 +09:00
a5b36e2b51
dkprintf() support in kernel/listeners.c
2014-07-17 12:28:57 +09:00
99931179e1
add get_cpu_id syscall with No.700 for testing
2014-07-13 17:05:27 +09:00
3751fa1766
add some functions related to migration into kernel/process.h
...
... and also add include guard to arch/x86/kernel/include/signal.h
2014-07-13 17:05:09 +09:00
170a54d976
add CPU affinity function
...
- syscall support
-- sched_setaffinity
-- sched_getaffinity
- migration in scheduler
- resched at return of syscalls/interrupts
2014-07-13 17:04:47 +09:00
1889d10e3a
add cpu_set and getter/setter of that (incomplete sched_***affinity)
2014-07-13 17:04:32 +09:00
f923e03565
fix to make CPU idle when len(runq) != 0 but all queued are sleeping
2014-07-13 17:04:09 +09:00
39c8617793
Merge branch 'master' of postpeta.pccluster.org:mckernel
2014-07-13 12:52:16 +09:00
5e6ed852cb
Kill child threads when receiving terminating signals(redmine#63)
...
Create process table (child is missing when sending a signal to a child process just after forking it)(redmine#61)
2014-07-13 12:51:28 +09:00
292b34fe21
signal handler is not passed to a child process(redmine#62)
2014-07-13 12:49:30 +09:00
1d45444d54
Added code for generating core image.
...
modified: arch/x86/kernel/gencore.c
modified: arch/x86/kernel/include/elfcore.h
modified: kernel/include/process.h
modified: kernel/process.c
2014-07-10 15:55:35 +09:00
36cff84e05
add zeroobj for private anonymous mappings
2014-07-07 18:11:43 +09:00
380fcbda73
add shmobj for shared anonymous mappings
2014-07-07 18:11:40 +09:00
9057268f0e
add memobj's default action
2014-07-07 18:11:38 +09:00
9efb5e4fc5
add memobj_has_pager()
2014-07-07 18:11:36 +09:00
d59628e131
fix debug prints to avoid NULL dereferences
2014-07-07 18:11:34 +09:00
a8a226a443
use PF_POPULATE for resolving delegated page faults
...
Since a host side PTE does not follow McKernel's copying a COW page,
COW pages cannot be used for resolving delegated page faults.
Therefore, to copy pages eagerly, PF_POPULATE should be used.
2014-07-07 18:11:31 +09:00
79a72809af
Prepare inside of core. Not tested.
...
modified: arch/x86/kernel/gencore.c
modified: arch/x86/kernel/include/elfcore.h
modified: kernel/mem.c
2014-07-07 15:46:10 +09:00
ed9da789e6
Created gencore() and minor aestetical changes.
...
modified: executer/kernel/mcctrl.h
modified: executer/kernel/syscall.c
modified: kernel/include/syscall.h
modified: kernel/mem.c
2014-07-02 16:23:32 +09:00
b2ca24d013
remap_file_pages: reject special ranges
...
special ranges are:
- VR_REMOTE
- VR_IO_NOCACHE
- VR_RESERVED
2014-07-02 15:30:54 +09:00
11bb334bd4
support mremap(2)
...
fixes #22
2014-07-02 15:30:52 +09:00
4f1b3f22ef
Working code for infrastructure.
...
modified: executer/kernel/mcctrl.h
modified: executer/kernel/syscall.c
modified: kernel/include/syscall.h
modified: kernel/mem.c
2014-07-02 12:39:08 +09:00
53a80e0720
Experimental implementation of map & write.
...
Data is still dummy.
Not even compiled.
modified: executer/kernel/mcctrl.h
modified: executer/kernel/syscall.c
modified: kernel/include/syscall.h
modified: kernel/mem.c
2014-07-01 16:50:25 +09:00
83ced89fa3
Initial commit for core dump.
...
We can create a dummy core file when gpe occurs.
modified: executer/kernel/mcctrl.h
modified: executer/kernel/syscall.c
modified: kernel/include/syscall.h
modified: kernel/mem.c
2014-07-01 16:03:11 +09:00
90aaf9dc9c
support remap_file_pages(2)
...
fixes #21
2014-06-30 17:33:51 +09:00
bb3756dc74
add fileoff-type PTE
...
fileoff-type PTE holds a file offset which the page data should be
loaded from.
refs #21
2014-06-30 17:33:50 +09:00
dc7f38c8c7
Merge branch 'master' of postpeta.pccluster.org:mckernel
2014-06-25 13:45:46 +09:00
770eae0186
support sigaltstack
2014-06-25 13:45:33 +09:00
a9bebf1e14
Make idle loop not miss a chance to schedule
...
Prevents the case where McKernel misses one chance to schedule a
task when an interrupt occurs just after enabling interrupt and
just before executing "halt" in the idle loop (in kernel/process.c).
refs #45
2014-06-12 11:22:02 +09:00
bbb7f77706
interrupt syscall of signal recieved process
2014-06-11 21:06:52 +09:00
19fc50ee05
Merge branch 'master' of postpeta.pccluster.org:mckernel
2014-06-10 10:42:55 +09:00
2f4f3628f9
support tgkill
2014-06-10 10:42:29 +09:00
3f13862a98
ptrace: add error stub to prevent mcexec from waiting
...
In LTP's ptrace03 test,
there is a exit() preceded by ptrace(PTRACE_TRACEME).
In this case, processes will be usually finished immediately.
But mcexec will fall into waiting for parent's ptrace(PTRACE_CONT),
because mcexec sends itself a signal in processing of exit().
2014-06-09 19:03:59 +09:00
4f32042c5f
getrlimit: delegate inquiries about fs resource
...
This commit corrects following system/library calls.
* getdtablesize()
* getrlimit(RLIMIT_FSIZE/RLIMIT_LOCKS/RLIMIT_NOFILE)
* sysconf(_SC_OPEN_MAX)
* ulimit(UL_GETFSIZE)
refs #31
refs #32
2014-05-26 16:47:56 +09:00
514d75b685
execve(): supporting syscall and mcexec modifications
2014-05-22 17:39:13 +09:00
badb450153
more detailed report in memory management error path
2014-05-22 17:27:39 +09:00
a4e6269c5d
adjust prepare_process_ranges_args_envs() so that it can initialize arguments and environmnt variables from kernel space strings
2014-05-22 13:45:23 +09:00
760c9ebdb0
refactor process_msg_prepare_process() in preparation for execve()
2014-05-22 13:27:25 +09:00
2fead93f10
negative error code for ECHILD
2014-05-19 13:04:09 +09:00
81a78be20a
clean up per process structure in exit_group() and fix wait4() on self bug
2014-05-19 12:49:36 +09:00
3e830521c1
move rt_sigaction to device dependent
...
fix call kill(getpid(), ) after sigaction aborted
2014-05-16 09:50:06 +09:00
ac65e6c869
wait4(): support for ECHILD error check
2014-05-13 10:28:27 +09:00
39b336ca2f
wait4(): save exit status only if requested
2014-05-12 10:29:58 +09:00
e5aad641ac
delete old page fault handlers
2014-05-07 22:10:21 +09:00