Module: wine Branch: master Commit: e5982993ae7e0c065ef796ec43c32256a192bb57 URL: https://source.winehq.org/git/wine.git/?a=commit;h=e5982993ae7e0c065ef796ec4...
Author: Alexandre Julliard julliard@winehq.org Date: Wed Jun 2 12:54:34 2021 +0200
ntdll: Get rid of signal_init_syscalls().
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntdll/unix/loader.c | 4 +--- dlls/ntdll/unix/signal_arm.c | 9 --------- dlls/ntdll/unix/signal_arm64.c | 9 --------- dlls/ntdll/unix/signal_i386.c | 9 --------- dlls/ntdll/unix/signal_x86_64.c | 22 ++++++---------------- dlls/ntdll/unix/unix_private.h | 1 - 6 files changed, 7 insertions(+), 47 deletions(-)
diff --git a/dlls/ntdll/unix/loader.c b/dlls/ntdll/unix/loader.c index fb863bf17ad..1830c4fb392 100644 --- a/dlls/ntdll/unix/loader.c +++ b/dlls/ntdll/unix/loader.c @@ -111,7 +111,6 @@ void (WINAPI *pLdrInitializeThunk)(CONTEXT*,void**,ULONG_PTR,ULONG_PTR) = NU void (WINAPI *pRtlUserThreadStart)( PRTL_THREAD_START_ROUTINE entry, void *arg ) = NULL;
static NTSTATUS (CDECL *p__wine_set_unix_funcs)( int version, const struct unix_funcs *funcs ); -static void *syscall_dispatcher;
#ifdef __GNUC__ static void fatal_error( const char *err, ... ) __attribute__((noreturn, format(printf,1,2))); @@ -843,7 +842,7 @@ static void load_ntdll_functions( HMODULE module ) if ((ptr = (void *)find_named_export( module, ntdll_exports, #name ))) *ptr = val; \ else ERR( "%s not found\n", #name )
- SET_PTR( __wine_syscall_dispatcher, syscall_dispatcher ); + SET_PTR( __wine_syscall_dispatcher, __wine_syscall_dispatcher ); #ifdef __i386__ SET_PTR( __wine_ldt_copy, &__wine_ldt_copy ); #endif @@ -1870,7 +1869,6 @@ static void start_main_thread(void) startup_info_size = server_init_process(); virtual_map_user_shared_data(); init_cpu_info(); - syscall_dispatcher = signal_init_syscalls(); init_files(); load_libwine(); init_startup_info(); diff --git a/dlls/ntdll/unix/signal_arm.c b/dlls/ntdll/unix/signal_arm.c index ccd01e16f16..3397e876722 100644 --- a/dlls/ntdll/unix/signal_arm.c +++ b/dlls/ntdll/unix/signal_arm.c @@ -849,15 +849,6 @@ void signal_init_process(void) }
-/********************************************************************** - * signal_init_syscalls - */ -void *signal_init_syscalls(void) -{ - return __wine_syscall_dispatcher; -} - - /*********************************************************************** * init_thread_context */ diff --git a/dlls/ntdll/unix/signal_arm64.c b/dlls/ntdll/unix/signal_arm64.c index 248097ce80a..5552704987f 100644 --- a/dlls/ntdll/unix/signal_arm64.c +++ b/dlls/ntdll/unix/signal_arm64.c @@ -1033,15 +1033,6 @@ void signal_init_process(void) }
-/********************************************************************** - * signal_init_syscalls - */ -void *signal_init_syscalls(void) -{ - return __wine_syscall_dispatcher; -} - - /*********************************************************************** * init_thread_context */ diff --git a/dlls/ntdll/unix/signal_i386.c b/dlls/ntdll/unix/signal_i386.c index dd977a6b343..c3f8c01d350 100644 --- a/dlls/ntdll/unix/signal_i386.c +++ b/dlls/ntdll/unix/signal_i386.c @@ -2411,15 +2411,6 @@ void signal_init_process(void) }
-/********************************************************************** - * signal_init_syscalls - */ -void *signal_init_syscalls(void) -{ - return NtCurrentTeb()->WOW32Reserved = __wine_syscall_dispatcher; -} - - /*********************************************************************** * init_thread_context */ diff --git a/dlls/ntdll/unix/signal_x86_64.c b/dlls/ntdll/unix/signal_x86_64.c index 0f74e55ce04..59c030ae6a4 100644 --- a/dlls/ntdll/unix/signal_x86_64.c +++ b/dlls/ntdll/unix/signal_x86_64.c @@ -2656,6 +2656,12 @@ void signal_init_thread( TEB *teb ) void signal_init_process(void) { struct sigaction sig_act; + void *ptr; + + /* sneak in a syscall dispatcher pointer at a fixed address (7ffe1000) */ + ptr = (char *)user_shared_data + page_size; + anon_mmap_fixed( ptr, page_size, PROT_READ | PROT_WRITE, 0 ); + *(void **)ptr = __wine_syscall_dispatcher;
if (cpu_info.ProcessorFeatureBits & CPU_FEATURE_XSAVE) __wine_syscall_flags |= SYSCALL_HAVE_XSAVE; if (xstate_compaction_enabled) __wine_syscall_flags |= SYSCALL_HAVE_XSAVEC; @@ -2687,22 +2693,6 @@ void signal_init_process(void) }
-/********************************************************************** - * signal_init_syscalls - */ -void *signal_init_syscalls(void) -{ - void *ptr; - - /* sneak in a syscall dispatcher pointer at a fixed address (7ffe1000) */ - ptr = (char *)user_shared_data + page_size; - anon_mmap_fixed( ptr, page_size, PROT_READ | PROT_WRITE, 0 ); - *(void **)ptr = __wine_syscall_dispatcher; - - return __wine_syscall_dispatcher; -} - - /*********************************************************************** * init_thread_context */ diff --git a/dlls/ntdll/unix/unix_private.h b/dlls/ntdll/unix/unix_private.h index 786bb035d0a..4ddcbbee971 100644 --- a/dlls/ntdll/unix/unix_private.h +++ b/dlls/ntdll/unix/unix_private.h @@ -243,7 +243,6 @@ extern NTSTATUS signal_alloc_thread( TEB *teb ) DECLSPEC_HIDDEN; extern void signal_free_thread( TEB *teb ) DECLSPEC_HIDDEN; extern void signal_init_thread( TEB *teb ) DECLSPEC_HIDDEN; extern void signal_init_process(void) DECLSPEC_HIDDEN; -extern void *signal_init_syscalls(void) DECLSPEC_HIDDEN; extern void DECLSPEC_NORETURN signal_start_thread( PRTL_THREAD_START_ROUTINE entry, void *arg, BOOL suspend, void *thunk, TEB *teb ) DECLSPEC_HIDDEN; extern void DECLSPEC_NORETURN signal_exit_thread( int status, void (*func)(int) ) DECLSPEC_HIDDEN;