Rebase against 6db2812411d45ca4b4d15dea9a00577ea17b508e.

This commit is contained in:
Alistair Leslie-Hughes 2024-11-07 12:23:36 +11:00
parent d4483ee98c
commit e3d0d19955
2 changed files with 17 additions and 10 deletions

View File

@ -1,18 +1,18 @@
From 24c407828bf5606e25e2905dfb920556ec1347b8 Mon Sep 17 00:00:00 2001
From 2cf5a014dcd6f85a1afa76ad8ca6c65f2c17db39 Mon Sep 17 00:00:00 2001
From: Paul Gofman <pgofman@codeweavers.com>
Date: Tue, 14 Jul 2020 15:00:34 +0300
Subject: [PATCH] ntdll: Support x86_64 syscall emulation.
---
configure.ac | 1 +
dlls/ntdll/unix/signal_x86_64.c | 192 ++++++++++++++++++++++++++++++++
2 files changed, 193 insertions(+)
dlls/ntdll/unix/signal_x86_64.c | 195 ++++++++++++++++++++++++++++++++
2 files changed, 196 insertions(+)
diff --git a/configure.ac b/configure.ac
index bd655accac3..d581dbc1eae 100644
index ef21a4313d4..db709285f79 100644
--- a/configure.ac
+++ b/configure.ac
@@ -420,6 +420,7 @@ AC_CHECK_HEADERS(\
@@ -384,6 +384,7 @@ AC_CHECK_HEADERS(\
linux/ioctl.h \
linux/major.h \
linux/param.h \
@ -21,7 +21,7 @@ index bd655accac3..d581dbc1eae 100644
linux/types.h \
linux/ucdrom.h \
diff --git a/dlls/ntdll/unix/signal_x86_64.c b/dlls/ntdll/unix/signal_x86_64.c
index 0c291633ac6..a28762915be 100644
index 537e4e1f60e..58397374ea4 100644
--- a/dlls/ntdll/unix/signal_x86_64.c
+++ b/dlls/ntdll/unix/signal_x86_64.c
@@ -27,6 +27,7 @@
@ -56,7 +56,7 @@ index 0c291633ac6..a28762915be 100644
#include "ntstatus.h"
#define WIN32_NO_STATUS
#include "windef.h"
@@ -1783,6 +1794,186 @@ static inline DWORD is_privileged_instr( CONTEXT *context )
@@ -1824,6 +1835,186 @@ static inline DWORD is_privileged_instr( CONTEXT *context )
return 0;
}
@ -243,14 +243,21 @@ index 0c291633ac6..a28762915be 100644
/***********************************************************************
* handle_interrupt
@@ -2460,6 +2651,7 @@ void signal_init_process(void)
@@ -2560,10 +2751,14 @@ void signal_init_process(void)
if (sigaction( SIGSEGV, &sig_act, NULL ) == -1) goto error;
if (sigaction( SIGILL, &sig_act, NULL ) == -1) goto error;
if (sigaction( SIGBUS, &sig_act, NULL ) == -1) goto error;
+
#ifdef __APPLE__
sig_act.sa_sigaction = sigsys_handler;
if (sigaction( SIGSYS, &sig_act, NULL ) == -1) goto error;
#endif
+
+ install_bpf(&sig_act);
+
return;
error:
--
2.43.0
2.45.2

View File

@ -1 +1 @@
eeabbe812ffc3ed7c06fc85cd63f0d85bffe207e
6db2812411d45ca4b4d15dea9a00577ea17b508e