summaryrefslogtreecommitdiffstats
path: root/sys/compat/linux/linux_exec.c
diff options
context:
space:
mode:
authorguenther <guenther@openbsd.org>2014-03-26 05:23:41 +0000
committerguenther <guenther@openbsd.org>2014-03-26 05:23:41 +0000
commit8f76f5add34ff13fa8a804c10695e708224e99b4 (patch)
tree89d3b1dd1cb5e145e1de975c5db86c74df5912e4 /sys/compat/linux/linux_exec.c
parentDrop Apollo Domain keyboard support, now that hp300 has bitten the dust. (diff)
downloadwireguard-openbsd-8f76f5add34ff13fa8a804c10695e708224e99b4.tar.xz
wireguard-openbsd-8f76f5add34ff13fa8a804c10695e708224e99b4.zip
Move p_emul and p_sigcode from proc to process.
Tweak the handling of ktrace EMUL when changing ktracing: only generate one per process (not one per thread) and pass the correct proc pointer down to the VFS layer. Permit generating of NAMI and CSW records inside ktrace(2) itself. ok deraadt@ millert@
Diffstat (limited to 'sys/compat/linux/linux_exec.c')
-rw-r--r--sys/compat/linux/linux_exec.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/sys/compat/linux/linux_exec.c b/sys/compat/linux/linux_exec.c
index 71a13372d6f..919fe63c7f8 100644
--- a/sys/compat/linux/linux_exec.c
+++ b/sys/compat/linux/linux_exec.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: linux_exec.c,v 1.40 2013/12/02 19:47:28 deraadt Exp $ */
+/* $OpenBSD: linux_exec.c,v 1.41 2014/03/26 05:23:42 guenther Exp $ */
/* $NetBSD: linux_exec.c,v 1.13 1996/04/05 00:01:10 christos Exp $ */
/*-
@@ -165,7 +165,7 @@ void
linux_e_proc_fork(struct proc *p, struct proc *parent)
{
struct linux_emuldata *emul;
- struct linux_emuldata *p_emul;
+ struct linux_emuldata *parent_emul;
/* Allocate new emuldata for the new process. */
p->p_emuldata = NULL;
@@ -174,12 +174,12 @@ linux_e_proc_fork(struct proc *p, struct proc *parent)
linux_e_proc_init(p, parent->p_vmspace);
emul = p->p_emuldata;
- p_emul = parent->p_emuldata;
+ parent_emul = parent->p_emuldata;
- emul->my_set_tid = p_emul->child_set_tid;
- emul->my_clear_tid = p_emul->child_clear_tid;
- emul->my_tls_base = p_emul->child_tls_base;
- emul->set_tls_base = p_emul->set_tls_base;
+ emul->my_set_tid = parent_emul->child_set_tid;
+ emul->my_clear_tid = parent_emul->child_clear_tid;
+ emul->my_tls_base = parent_emul->child_tls_base;
+ emul->set_tls_base = parent_emul->set_tls_base;
}
int
@@ -256,7 +256,7 @@ linux_sys_execve(struct proc *p, void *v, register_t *retval)
struct sys_execve_args ap;
caddr_t sg;
- sg = stackgap_init(p->p_emul);
+ sg = stackgap_init(p);
LINUX_CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
SCARG(&ap, path) = SCARG(uap, path);