ntdll-Virtual_Memory_Stack: Disable patchset, it has no effect when optimization is enabled.

This commit is contained in:
Sebastian Lackner
2015-10-31 03:15:00 +01:00
parent d2f012b3d1
commit fd66b3bced
9 changed files with 40 additions and 89 deletions

View File

@@ -1,4 +1,4 @@
From e09548baea24d9965e2beafc251bb69443424b25 Mon Sep 17 00:00:00 2001
From c12454876971314ab43cf5519fa4534bbe962a62 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sat, 3 Jan 2015 20:07:08 +0100
Subject: ntdll: Expose wine_uninterrupted_[read|write]_memory as exports.
@@ -12,10 +12,10 @@ Subject: ntdll: Expose wine_uninterrupted_[read|write]_memory as exports.
5 files changed, 34 insertions(+), 19 deletions(-)
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index ca3561d..52e7276 100644
index 38422ae..be5dd63 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -1463,6 +1463,10 @@
@@ -1467,6 +1467,10 @@
# signal handling
@ cdecl __wine_set_signal_handler(long ptr)
@@ -75,10 +75,10 @@ index 5c3aa819..cf20483 100644
{
context->Ecx = stack[0];
diff --git a/dlls/ntdll/virtual.c b/dlls/ntdll/virtual.c
index 020a6c0..eb8893b 100644
index 4d4bc3b..948a790 100644
--- a/dlls/ntdll/virtual.c
+++ b/dlls/ntdll/virtual.c
@@ -1642,13 +1642,14 @@ BOOL virtual_check_buffer_for_write( void *ptr, SIZE_T size )
@@ -1628,13 +1628,14 @@ BOOL virtual_check_buffer_for_write( void *ptr, SIZE_T size )
/***********************************************************************
@@ -95,8 +95,8 @@ index 020a6c0..eb8893b 100644
+SIZE_T CDECL wine_uninterrupted_read_memory( const void *addr, void *buffer, SIZE_T size )
{
struct file_view *view;
SIZE_T bytes_read = 0;
@@ -1666,10 +1667,14 @@ SIZE_T virtual_uninterrupted_read_memory( const void *addr, void *buffer, SIZE_T
sigset_t sigset;
@@ -1653,10 +1654,14 @@ SIZE_T virtual_uninterrupted_read_memory( const void *addr, void *buffer, SIZE_T
while (bytes_read < size && (VIRTUAL_GetUnixProt( *p++ ) & PROT_READ))
{
SIZE_T block_size = min( size, page_size - ((UINT_PTR)addr & page_mask) );
@@ -114,7 +114,7 @@ index 020a6c0..eb8893b 100644
bytes_read += block_size;
}
}
@@ -1680,13 +1685,14 @@ SIZE_T virtual_uninterrupted_read_memory( const void *addr, void *buffer, SIZE_T
@@ -1667,13 +1672,14 @@ SIZE_T virtual_uninterrupted_read_memory( const void *addr, void *buffer, SIZE_T
/***********************************************************************
@@ -131,8 +131,8 @@ index 020a6c0..eb8893b 100644
+SIZE_T CDECL wine_uninterrupted_write_memory( void *addr, const void *buffer, SIZE_T size )
{
struct file_view *view;
SIZE_T bytes_written = 0;
@@ -1723,10 +1729,14 @@ SIZE_T virtual_uninterrupted_write_memory( void *addr, const void *buffer, SIZE_
sigset_t sigset;
@@ -1711,10 +1717,14 @@ SIZE_T virtual_uninterrupted_write_memory( void *addr, const void *buffer, SIZE_
}
block_size = min( size, page_size - ((UINT_PTR)addr & page_mask) );
@@ -151,10 +151,10 @@ index 020a6c0..eb8893b 100644
}
}
diff --git a/include/winternl.h b/include/winternl.h
index 2b10f8d..bd7ba4e 100644
index 5420391..b039dd1 100644
--- a/include/winternl.h
+++ b/include/winternl.h
@@ -2660,6 +2660,9 @@ NTSYSAPI NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW,
@@ -2680,6 +2680,9 @@ NTSYSAPI NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW,
UINT disposition, BOOLEAN check_case );
NTSYSAPI NTSTATUS CDECL wine_unix_to_nt_file_name( const ANSI_STRING *name, UNICODE_STRING *nt );
@@ -165,5 +165,5 @@ index 2b10f8d..bd7ba4e 100644
/***********************************************************************
* Inline functions
--
2.5.1
2.6.1

View File

@@ -1,5 +1,4 @@
Fixes: Avoid race-conditions of async WSARecv() operations with write watches.
Fixes: Avoid race-conditions with write watches in WS2_async_accept.
Fixes: Basic handling of write watches triggered while we're on the signal stack.
Depends: ntdll-Virtual_Memory_Stack
Category: stable