[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191205090355.GC2810@hirez.programming.kicks-ass.net>
Date:   Thu, 5 Dec 2019 10:03:55 +0100
From:   Peter Zijlstra <peterz@...radead.org>
To:     Thomas Garnier <thgarnie@...omium.org>
Cc:     kernel-hardening@...ts.openwall.com, kristen@...ux.intel.com,
        keescook@...omium.org, Andy Lutomirski <luto@...nel.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
        "H. Peter Anvin" <hpa@...or.com>, x86@...nel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH v10 04/11] x86/entry/64: Adapt assembly for PIE support
On Wed, Dec 04, 2019 at 04:09:41PM -0800, Thomas Garnier wrote:
> @@ -1625,7 +1627,11 @@ first_nmi:
>  	addq	$8, (%rsp)	/* Fix up RSP */
>  	pushfq			/* RFLAGS */
>  	pushq	$__KERNEL_CS	/* CS */
> -	pushq	$1f		/* RIP */
> +	pushq	$0		/* Future return address */
We're building an IRET frame, the IRET frame does not have a 'future
return address' field.
> +	pushq	%rdx		/* Save RAX */
fail..
> +	leaq	1f(%rip), %rdx	/* RIP */
nonsensical comment
> +	movq    %rdx, 8(%rsp)   /* Put 1f on return address */
> +	popq	%rdx		/* Restore RAX */
fail..
>  	iretq			/* continues at repeat_nmi below */
>  	UNWIND_HINT_IRET_REGS
>  1:
> -- 
> 2.24.0.393.g34dc348eaf-goog
> 
Powered by blists - more mailing lists
 
