Paul Gofman (@gofman) commented about dlls/ntdll/unix/signal_x86_64.c:
"callq *(%r10,%rax,8)\n\t" "leaq -0x98(%rbp),%rcx\n\t" __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") ":\n\t"
/* push rbp-based kernel stack cfi */
__ASM_CFI(".cfi_remember_state\n\t")
__ASM_CFI_CFA_IS_AT2(rcx, 0xa8, 0x01) /* frame->syscall_cfa */
"leaq 0x70(%rcx),%rsp\n\t" /* %rsp > frame means no longer inside syscall */
Looks like patch subject is a bit misleading? "leaq 0x70(%rcx),%rsp\n\t" doesn't leave kernel stack, maybe "ntdll: Move stack to machine frame before accessing %gs in x86_64 syscall dispatcher."?