Commit Graph

1803 Commits

Author SHA1 Message Date
Susumu Komae
8568a73f33 traced process should stop by any signal except for SIGKILL,
even if SIG_IGN.  (LTP ptrace01)
2015-02-17 16:51:29 +09:00
Tomoki Shirasawa
8b57b2ee57 change signal handling at mcexec 2015-02-15 17:54:11 +09:00
Tomoki Shirasawa
9a36e7b84a restart waitpid if it returns with EINTR. 2015-02-13 16:00:40 +09:00
Tomoki Shirasawa
d998691425 fix setpgid(0, 0) 2015-02-13 13:51:00 +09:00
Dave van Dresser
8cdf70c500 Enable AVX extensions for processors that support it. 2015-02-12 17:51:50 -08:00
Tomoki Shirasawa
0e0bc548f6 fix mcexec SIG_IGN 2015-02-12 19:02:58 +09:00
NAKAMURA Gou
d21ae28843 add dummy NUMA system calls. refs #405
ENOSYS system call handlers for the following.
- get_mempolicy()
- mbind()
- migrate_pages()
- move_pages()
- set_mempolicy()
2015-02-10 21:16:19 +09:00
NAKAMURA Gou
a4a806bef7 support vsyscall_getcpu() vsyscall. refs #385
This version simply calls getcpu() system call, so that it's not fast.
2015-02-10 18:35:48 +09:00
NAKAMURA Gou
d30d8fe71c support getcpu() system call. refs #385
It appeared on Linux(x86) in kernel 3.1.
2015-02-10 18:35:41 +09:00
Balazs Gerofi
a5bdd41c3d procfs: check parent entry to avoid page fault in procfs_exit() 2015-01-31 22:27:13 -08:00
Susumu Komae
5f5ab34559 support PTRACE_ATTACH.
fix PTRACE_TRACEME, PTRACE_DETACH.
2015-01-30 21:02:01 +09:00
Tomoki Shirasawa
b26fa4e87c wrong send signal to sender process when kill other process group (LTP kill10)
refs #404
2015-01-29 16:14:31 +09:00
Susumu Komae
bd5f43b119 support PTRACE_SINGLESTEP.
support debug/int3 exception.
2015-01-29 15:48:05 +09:00
Susumu Komae
f97f8dbab3 support PTRACE_PEEKTEXT and PTRACE_PEEKDATA.
support PTRACE_POKETEXT and PTRACE_POKEDATA.
  now, force write anywhere.
  read-only page must copy-on-write.
2015-01-29 15:02:15 +09:00
Susumu Komae
e30946f1f0 fix PTRACE_CONT may cause error.
refs #369
2015-01-29 14:10:31 +09:00
Susumu Komae
c3ade864d9 fix PTRACE_PEEKUSER, PTRACE_POKEUSER, PTRACE_GETREGS.
support PTRACE_SETREGS.
  In struct process, add 'unsigned long *ptrace_debugreg', instead of 'struct user *userp'.
  debug registers are read/written from/to ptrace_debugreg, save/restore in schedule().
  most general registers are proc->uctx.
  fs_base is proc->thread.tlsblock_base.
  gs_base,ds,es,fs,gs and orig_rax are uncompleted.
  other members in 'struct user' are ignored, same as Linux implementation.

refs #257
refs #373
refs #263
2015-01-29 14:08:38 +09:00
bgerofi@riken.jp
9c35935671 mcexec: fix memory allocation bug that crashes CentOS7 glibc 2015-01-27 16:55:30 +09:00
Balazs Gerofi
ed33ee65b2 CentOS7 spinlock, procfs and vm_munmap support (i.e., Linux kernel 3.10) 2015-01-27 16:55:28 +09:00
Tomoki Shirasawa
d04b5a09bd PTRACE_KILL omit sched_wakeup_process return
refs #369
2015-01-27 10:55:49 +09:00
Tomoki Shirasawa
08cc31f9bf support setrlimits/getrlimits, however this fix is these syscalls only.
checking resource process must implement it separately.

refs #330
2015-01-27 10:35:58 +09:00
Tomoki Shirasawa
cf2166f830 function enter_user_mode calls check_signal.
refs #392
2015-01-16 14:28:28 +09:00
Susumu Komae
765de119dc support PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK, PTRACE_O_TRACEVFORKDONE.
to start with a SIGSTOP, do not set proc->ftn->status to PS_RUNNING in __runq_add_proc().
  change vfork() set CLONE_VFORK.

refs #266
refs #267
refs #372

support PTRACE_GETEVENTMSG.
  to store ptrace event, add 'unsigned long ptrace_eventmsg;' member in struct fork_tree_node.

refs #273
2015-01-14 10:43:18 +09:00
Susumu Komae
d46110b4d9 support PTRACE_DETACH.
change getppid() to use proc->ftn->ppid_parent->pid, for ptraced process.

refs #280
2015-01-08 12:39:52 +09:00
Susumu Komae
74f0aec478 skip copy_to_user() when r->ret is negative error number in mckernel_procfs_read().
refs #370
2015-01-08 12:38:06 +09:00
Tomoki Shirasawa
e3eb7e68bc Fix need to modify ihk/cokernel/Makefile when a file has been added under mckernel/arch (Bug#365) 2014-12-26 16:05:23 +09:00
Tomoki Shirasawa
912b8a886c do_kill distinguish PTRACE_CONT from kill. 2014-12-26 15:23:11 +09:00
Balazs Gerofi bgerofi@riken.jp
e25d35a191 ihk_mc_init_ap(): cosmetics for reporting IKC, trampoline info 2014-12-25 11:05:52 +09:00
bgerofi@riken.jp
a9aad67541 IHK-SMP: boot scripts placeholder 2014-12-25 11:03:07 +09:00
Balazs Gerofi
cd6e663f48 handle VM_RESERVED (non-existing since Linux 3.7.0) and do_mmap_pgoff() (unexported since Linux 3.5.0) in mcctrl's syscall.c 2014-12-25 11:03:05 +09:00
Balazs Gerofi
5f095b3952 McKernel IHK SMP-x86 support (build system and config files) 2014-12-25 11:03:04 +09:00
bgerofi@riken.jp
811a275176 build scripts: support for separate build and source directories 2014-12-25 11:03:03 +09:00
bgerofi@riken.jp
b388f59ebd ihk_ikc_irq and ihk_ikc_irq_apicid 2014-12-25 11:03:01 +09:00
bgerofi@riken.jp
ff47261337 receive trampoline addr via parameter of arch_start() 2014-12-25 11:03:00 +09:00
Naoki Hamada
a91bf9a13d ptrace: Make PTRACE_CONT/KILL debug print separated. 2014-12-24 12:39:29 +09:00
Naoki Hamada
fcfa94cea1 ptrace: Add PTRACE_O_TRACEFORK (fake) support. 2014-12-24 12:39:13 +09:00
NAKAMURA Gou
55f7ee1526 fix a warning
| mckernel/kernel/../arch/x86/kernel/memory.c: In function '__set_pt_page':
| mckernel/kernel/../arch/x86/kernel/memory.c:367:
|     warning: 'init_pt_lock_flags' may be used uninitialized in this function
2014-12-22 17:03:32 +09:00
NAKAMURA Gou
b1b6fab7b8 fix a warning
| mckernel/kernel/host.c: In function 'syscall_packet_handler':
| mckernel/kernel/host.c:504:
|     warning: implicit declaration of function 'find_command_line'
2014-12-22 16:58:08 +09:00
NAKAMURA Gou
391886a6f1 fix a warning
| mckernel/kernel/syscall.c: In function 'do_syscall':
| mckernel/kernel/syscall.c:187:
|     warning: 'irqstate' may be used uninitialized in this function
2014-12-22 16:58:07 +09:00
NAKAMURA Gou
c810afe224 fix a warning
| mckernel/kernel/syscall.c: In function 'sys_madvise':
| mckernel/kernel/syscall.c:2108:
|     warning: 'range' may be used uninitialized in this function
2014-12-22 16:58:06 +09:00
NAKAMURA Gou
5566ed1a63 fix a warning
| mckernel/executer/kernel/control.c: In function ‘release_handler’:
| mckernel/executer/kernel/control.c:264: warning: unused variable ‘c’
2014-12-22 16:58:05 +09:00
NAKAMURA Gou
f0f91d2246 fix a warning
| mckernel/executer/kernel/control.c: In function ‘mcexec_debug_log’:
| mckernel/executer/kernel/control.c:252: warning: unused variable ‘c’
2014-12-22 16:58:04 +09:00
NAKAMURA Gou
0942bf0ce0 make dkprintf() evaluate its parameters always
Parameters of dkprintf() should be evaluated even if dkprintf() is
disabled.  Because this enables to find expression of parameter obsolete
and to avoid unnecessary compiler warnings such as "unused variable".
2014-12-22 16:58:03 +09:00
NAKAMURA Gou
9c94e90007 use ftn->tid instead of proc->tid 2014-12-22 16:58:02 +09:00
NAKAMURA Gou
a6ac906105 use ftn->pid instead of proc->pid 2014-12-22 16:58:01 +09:00
bgerofi@riken.jp
d4ba4dc8b3 introduction of mckernel_procfs_file_operations; fix /proc/self path resolution;
implementation of /proc/self/pagemap (LTP mmap12)
2014-12-15 12:46:05 +09:00
Tomoki Shirasawa
815d907ca4 setpgid return -EACCES when the child process had already performed an execve (LTP setpgid03) 2014-12-09 14:01:20 +09:00
Balazs Gerofi bgerofi@riken.jp
3c24315f91 support for /proc/mcos%d/PID/maps (without file info) (LTP mlock03) 2014-12-05 16:29:20 +09:00
Balazs Gerofi bgerofi@riken.jp
25f108bf78 mckernel_procfs_read(): fix buffer allocation, offset check and return code 2014-12-05 16:27:48 +09:00
Balazs Gerofi bgerofi@riken.jp
cc9d30efbf do_signal(): support for SIGSYS
as of POSIX.1-2001:
Signal  Value       Action  Comment
---------------------------------------------------
SIGSYS  12,31,12    Core    Bad argument to routine
2014-12-04 18:10:10 +09:00
Balazs Gerofi bgerofi@riken.jp
af83f1be64 rlimit(RLIMIT_NOFILE): return one less to make sure sync pipe can be created (LTP fork09) 2014-12-04 17:40:00 +09:00