diff options
Diffstat (limited to 'sys/compat/linux/linux_exec.c')
| -rw-r--r-- | sys/compat/linux/linux_exec.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sys/compat/linux/linux_exec.c b/sys/compat/linux/linux_exec.c index 121dc1634ea..4673f2fb7b0 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.34 2011/04/20 19:14:34 pirofti Exp $ */ +/* $OpenBSD: linux_exec.c,v 1.35 2011/09/18 02:23:18 pirofti Exp $ */ /* $NetBSD: linux_exec.c,v 1.13 1996/04/05 00:01:10 christos Exp $ */ /*- @@ -77,6 +77,9 @@ extern struct sysent linux_sysent[]; extern char *linux_syscallnames[]; #endif +extern struct mutex futex_lock; +extern void futex_pool_init(void); + int exec_linux_aout_prep_zmagic(struct proc *, struct exec_package *); int exec_linux_aout_prep_nmagic(struct proc *, struct exec_package *); int exec_linux_aout_prep_omagic(struct proc *, struct exec_package *); @@ -463,6 +466,7 @@ exec_linux_elf32_makecmds(struct proc *p, struct exec_package *epp) { if (!(emul_linux_elf.e_flags & EMUL_ENABLED)) return (ENOEXEC); + return exec_elf32_makecmds(p, epp); } @@ -510,6 +514,10 @@ recognized: *pos = ELF32_NO_ADDR; if (*os == OOS_NULL) *os = OOS_LINUX; + + mtx_init(&futex_lock, IPL_NONE); + futex_pool_init(); + return (0); } |
