diff options
author | Dmitry V. Levin <ldv@altlinux.org> | 2014-05-12 13:43:10 +0000 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2014-05-12 20:26:24 +0000 |
commit | 6556315493082df9a24dbce9dadea4d6673e9965 (patch) | |
tree | 4020c6811ad2b1a65a165b386db449321cf2a494 | |
parent | e51ce47b1158e8424eee314ca2f3731881355eec (diff) | |
download | strace-6556315493082df9a24dbce9dadea4d6673e9965.tar.gz strace-6556315493082df9a24dbce9dadea4d6673e9965.tar.bz2 strace-6556315493082df9a24dbce9dadea4d6673e9965.tar.xz |
Alias sys_vfork to sys_fork
* process.c (sys_vfork): Remove.
* linux/syscall.h (sys_vfork): Likewise.
* linux/dummy.h (sys_vfork): Alias to sys_fork.
* linux/alpha/syscallent.h: Fix vfork entry.
* util.c (setbpt): Do not check for sys_vfork.
* syscall.c (syscall_fixup_for_fork_exec): Likewise.
-rw-r--r-- | linux/alpha/syscallent.h | 2 | ||||
-rw-r--r-- | linux/dummy.h | 1 | ||||
-rw-r--r-- | linux/syscall.h | 1 | ||||
-rw-r--r-- | process.c | 8 | ||||
-rw-r--r-- | syscall.c | 1 | ||||
-rw-r--r-- | util.c | 3 |
6 files changed, 3 insertions, 13 deletions
diff --git a/linux/alpha/syscallent.h b/linux/alpha/syscallent.h index 28e2eeb..513c074 100644 --- a/linux/alpha/syscallent.h +++ b/linux/alpha/syscallent.h @@ -92,7 +92,7 @@ { 0, 0, sys_getpgrp, "getpgrp" }, /* 63 */ { 0, 0, sys_getpagesize, "getpagesize" }, /* 64 */ { 5, TM, printargs, "osf_mremap" }, /* 65, not implemented */ - { 0, TP, sys_fork, "vfork" }, /* 66 */ + { 0, TP, sys_vfork, "vfork" }, /* 66 */ { 2, TF, sys_stat, "stat" }, /* 67 */ { 2, TF, sys_lstat, "lstat" }, /* 68 */ { 5, TM, printargs, "osf_sbrk" }, /* 69, not implemented */ diff --git a/linux/dummy.h b/linux/dummy.h index 2fc3498..2371673 100644 --- a/linux/dummy.h +++ b/linux/dummy.h @@ -88,6 +88,7 @@ #define sys_umount sys_chdir #define sys_unlink sys_chdir #define sys_uselib sys_chdir +#define sys_vfork sys_fork /* printargs does the right thing */ #define sys_getpgid printargs diff --git a/linux/syscall.h b/linux/syscall.h index 8725040..cfa9086 100644 --- a/linux/syscall.h +++ b/linux/syscall.h @@ -302,7 +302,6 @@ int sys_unshare(); int sys_utime(); int sys_utimensat(); int sys_utimes(); -int sys_vfork(); int sys_vmsplice(); int sys_wait4(); int sys_waitid(); @@ -600,14 +600,6 @@ sys_fork(struct tcb *tcp) return 0; } -int -sys_vfork(struct tcb *tcp) -{ - if (exiting(tcp)) - return RVAL_UDECIMAL; - return 0; -} - int sys_getuid(struct tcb *tcp) { if (exiting(tcp)) @@ -1708,7 +1708,6 @@ syscall_fixup_for_fork_exec(struct tcb *tcp) func = tcp->s_ent->sys_func; if ( sys_fork == func - || sys_vfork == func || sys_clone == func ) { internal_fork(tcp); @@ -1492,8 +1492,7 @@ setbpt(struct tcb *tcp) } } - if (tcp->s_ent->sys_func == sys_fork || - tcp->s_ent->sys_func == sys_vfork) { + if (tcp->s_ent->sys_func == sys_fork) { if (arg_setup(tcp, &state) < 0 || get_arg0(tcp, &state, &tcp->inst[0]) < 0 || get_arg1(tcp, &state, &tcp->inst[1]) < 0 |