[PATCH v2 0/1] MR8902: loader: Make thread_ldt reference position independent
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58666 -- v2: loader: Make thread_ldt reference position independent https://gitlab.winehq.org/wine/wine/-/merge_requests/8902
From: Alfred Agrell <floating(a)muncher.se> Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58666 --- loader/preloader.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/loader/preloader.c b/loader/preloader.c index d0551bae63a..40fa3a2e4d1 100644 --- a/loader/preloader.c +++ b/loader/preloader.c @@ -208,7 +208,9 @@ extern char _end[]; __ASM_GLOBAL_FUNC(_start, __ASM_CFI("\t.cfi_undefined %eip\n") "\tmovl $243,%eax\n" /* SYS_set_thread_area */ - "\tmovl $thread_ldt,%ebx\n" + "\tcall 1f\n" + "1:\tpop %ebx\n" + "\taddl $thread_ldt-1b,%ebx\n" "\tint $0x80\n" /* allocate gs segment */ "\torl %eax,%eax\n" "\tjl 1f\n" -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/8902
participants (2)
-
Alfred Agrell -
Alfred Agrell (@Alcaro)