Rebase against 3bb824f98891e8eb907c9c652fe528373a17b10d

This commit is contained in:
Alistair Leslie-Hughes 2020-05-20 08:48:22 +10:00
parent 24cd5774cf
commit fbe1ba5578
2 changed files with 21 additions and 21 deletions

View File

@ -1,4 +1,4 @@
From 54fe35bdc5ca494daf2b54d49e61995bfa36202f Mon Sep 17 00:00:00 2001
From ad744b5d30474d7f46bf69dcdf829aa75b813879 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Tue, 12 Jun 2018 10:01:08 -0500
Subject: [PATCH] ntdll, wineandroid.drv, winemac.drv, winex11.drv: Store the
@ -18,7 +18,7 @@ In any case I haven't bothered to guard this code with do_esync(); it'd require
7 files changed, 20 insertions(+)
diff --git a/dlls/ntdll/esync.c b/dlls/ntdll/esync.c
index ea7517d3f1d..94838d32213 100644
index ea7517d3f1d2..94838d322132 100644
--- a/dlls/ntdll/esync.c
+++ b/dlls/ntdll/esync.c
@@ -74,6 +74,12 @@ int do_esync(void)
@ -35,7 +35,7 @@ index ea7517d3f1d..94838d32213 100644
{
ESYNC_SEMAPHORE = 1,
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index ae3814be559..a4c44ae88e6 100644
index 44a65711c908..c24d4c807348 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -1567,6 +1567,8 @@
@ -48,10 +48,10 @@ index ae3814be559..a4c44ae88e6 100644
@ cdecl -norelay wine_server_call(ptr)
@ cdecl wine_server_close_fds_by_type(long)
diff --git a/dlls/ntdll/ntdll_misc.h b/dlls/ntdll/ntdll_misc.h
index e150d2a9d9c..e09528c4cc1 100644
index dd5db3f18f32..e9262de93da9 100644
--- a/dlls/ntdll/ntdll_misc.h
+++ b/dlls/ntdll/ntdll_misc.h
@@ -270,6 +270,7 @@ struct debug_info
@@ -267,6 +267,7 @@ struct debug_info
struct ntdll_thread_data
{
struct debug_info *debug_info; /* info for debugstr functions */
@ -60,7 +60,7 @@ index e150d2a9d9c..e09528c4cc1 100644
int request_fd; /* fd for sending server requests */
int reply_fd; /* fd for receiving server replies */
diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c
index 17a77498074..92001e64c71 100644
index 0bc3971508fd..a3dd918fdf58 100644
--- a/dlls/ntdll/thread.c
+++ b/dlls/ntdll/thread.c
@@ -438,6 +438,7 @@ TEB *thread_init(void)
@ -70,7 +70,7 @@ index 17a77498074..92001e64c71 100644
+ thread_data->esync_queue_fd = -1;
unix_funcs->dbg_init();
init_paths();
unix_funcs->get_paths( &build_dir, &data_dir, &config_dir );
@@ -745,6 +746,7 @@ NTSTATUS WINAPI NtCreateThreadEx( HANDLE *handle_ptr, ACCESS_MASK access, OBJECT
thread_data->wait_fd[0] = -1;
thread_data->wait_fd[1] = -1;
@ -80,7 +80,7 @@ index 17a77498074..92001e64c71 100644
pthread_attr_init( &pthread_attr );
pthread_attr_setstack( &pthread_attr, teb->DeallocationStack,
diff --git a/dlls/wineandroid.drv/window.c b/dlls/wineandroid.drv/window.c
index c1e7b000a8f..d96f001432d 100644
index c1e7b000a8f3..d96f001432d4 100644
--- a/dlls/wineandroid.drv/window.c
+++ b/dlls/wineandroid.drv/window.c
@@ -364,6 +364,8 @@ jboolean motion_event( JNIEnv *env, jobject obj, jint win, jint action, jint x,
@ -101,7 +101,7 @@ index c1e7b000a8f..d96f001432d 100644
{
ERR( "Can't allocate handle for event fd\n" );
diff --git a/dlls/winemac.drv/macdrv_main.c b/dlls/winemac.drv/macdrv_main.c
index 694a46b11e6..64b8d69b16d 100644
index 694a46b11e64..64b8d69b16de 100644
--- a/dlls/winemac.drv/macdrv_main.c
+++ b/dlls/winemac.drv/macdrv_main.c
@@ -323,6 +323,7 @@ void CDECL macdrv_ThreadDetach(void)
@ -122,7 +122,7 @@ index 694a46b11e6..64b8d69b16d 100644
{
MESSAGE("macdrv: Can't allocate handle for event queue fd\n");
diff --git a/dlls/winex11.drv/x11drv_main.c b/dlls/winex11.drv/x11drv_main.c
index 4eaedd1c556..323b71534ac 100644
index 4eaedd1c5567..323b71534ace 100644
--- a/dlls/winex11.drv/x11drv_main.c
+++ b/dlls/winex11.drv/x11drv_main.c
@@ -643,6 +643,7 @@ void CDECL X11DRV_ThreadDetach(void)

View File

@ -1,4 +1,4 @@
From 352d6aa96eb3e19acb61ad4942c86810a321c755 Mon Sep 17 00:00:00 2001
From 81e9cb30bd1005500d3fd51962b6611540f91338 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Fri, 15 Jun 2018 14:12:22 -0500
Subject: [PATCH] server, ntdll: Implement alertable waits.
@ -16,7 +16,7 @@ We do this quite simply by waiting on an extra eventfd descriptor, which the ser
8 files changed, 121 insertions(+), 17 deletions(-)
diff --git a/dlls/ntdll/esync.c b/dlls/ntdll/esync.c
index 7504f9b2931..15f99239fe9 100644
index 7504f9b2931e..15f99239fe9d 100644
--- a/dlls/ntdll/esync.c
+++ b/dlls/ntdll/esync.c
@@ -684,19 +684,43 @@ static int do_poll( struct pollfd *fds, nfds_t nfds, ULONGLONG *end )
@ -196,10 +196,10 @@ index 7504f9b2931..15f99239fe9 100644
NTSTATUS esync_signal_and_wait( HANDLE signal, HANDLE wait, BOOLEAN alertable,
diff --git a/dlls/ntdll/ntdll_misc.h b/dlls/ntdll/ntdll_misc.h
index e09528c4cc1..2a6ce77e6fd 100644
index e9262de93da9..f92fa9060103 100644
--- a/dlls/ntdll/ntdll_misc.h
+++ b/dlls/ntdll/ntdll_misc.h
@@ -271,6 +271,7 @@ struct ntdll_thread_data
@@ -268,6 +268,7 @@ struct ntdll_thread_data
{
struct debug_info *debug_info; /* info for debugstr functions */
int esync_queue_fd;/* fd to wait on for driver events */
@ -208,7 +208,7 @@ index e09528c4cc1..2a6ce77e6fd 100644
int request_fd; /* fd for sending server requests */
int reply_fd; /* fd for receiving server replies */
diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c
index 92001e64c71..e0d646d6020 100644
index a3dd918fdf58..3b1b6daad981 100644
--- a/dlls/ntdll/thread.c
+++ b/dlls/ntdll/thread.c
@@ -439,6 +439,7 @@ TEB *thread_init(void)
@ -218,7 +218,7 @@ index 92001e64c71..e0d646d6020 100644
+ thread_data->esync_apc_fd = -1;
unix_funcs->dbg_init();
init_paths();
unix_funcs->get_paths( &build_dir, &data_dir, &config_dir );
@@ -747,6 +748,7 @@ NTSTATUS WINAPI NtCreateThreadEx( HANDLE *handle_ptr, ACCESS_MASK access, OBJECT
thread_data->wait_fd[1] = -1;
thread_data->start_stack = (char *)teb->Tib.StackBase;
@ -228,7 +228,7 @@ index 92001e64c71..e0d646d6020 100644
pthread_attr_init( &pthread_attr );
pthread_attr_setstack( &pthread_attr, teb->DeallocationStack,
diff --git a/server/esync.c b/server/esync.c
index c68b2bc1fc0..a3cd1a8decf 100644
index c68b2bc1fc05..a3cd1a8decf8 100644
--- a/server/esync.c
+++ b/server/esync.c
@@ -246,19 +246,25 @@ int esync_create_fd( int initval, int flags )
@ -272,7 +272,7 @@ index c68b2bc1fc0..a3cd1a8decf 100644
+ send_client_fd( current->process, current->esync_apc_fd, current->id );
+}
diff --git a/server/esync.h b/server/esync.h
index aeb58c5469c..cea025d9308 100644
index aeb58c5469c3..cea025d93088 100644
--- a/server/esync.h
+++ b/server/esync.h
@@ -21,6 +21,7 @@
@ -284,7 +284,7 @@ index aeb58c5469c..cea025d9308 100644
void esync_clear( int fd );
diff --git a/server/protocol.def b/server/protocol.def
index 01f2207cc8a..9188893d7de 100644
index 01f2207cc8af..9188893d7de6 100644
--- a/server/protocol.def
+++ b/server/protocol.def
@@ -4070,6 +4070,11 @@ struct handle_info
@ -300,7 +300,7 @@ index 01f2207cc8a..9188893d7de 100644
{
ESYNC_SEMAPHORE = 1,
diff --git a/server/thread.c b/server/thread.c
index 9341261b580..5677aa518da 100644
index 9341261b580c..5677aa518da2 100644
--- a/server/thread.c
+++ b/server/thread.c
@@ -224,6 +224,7 @@ static inline void init_thread_structure( struct thread *thread )
@ -348,7 +348,7 @@ index 9341261b580..5677aa518da 100644
}
diff --git a/server/thread.h b/server/thread.h
index 1b2973cba63..9ed70aee857 100644
index 1b2973cba63e..9ed70aee8576 100644
--- a/server/thread.h
+++ b/server/thread.h
@@ -55,6 +55,7 @@ struct thread