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 >