On Wed, Aug 26, 2020 at 01:53:57PM +0200, Alexander Graf wrote: > -.macro idtentry_body cfunc has_error_code:req > +.macro idtentry_body cfunc has_error_code:req preserve_error_code:req > > call error_entry > UNWIND_HINT_REGS > @@ -328,7 +328,9 @@ SYM_CODE_END(ret_from_fork) > > .if \has_error_code == 1 > movq ORIG_RAX(%rsp), %rsi /* get error code into 2nd argument*/ > - movq $-1, ORIG_RAX(%rsp) /* no syscall to restart */ > + .if \preserve_error_code == 0 > + movq $-1, ORIG_RAX(%rsp) /* no syscall to restart */ > + .endif When does this happen (has_error_code=1 && preserve_error_code=0)? I don't see any users of this macro (or idtentry) with this combination. -- Josh