Re: Issues with "x86, um: switch to generic fork/vfork/clone" commit

From: Michel Lespinasse
Date: Sat Nov 10 2012 - 03:08:47 EST


On Fri, Nov 9, 2012 at 11:33 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> Could you verify that this on top of for-next gets the things working again?
> It's a very lazy way to deal with that (we don't want to bother with
> restoring extras, at the very least), but the rest can go separately (and
> is shared with mainline, unlike that one). It seems to be working here,
> but I'd like to see your ACK as well. If everything works, it'll get
> folded into the offending commit...
>
> diff --git a/arch/x86/ia32/ia32entry.S b/arch/x86/ia32/ia32entry.S
> index 633649e..32e6f05 100644
> --- a/arch/x86/ia32/ia32entry.S
> +++ b/arch/x86/ia32/ia32entry.S
> @@ -467,11 +467,16 @@ GLOBAL(\label)
> PTREGSCALL stub32_sigaltstack, sys32_sigaltstack, %rdx
> PTREGSCALL stub32_execve, compat_sys_execve, %rcx
> PTREGSCALL stub32_fork, sys_fork, %rdi
> - PTREGSCALL stub32_clone, sys_clone, %rdx
> PTREGSCALL stub32_vfork, sys_vfork, %rdi
> PTREGSCALL stub32_iopl, sys_iopl, %rsi
>
> ALIGN
> +GLOBAL(stub32_clone)
> + leaq sys_clone(%rip),%rax
> + mov %r8, %rcx
> + jmp ia32_ptregs_common
> +
> + ALIGN
> ia32_ptregs_common:
> popq %r11
> CFI_ENDPROC

Yes, I tested the above by applying it on top of mmotm and it did
solve the issue.

Thanks,

--
Michel "Walken" Lespinasse
A program is never fully debugged until the last user dies.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/