Rebase against 559842ffc15f85b54a8731b6c6603468f9dd740b

This commit is contained in:
Alistair Leslie-Hughes 2019-08-03 09:37:53 +10:00
parent c9b8050f9d
commit 2474aff2c1
7 changed files with 7 additions and 648 deletions

View File

@ -1,31 +0,0 @@
From be28c746d013c16fa6c2e50f5f9debc45d39d81b Mon Sep 17 00:00:00 2001
From: Qian Hong <qhong@codeweavers.com>
Date: Tue, 7 Apr 2015 13:18:31 +0800
Subject: advapi32: Initialize buffer length to zero in LsaLookupSids to
prevent crash. (try 2)
Superseded 110588-110594
Try 2:
- Use RtlInitUnicodeStringEx to simplify code when possible. Same for
other patches in this series. (Thanks Nikolay)
---
dlls/advapi32/lsa.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/advapi32/lsa.c b/dlls/advapi32/lsa.c
index 2a8b791..69c29c5 100644
--- a/dlls/advapi32/lsa.c
+++ b/dlls/advapi32/lsa.c
@@ -502,7 +502,7 @@ NTSTATUS WINAPI LsaLookupSids(
{
(*Names)[i].Use = SidTypeUnknown;
(*Names)[i].DomainIndex = -1;
- (*Names)[i].Name.Buffer = NULL;
+ RtlInitUnicodeStringEx(&(*Names)[i].Name, NULL);
memset(&(*ReferencedDomains)->Domains[i], 0, sizeof(LSA_TRUST_INFORMATION));
--
2.3.5

View File

@ -1,467 +0,0 @@
From 4f9c93a7a074b6adac59c53b20e52185ab04b121 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Tue, 23 Apr 2019 12:02:06 +1000
Subject: [PATCH] include: Add missing D3DKMT typedefs
---
include/ddk/d3dkmthk.h | 437 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 437 insertions(+)
diff --git a/include/ddk/d3dkmthk.h b/include/ddk/d3dkmthk.h
index c87321058ca..fae18baed9a 100644
--- a/include/ddk/d3dkmthk.h
+++ b/include/ddk/d3dkmthk.h
@@ -136,6 +136,8 @@ typedef struct _D3DKMT_CHECKVIDPNEXCLUSIVEOWNERSHIP
D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId;
} D3DKMT_CHECKVIDPNEXCLUSIVEOWNERSHIP;
+#define D3DKMT_QUERYSTATISTICS_SEGMENT_PREFERENCE_MAX 5
+
typedef struct _D3DKMT_CLOSEADAPTER
{
D3DKMT_HANDLE hAdapter;
@@ -160,6 +162,441 @@ typedef struct _D3DKMT_DESTROYDCFROMMEMORY
HANDLE hBitmap;
} D3DKMT_DESTROYDCFROMMEMORY;
+typedef enum _D3DKMT_QUERYRESULT_PREEMPTION_ATTEMPT_RESULT
+{
+ D3DKMT_PreemptionAttempt = 0,
+ D3DKMT_PreemptionAttemptSuccess = 1,
+ D3DKMT_PreemptionAttemptMissNoCommand = 2,
+ D3DKMT_PreemptionAttemptMissNotEnabled = 3,
+ D3DKMT_PreemptionAttemptMissNextFence = 4,
+ D3DKMT_PreemptionAttemptMissPagingCommand = 5,
+ D3DKMT_PreemptionAttemptMissSplittedCommand = 6,
+ D3DKMT_PreemptionAttemptMissFenceCommand = 7,
+ D3DKMT_PreemptionAttemptMissRenderPendingFlip = 8,
+ D3DKMT_PreemptionAttemptMissNotMakingProgress = 9,
+ D3DKMT_PreemptionAttemptMissLessPriority = 10,
+ D3DKMT_PreemptionAttemptMissRemainingQuantum = 11,
+ D3DKMT_PreemptionAttemptMissRemainingPreemptionQuantum = 12,
+ D3DKMT_PreemptionAttemptMissAlreadyPreempting = 13,
+ D3DKMT_PreemptionAttemptMissGlobalBlock = 14,
+ D3DKMT_PreemptionAttemptMissAlreadyRunning = 15,
+ D3DKMT_PreemptionAttemptStatisticsMax
+} D3DKMT_QUERYRESULT_PREEMPTION_ATTEMPT_RESULT;
+
+typedef enum _D3DKMT_QUERYSTATISTICS_ALLOCATION_PRIORITY_CLASS
+{
+ D3DKMT_AllocationPriorityClassMinimum,
+ D3DKMT_AllocationPriorityClassLow,
+ D3DKMT_AllocationPriorityClassNormal,
+ D3DKMT_AllocationPriorityClassHigh,
+ D3DKMT_AllocationPriorityClassMaximum,
+ D3DKMT_MaxAllocationPriorityClass
+} D3DKMT_QUERYSTATISTICS_ALLOCATION_PRIORITY_CLASS;
+
+typedef enum _D3DKMT_QUERYSTATISTICS_QUEUE_PACKET_TYPE
+{
+ D3DKMT_RenderCommandBuffer,
+ D3DKMT_DeferredCommandBuffer,
+ D3DKMT_SystemCommandBuffer,
+ D3DKMT_MmIoFlipCommandBuffer,
+ D3DKMT_WaitCommandBuffer,
+ D3DKMT_SignalCommandBuffer,
+ D3DKMT_DeviceCommandBuffer,
+ D3DKMT_SoftwareCommandBuffer,
+ D3DKMT_QueuePacketTypeMax
+} D3DKMT_QUERYSTATISTICS_QUEUE_PACKET_TYPE;
+
+typedef enum _D3DKMT_QUERYSTATISTICS_DMA_PACKET_TYPE
+{
+ D3DKMT_ClientRenderBuffer,
+ D3DKMT_ClientPagingBuffer,
+ D3DKMT_SystemPagingBuffer,
+ D3DKMT_SystemPreemptionBuffer,
+ D3DKMT_DmaPacketTypeMax
+} D3DKMT_QUERYSTATISTICS_DMA_PACKET_TYPE;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_PAGING_TRANSFER
+{
+ ULONGLONG BytesFilled;
+ ULONGLONG BytesDiscarded;
+ ULONGLONG BytesMappedIntoAperture;
+ ULONGLONG BytesUnmappedFromAperture;
+ ULONGLONG BytesTransferredFromMdlToMemory;
+ ULONGLONG BytesTransferredFromMemoryToMdl;
+ ULONGLONG BytesTransferredFromApertureToMemory;
+ ULONGLONG BytesTransferredFromMemoryToAperture;
+} D3DKMT_QUERYSTATSTICS_PAGING_TRANSFER;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_COMMITMENT_DATA
+{
+ ULONG64 TotalBytesEvictedFromProcess;
+ ULONG64 BytesBySegmentPreference[D3DKMT_QUERYSTATISTICS_SEGMENT_PREFERENCE_MAX];
+} D3DKMT_QUERYSTATISTICS_COMMITMENT_DATA;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_SWIZZLING_RANGE
+{
+ ULONG NbRangesAcquired;
+ ULONG NbRangesReleased;
+} D3DKMT_QUERYSTATSTICS_SWIZZLING_RANGE;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_COUNTER
+{
+ ULONG Count;
+ ULONGLONG Bytes;
+} D3DKMT_QUERYSTATISTICS_COUNTER;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_DMA_BUFFER
+{
+ D3DKMT_QUERYSTATISTICS_COUNTER Size;
+ ULONG AllocationListBytes;
+ ULONG PatchLocationListBytes;
+} D3DKMT_QUERYSTATISTICS_DMA_BUFFER;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_LOCKS
+{
+ ULONG NbLocks;
+ ULONG NbLocksWaitFlag;
+ ULONG NbLocksDiscardFlag;
+ ULONG NbLocksNoOverwrite;
+ ULONG NbLocksNoReadSync;
+ ULONG NbLocksLinearization;
+ ULONG NbComplexLocks;
+} D3DKMT_QUERYSTATSTICS_LOCKS;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_ALLOCATIONS
+{
+ D3DKMT_QUERYSTATISTICS_COUNTER Created;
+ D3DKMT_QUERYSTATISTICS_COUNTER Destroyed;
+ D3DKMT_QUERYSTATISTICS_COUNTER Opened;
+ D3DKMT_QUERYSTATISTICS_COUNTER Closed;
+ D3DKMT_QUERYSTATISTICS_COUNTER MigratedSuccess;
+ D3DKMT_QUERYSTATISTICS_COUNTER MigratedFail;
+ D3DKMT_QUERYSTATISTICS_COUNTER MigratedAbandoned;
+} D3DKMT_QUERYSTATSTICS_ALLOCATIONS;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_TERMINATIONS
+{
+ D3DKMT_QUERYSTATISTICS_COUNTER TerminatedShared;
+ D3DKMT_QUERYSTATISTICS_COUNTER TerminatedNonShared;
+ D3DKMT_QUERYSTATISTICS_COUNTER DestroyedShared;
+ D3DKMT_QUERYSTATISTICS_COUNTER DestroyedNonShared;
+} D3DKMT_QUERYSTATSTICS_TERMINATIONS;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_QUERY_NODE
+{
+ ULONG NodeId;
+} D3DKMT_QUERYSTATISTICS_QUERY_NODE;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_QUERY_SEGMENT
+{
+ ULONG SegmentId;
+} D3DKMT_QUERYSTATISTICS_QUERY_SEGMENT;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PREEMPTION_INFORMATION
+{
+ ULONG PreemptionCounter[D3DKMT_PreemptionAttemptStatisticsMax];
+} D3DKMT_QUERYSTATISTICS_PREEMPTION_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_QUERY_VIDPNSOURCE
+{
+ ULONG VidPnSourceId;
+} D3DKMT_QUERYSTATISTICS_QUERY_VIDPNSOURCE;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_QUEUE_PACKET_TYPE_INFORMATION
+{
+ ULONG PacketSubmited;
+ ULONG PacketCompleted;
+} D3DKMT_QUERYSTATISTICS_QUEUE_PACKET_TYPE_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_DMA_PACKET_TYPE_INFORMATION
+{
+ ULONG PacketSubmited;
+ ULONG PacketCompleted;
+ ULONG PacketPreempted;
+ ULONG PacketFaulted;
+} D3DKMT_QUERYSTATISTICS_DMA_PACKET_TYPE_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_SYSTEM_MEMORY
+{
+ ULONGLONG BytesAllocated;
+ ULONGLONG BytesReserved;
+ ULONG SmallAllocationBlocks;
+ ULONG LargeAllocationBlocks;
+ ULONGLONG WriteCombinedBytesAllocated;
+ ULONGLONG WriteCombinedBytesReserved;
+ ULONGLONG CachedBytesAllocated;
+ ULONGLONG CachedBytesReserved;
+ ULONGLONG SectionBytesAllocated;
+ ULONGLONG SectionBytesReserved;
+} D3DKMT_QUERYSTATISTICS_SYSTEM_MEMORY;
+
+typedef enum _D3DKMT_QUERYSTATISTICS_TYPE
+{
+ D3DKMT_QUERYSTATISTICS_ADAPTER,
+ D3DKMT_QUERYSTATISTICS_PROCESS,
+ D3DKMT_QUERYSTATISTICS_PROCESS_ADAPTER,
+ D3DKMT_QUERYSTATISTICS_SEGMENT,
+ D3DKMT_QUERYSTATISTICS_PROCESS_SEGMENT,
+ D3DKMT_QUERYSTATISTICS_NODE,
+ D3DKMT_QUERYSTATISTICS_PROCESS_NODE,
+ D3DKMT_QUERYSTATISTICS_VIDPNSOURCE,
+ D3DKMT_QUERYSTATISTICS_PROCESS_VIDPNSOURCE
+} D3DKMT_QUERYSTATISTICS_TYPE;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_PAGING_FAULT
+{
+ D3DKMT_QUERYSTATISTICS_COUNTER Faults;
+ D3DKMT_QUERYSTATISTICS_COUNTER FaultsFirstTimeAccess;
+ D3DKMT_QUERYSTATISTICS_COUNTER FaultsReclaimed;
+ D3DKMT_QUERYSTATISTICS_COUNTER FaultsMigration;
+ D3DKMT_QUERYSTATISTICS_COUNTER FaultsIncorrectResource;
+ D3DKMT_QUERYSTATISTICS_COUNTER FaultsLostContent;
+ D3DKMT_QUERYSTATISTICS_COUNTER FaultsEvicted;
+ D3DKMT_QUERYSTATISTICS_COUNTER AllocationsMEM_RESET;
+ D3DKMT_QUERYSTATISTICS_COUNTER AllocationsUnresetSuccess;
+ D3DKMT_QUERYSTATISTICS_COUNTER AllocationsUnresetFail;
+ ULONG AllocationsUnresetSuccessRead;
+ ULONG AllocationsUnresetFailRead;
+ D3DKMT_QUERYSTATISTICS_COUNTER Evictions;
+ D3DKMT_QUERYSTATISTICS_COUNTER EvictionsDueToPreparation;
+ D3DKMT_QUERYSTATISTICS_COUNTER EvictionsDueToLock;
+ D3DKMT_QUERYSTATISTICS_COUNTER EvictionsDueToClose;
+ D3DKMT_QUERYSTATISTICS_COUNTER EvictionsDueToPurge;
+ D3DKMT_QUERYSTATISTICS_COUNTER EvictionsDueToSuspendCPUAccess;
+} D3DKMT_QUERYSTATSTICS_PAGING_FAULT;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_REFERENCE_DMA_BUFFER
+{
+ ULONG NbCall;
+ ULONG NbAllocationsReferenced;
+ ULONG MaxNbAllocationsReferenced;
+ ULONG NbNULLReference;
+ ULONG NbWriteReference;
+ ULONG NbRenamedAllocationsReferenced;
+ ULONG NbIterationSearchingRenamedAllocation;
+ ULONG NbLockedAllocationReferenced;
+ ULONG NbAllocationWithValidPrepatchingInfoReferenced;
+ ULONG NbAllocationWithInvalidPrepatchingInfoReferenced;
+ ULONG NbDMABufferSuccessfullyPrePatched;
+ ULONG NbPrimariesReferencesOverflow;
+ ULONG NbAllocationWithNonPreferredResources;
+ ULONG NbAllocationInsertedInMigrationTable;
+} D3DKMT_QUERYSTATSTICS_REFERENCE_DMA_BUFFER;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_RENAMING
+{
+ ULONG NbAllocationsRenamed;
+ ULONG NbAllocationsShrinked;
+ ULONG NbRenamedBuffer;
+ ULONG MaxRenamingListLength;
+ ULONG NbFailuresDueToRenamingLimit;
+ ULONG NbFailuresDueToCreateAllocation;
+ ULONG NbFailuresDueToOpenAllocation;
+ ULONG NbFailuresDueToLowResource;
+ ULONG NbFailuresDueToNonRetiredLimit;
+} D3DKMT_QUERYSTATSTICS_RENAMING;
+
+typedef struct _D3DKMT_QUERYSTATSTICS_PREPRATION
+{
+ ULONG BroadcastStall;
+ ULONG NbDMAPrepared;
+ ULONG NbDMAPreparedLongPath;
+ ULONG ImmediateHighestPreparationPass;
+ D3DKMT_QUERYSTATISTICS_COUNTER AllocationsTrimmed;
+} D3DKMT_QUERYSTATSTICS_PREPRATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_MEMORY
+{
+ ULONGLONG TotalBytesEvicted;
+ ULONG AllocsCommitted;
+ ULONG AllocsResident;
+} D3DKMT_QUERYSTATISTICS_MEMORY;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PROCESS_VIDPNSOURCE_INFORMATION
+{
+ ULONG Frame;
+ ULONG CancelledFrame;
+ ULONG QueuedPresent;
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_PROCESS_VIDPNSOURCE_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PACKET_INFORMATION
+{
+ D3DKMT_QUERYSTATISTICS_QUEUE_PACKET_TYPE_INFORMATION QueuePacket[D3DKMT_QueuePacketTypeMax];
+ D3DKMT_QUERYSTATISTICS_DMA_PACKET_TYPE_INFORMATION DmaPacket[D3DKMT_DmaPacketTypeMax];
+} D3DKMT_QUERYSTATISTICS_PACKET_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PROCESS_NODE_INFORMATION
+{
+ LARGE_INTEGER RunningTime;
+ ULONG ContextSwitch;
+ D3DKMT_QUERYSTATISTICS_PREEMPTION_INFORMATION PreemptionStatistics;
+ D3DKMT_QUERYSTATISTICS_PACKET_INFORMATION PacketStatistics;
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_PROCESS_NODE_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_NODE_INFORMATION
+{
+ D3DKMT_QUERYSTATISTICS_PROCESS_NODE_INFORMATION GlobalInformation;
+ D3DKMT_QUERYSTATISTICS_PROCESS_NODE_INFORMATION SystemInformation;
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_NODE_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_VIDPNSOURCE_INFORMATION
+{
+ D3DKMT_QUERYSTATISTICS_PROCESS_VIDPNSOURCE_INFORMATION GlobalInformation;
+ D3DKMT_QUERYSTATISTICS_PROCESS_VIDPNSOURCE_INFORMATION SystemInformation;
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_VIDPNSOURCE_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_ADAPTER_INFORMATION
+{
+ ULONG NbSegments;
+ ULONG NodeCount;
+ ULONG VidPnSourceCount;
+ ULONG VSyncEnabled;
+ ULONG TdrDetectedCount;
+ LONGLONG ZeroLengthDmaBuffers;
+ ULONGLONG RestartedPeriod;
+ D3DKMT_QUERYSTATSTICS_REFERENCE_DMA_BUFFER ReferenceDmaBuffer;
+ D3DKMT_QUERYSTATSTICS_RENAMING Renaming;
+ D3DKMT_QUERYSTATSTICS_PREPRATION Preparation;
+ D3DKMT_QUERYSTATSTICS_PAGING_FAULT PagingFault;
+ D3DKMT_QUERYSTATSTICS_PAGING_TRANSFER PagingTransfer;
+ D3DKMT_QUERYSTATSTICS_SWIZZLING_RANGE SwizzlingRange;
+ D3DKMT_QUERYSTATSTICS_LOCKS Locks;
+ D3DKMT_QUERYSTATSTICS_ALLOCATIONS Allocations;
+ D3DKMT_QUERYSTATSTICS_TERMINATIONS Terminations;
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_ADAPTER_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_POLICY
+{
+ ULONGLONG PreferApertureForRead[D3DKMT_MaxAllocationPriorityClass];
+ ULONGLONG PreferAperture[D3DKMT_MaxAllocationPriorityClass];
+ ULONGLONG MemResetOnPaging;
+ ULONGLONG RemovePagesFromWorkingSetOnPaging;
+ ULONGLONG MigrationEnabled;
+} D3DKMT_QUERYSTATISTICS_POLICY;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PROCESS_ADAPTER_INFORMATION
+{
+ ULONG NbSegments;
+ ULONG NodeCount;
+ ULONG VidPnSourceCount;
+ ULONG VirtualMemoryUsage;
+ D3DKMT_QUERYSTATISTICS_DMA_BUFFER DmaBuffer;
+ D3DKMT_QUERYSTATISTICS_COMMITMENT_DATA CommitmentData;
+ D3DKMT_QUERYSTATISTICS_POLICY _Policy;
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_PROCESS_ADAPTER_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_VIDEO_MEMORY
+{
+ ULONG AllocsCommitted;
+ D3DKMT_QUERYSTATISTICS_COUNTER AllocsResidentInP[D3DKMT_QUERYSTATISTICS_SEGMENT_PREFERENCE_MAX];
+ D3DKMT_QUERYSTATISTICS_COUNTER AllocsResidentInNonPreferred;
+ ULONGLONG TotalBytesEvictedDueToPreparation;
+} D3DKMT_QUERYSTATISTICS_VIDEO_MEMORY;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PROCESS_SEGMENT_POLICY
+{
+ ULONGLONG UseMRU;
+} D3DKMT_QUERYSTATISTICS_PROCESS_SEGMENT_POLICY;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PROCESS_SEGMENT_INFORMATION
+{
+ ULONGLONG BytesCommitted;
+ ULONGLONG MaximumWorkingSet;
+ ULONGLONG MinimumWorkingSet;
+
+ ULONG NbReferencedAllocationEvictedInPeriod;
+
+ D3DKMT_QUERYSTATISTICS_VIDEO_MEMORY VideoMemory;
+ D3DKMT_QUERYSTATISTICS_PROCESS_SEGMENT_POLICY _Policy;
+
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_PROCESS_SEGMENT_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_PROCESS_INFORMATION
+{
+ ULONG NodeCount;
+ ULONG VidPnSourceCount;
+ D3DKMT_QUERYSTATISTICS_SYSTEM_MEMORY SystemMemory;
+ ULONG64 Reserved[8];
+} D3DKMT_QUERYSTATISTICS_PROCESS_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_SEGMENT_INFORMATION
+{
+ ULONGLONG CommitLimit;
+ ULONGLONG BytesCommitted;
+ ULONGLONG BytesResident;
+ D3DKMT_QUERYSTATISTICS_MEMORY Memory;
+ ULONG Aperture;
+ ULONGLONG TotalBytesEvictedByPriority[D3DKMT_MaxAllocationPriorityClass];
+ ULONG64 SystemMemoryEndAddress;
+ struct
+ {
+ ULONG64 PreservedDuringStandby : 1;
+ ULONG64 PreservedDuringHibernate : 1;
+ ULONG64 PartiallyPreservedDuringHibernate : 1;
+ ULONG64 Reserved : 61;
+ } PowerFlags;
+ ULONG64 Reserved[6];
+} D3DKMT_QUERYSTATISTICS_SEGMENT_INFORMATION;
+
+typedef struct _D3DKMT_QUERYSTATISTICS_SEGMENT_INFORMATION_V1
+{
+ ULONG CommitLimit;
+ ULONG BytesCommitted;
+ ULONG BytesResident;
+ D3DKMT_QUERYSTATISTICS_MEMORY Memory;
+ ULONG Aperture;
+ ULONGLONG TotalBytesEvictedByPriority[D3DKMT_MaxAllocationPriorityClass];
+ ULONG64 SystemMemoryEndAddress;
+ struct
+ {
+ ULONG64 PreservedDuringStandby : 1;
+ ULONG64 PreservedDuringHibernate : 1;
+ ULONG64 PartiallyPreservedDuringHibernate : 1;
+ ULONG64 Reserved : 61;
+ } PowerFlags;
+
+ ULONG64 Reserved[7];
+} D3DKMT_QUERYSTATISTICS_SEGMENT_INFORMATION_V1;
+
+typedef union _D3DKMT_QUERYSTATISTICS_RESULT
+{
+ D3DKMT_QUERYSTATISTICS_ADAPTER_INFORMATION AdapterInformation;
+ D3DKMT_QUERYSTATISTICS_SEGMENT_INFORMATION_V1 SegmentInformationV1;
+ D3DKMT_QUERYSTATISTICS_SEGMENT_INFORMATION SegmentInformation;
+ D3DKMT_QUERYSTATISTICS_NODE_INFORMATION NodeInformation;
+ D3DKMT_QUERYSTATISTICS_VIDPNSOURCE_INFORMATION VidPnSourceInformation;
+ D3DKMT_QUERYSTATISTICS_PROCESS_INFORMATION ProcessInformation;
+ D3DKMT_QUERYSTATISTICS_PROCESS_ADAPTER_INFORMATION ProcessAdapterInformation;
+ D3DKMT_QUERYSTATISTICS_PROCESS_SEGMENT_INFORMATION ProcessSegmentInformation;
+ D3DKMT_QUERYSTATISTICS_PROCESS_NODE_INFORMATION ProcessNodeInformation;
+ D3DKMT_QUERYSTATISTICS_PROCESS_VIDPNSOURCE_INFORMATION ProcessVidPnSourceInformation;
+} D3DKMT_QUERYSTATISTICS_RESULT;
+
+typedef struct _D3DKMT_QUERYSTATISTICS
+{
+ D3DKMT_QUERYSTATISTICS_TYPE Type;
+ LUID AdapterLuid;
+ HANDLE hProcess;
+ D3DKMT_QUERYSTATISTICS_RESULT QueryResult;
+
+ union
+ {
+ D3DKMT_QUERYSTATISTICS_QUERY_SEGMENT QuerySegment;
+ D3DKMT_QUERYSTATISTICS_QUERY_SEGMENT QueryProcessSegment;
+ D3DKMT_QUERYSTATISTICS_QUERY_NODE QueryNode;
+ D3DKMT_QUERYSTATISTICS_QUERY_NODE QueryProcessNode;
+ D3DKMT_QUERYSTATISTICS_QUERY_VIDPNSOURCE QueryVidPnSource;
+ D3DKMT_QUERYSTATISTICS_QUERY_VIDPNSOURCE QueryProcessVidPnSource;
+ };
+} D3DKMT_QUERYSTATISTICS;
+
#ifdef __cplusplus
extern "C"
{
--
2.20.1

View File

@ -1,57 +0,0 @@
From a119d47ffc9e59747c435488002ee3eaecbc515f Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Tue, 23 Apr 2019 13:32:56 +1000
Subject: [PATCH] gdi32: Add D3DKMTQueryStatistics stub
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47074
---
dlls/gdi32/driver.c | 10 ++++++++++
dlls/gdi32/gdi32.spec | 1 +
include/ddk/d3dkmthk.h | 1 +
3 files changed, 12 insertions(+)
diff --git a/dlls/gdi32/driver.c b/dlls/gdi32/driver.c
index 96c2f1f1299..53914a88e5f 100644
--- a/dlls/gdi32/driver.c
+++ b/dlls/gdi32/driver.c
@@ -1423,3 +1423,13 @@ NTSTATUS WINAPI D3DKMTDestroyDevice( const D3DKMT_DESTROYDEVICE *desc )
return status;
}
+
+/******************************************************************************
+ * D3DKMTQueryStatistics [GDI32.@]
+ */
+NTSTATUS WINAPI D3DKMTQueryStatistics(D3DKMT_QUERYSTATISTICS *stats)
+{
+ FIXME("(%p): stub\n", stats);
+ return STATUS_SUCCESS;
+}
+
diff --git a/dlls/gdi32/gdi32.spec b/dlls/gdi32/gdi32.spec
index 9abd82173c8..cc5d2c21a31 100644
--- a/dlls/gdi32/gdi32.spec
+++ b/dlls/gdi32/gdi32.spec
@@ -88,6 +88,7 @@
@ stdcall D3DKMTEscape(ptr)
@ stdcall D3DKMTOpenAdapterFromGdiDisplayName(ptr)
@ stdcall D3DKMTOpenAdapterFromHdc(ptr)
+@ stdcall D3DKMTQueryStatistics(ptr)
@ stdcall DPtoLP(long ptr long)
@ stdcall DeleteColorSpace(long)
@ stdcall DeleteDC(long)
diff --git a/include/ddk/d3dkmthk.h b/include/ddk/d3dkmthk.h
index 8e28c94bbf8..ea4df3a9e01 100644
--- a/include/ddk/d3dkmthk.h
+++ b/include/ddk/d3dkmthk.h
@@ -608,6 +608,7 @@ NTSTATUS WINAPI D3DKMTCreateDCFromMemory(D3DKMT_CREATEDCFROMMEMORY *desc);
NTSTATUS WINAPI D3DKMTDestroyDCFromMemory(const D3DKMT_DESTROYDCFROMMEMORY *desc);
NTSTATUS WINAPI D3DKMTDestroyDevice(const D3DKMT_DESTROYDEVICE *desc);
NTSTATUS WINAPI D3DKMTOpenAdapterFromGdiDisplayName(D3DKMT_OPENADAPTERFROMGDIDISPLAYNAME *desc);
+NTSTATUS WINAPI D3DKMTQueryStatistics(D3DKMT_QUERYSTATISTICS *stats);
#ifdef __cplusplus
}
--
2.17.1

View File

@ -1 +0,0 @@
Fixes: [47074] gdi32: Add D3DKMTQueryStatistics stub

View File

@ -1,27 +0,0 @@
From 7db74392c6ef12ec43493af92f2220f62070b77e Mon Sep 17 00:00:00 2001
From: Huw Davies <huw@codeweavers.com>
Date: Mon, 15 Jul 2019 15:04:16 +0100
Subject: [PATCH] shell32: On macOS don't link against CoreServices.
This has not been required since commit efac5d0672728f1b6d85d28aafced14223aecf16.
Signed-off-by: Huw Davies <huw@codeweavers.com>
---
dlls/shell32/Makefile.in | 1 -
1 file changed, 1 deletion(-)
diff --git a/dlls/shell32/Makefile.in b/dlls/shell32/Makefile.in
index 20365b96fb..fe49bf09f9 100644
--- a/dlls/shell32/Makefile.in
+++ b/dlls/shell32/Makefile.in
@@ -3,7 +3,6 @@ MODULE = shell32.dll
IMPORTLIB = shell32
IMPORTS = uuid shlwapi user32 gdi32 advapi32
DELAYIMPORTS = ole32 oleaut32 shdocvw version comctl32 gdiplus
-EXTRALIBS = $(CORESERVICES_LIBS)
# AUTHORS file is in the top-level directory
EXTRAINCL = -I$(top_srcdir)
--
2.17.1

View File

@ -1,30 +0,0 @@
From 67c0427180e30d0a372d3bde563c31ec099c8e18 Mon Sep 17 00:00:00 2001
From: Conor McCarthy <cmccarthy@codeweavers.com>
Date: Tue, 16 Jul 2019 13:41:08 +1000
Subject: [PATCH] dbghelp: Return NULL instead of IMAGE_NO_MAP when PE file
mapping fails.
A NULL test is always applied to the return value from pe_map_full(), but
IMAGE_NO_MAP is not NULL, it is ((void*)-1).
Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
---
dlls/dbghelp/pe_module.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/dbghelp/pe_module.c b/dlls/dbghelp/pe_module.c
index 58530e7343..4b7c7baaae 100644
--- a/dlls/dbghelp/pe_module.c
+++ b/dlls/dbghelp/pe_module.c
@@ -53,7 +53,7 @@ static void* pe_map_full(struct image_file_map* fmap, IMAGE_NT_HEADERS** nth)
fmap->u.pe.full_count++;
return fmap->u.pe.full_map;
}
- return IMAGE_NO_MAP;
+ return NULL;
}
static void pe_unmap_full(struct image_file_map* fmap)
--
2.17.1

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "559842ffc15f85b54a8731b6c6603468f9dd740b"
echo "21c1ab7a737246f63a0ce6a6262d6953cd23ab0f"
}
# Show version information
@ -146,7 +146,6 @@ patch_enable_all ()
enable_explorer_Video_Registry_Key="$1"
enable_fonts_Missing_Fonts="$1"
enable_fsutil_Stub_Program="$1"
enable_gdi32_D3DKMTQueryStatistics="$1"
enable_gdi32_Lazy_Font_Initialization="$1"
enable_gdi32_MultiMonitor="$1"
enable_gdi32_rotation="$1"
@ -569,9 +568,6 @@ patch_enable ()
fsutil-Stub_Program)
enable_fsutil_Stub_Program="$2"
;;
gdi32-D3DKMTQueryStatistics)
enable_gdi32_D3DKMTQueryStatistics="$2"
;;
gdi32-Lazy_Font_Initialization)
enable_gdi32_Lazy_Font_Initialization="$2"
;;
@ -2047,13 +2043,12 @@ fi
# |
# | Modified files:
# | * configure, configure.ac, dlls/cryptext/Makefile.in, dlls/cryptext/cryptext.spec, dlls/cryptext/cryptext_main.c,
# | dlls/cryptext/tests/Makefile.in, dlls/cryptext/tests/cryptext.c, dlls/dbghelp/pe_module.c, dlls/evr/Makefile.in,
# | dlls/evr/evr.c, dlls/evr/main.c, dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl_private.h,
# | dlls/ntoskrnl.exe/pnp.c, dlls/qedit/Makefile.in, dlls/shell32/Makefile.in, dlls/strmbase/strmbase_private.h,
# | dlls/user32/rawinput.c, dlls/user32/tests/input.c, dlls/winebus.sys/bus.h, dlls/winebus.sys/bus_iohid.c,
# | dlls/winebus.sys/bus_sdl.c, dlls/winebus.sys/bus_udev.c, dlls/winebus.sys/main.c, dlls/winex11.drv/mouse.c,
# | include/msvcrt/limits.h, loader/Makefile.in, loader/wine.inf.in, loader/winebus.inf.in, programs/wineboot/Makefile.in,
# | programs/wineboot/wineboot.c
# | dlls/cryptext/tests/Makefile.in, dlls/cryptext/tests/cryptext.c, dlls/evr/Makefile.in, dlls/evr/evr.c, dlls/evr/main.c,
# | dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl_private.h, dlls/ntoskrnl.exe/pnp.c, dlls/qedit/Makefile.in,
# | dlls/strmbase/strmbase_private.h, dlls/user32/rawinput.c, dlls/user32/tests/input.c, dlls/winebus.sys/bus.h,
# | dlls/winebus.sys/bus_iohid.c, dlls/winebus.sys/bus_sdl.c, dlls/winebus.sys/bus_udev.c, dlls/winebus.sys/main.c,
# | dlls/winex11.drv/mouse.c, include/msvcrt/limits.h, loader/Makefile.in, loader/wine.inf.in, loader/winebus.inf.in,
# | programs/wineboot/Makefile.in, programs/wineboot/wineboot.c
# |
if test "$enable_mailing_list_patches" -eq 1; then
patch_apply mailing-list-patches/0001-winebus.inf-Add-new-INF-file-and-copy-it-to-the-INF-.patch
@ -2069,9 +2064,7 @@ if test "$enable_mailing_list_patches" -eq 1; then
patch_apply mailing-list-patches/0016-evr-Share-source-with-strmbase.patch
patch_apply mailing-list-patches/0017-user32-Also-scan-for-mouse-devices-in-GetRawInputDev.patch
patch_apply mailing-list-patches/0020-winebus.sys-Report-the-native-product-string-for-som.patch
patch_apply mailing-list-patches/0027-shell32-On-macOS-don-t-link-against-CoreServices.patch
patch_apply mailing-list-patches/0028-wine.inf-Remove-registration-for-the-winebus-service.patch
patch_apply mailing-list-patches/0029-dbghelp-Return-NULL-instead-of-IMAGE_NO_MAP-when-PE-.patch
patch_apply mailing-list-patches/0034-msvcrt-Do-not-use-casting-in-min-max-macros.patch
patch_apply mailing-list-patches/0035-winex11.drv-Ignore-XGrabPointer-induced-warp-events-.patch
patch_apply mailing-list-patches/0037-ntoskrnl-Update-the-interface-if-it-is-already-in-th.patch
@ -2090,9 +2083,7 @@ if test "$enable_mailing_list_patches" -eq 1; then
printf '%s\n' '+ { "Zebediah Figura", "evr: Share source with strmbase.", 1 },';
printf '%s\n' '+ { "Zebediah Figura", "user32: Also scan for mouse devices in GetRawInputDeviceList().", 1 },';
printf '%s\n' '+ { "Rémi Bernon", "winebus.sys: Report the native product string for some Xbox gamepads.", 1 },';
printf '%s\n' '+ { "Huw Davies", "shell32: On macOS don'\''t link against CoreServices.", 1 },';
printf '%s\n' '+ { "Zebediah Figura", "wine.inf: Remove registration for the winebus service.", 1 },';
printf '%s\n' '+ { "Conor McCarthy", "dbghelp: Return NULL instead of IMAGE_NO_MAP when PE file mapping fails.", 1 },';
printf '%s\n' '+ { "Peter Dons Tychsen", "msvcrt: Do not use casting in min/max macros.", 1 },';
printf '%s\n' '+ { "Rémi Bernon", "winex11.drv: Ignore XGrabPointer-induced warp events as well.", 1 },';
printf '%s\n' '+ { "Rémi Bernon", "ntoskrnl: Update the interface if it is already in the device_interfaces tree.", 1 },';
@ -2219,13 +2210,11 @@ fi
# | * dlls/advapi32/lsa.c, dlls/advapi32/security.c, dlls/advapi32/tests/security.c
# |
if test "$enable_advapi32_LsaLookupSids" -eq 1; then
patch_apply advapi32-LsaLookupSids/0001-advapi32-Initialize-buffer-length-to-zero-in-LsaLook.patch
patch_apply advapi32-LsaLookupSids/0002-advapi32-Prepend-a-hidden-LSA_TRUST_INFORMATION-in-L.patch
patch_apply advapi32-LsaLookupSids/0003-advapi32-Prepend-a-hidden-LSA_TRUST_INFORMATION-in-L.patch
patch_apply advapi32-LsaLookupSids/0004-advapi32-Fallback-to-Sid-string-when-LookupAccountSi.patch
patch_apply advapi32-LsaLookupSids/0007-advapi32-Fix-name-and-use-of-DOMAIN_GROUP_RID_USERS.patch
(
printf '%s\n' '+ { "Qian Hong", "advapi32: Initialize buffer length to zero in LsaLookupSids to prevent crash.", 2 },';
printf '%s\n' '+ { "Qian Hong", "advapi32: Prepend a hidden LSA_TRUST_INFORMATION in LsaLookupSids to avoid crash when Domains[-1] incorrectly accessed by application.", 2 },';
printf '%s\n' '+ { "Qian Hong", "advapi32: Prepend a hidden LSA_TRUST_INFORMATION in LsaLookupNames2 to avoid crash when Domains[-1] incorrectly accessed by application.", 2 },';
printf '%s\n' '+ { "Qian Hong", "advapi32: Fallback to Sid string when LookupAccountSid fails.", 1 },';
@ -4054,23 +4043,6 @@ if test "$enable_fsutil_Stub_Program" -eq 1; then
) >> "$patchlist"
fi
# Patchset gdi32-D3DKMTQueryStatistics
# |
# | This patchset fixes the following Wine bugs:
# | * [#47074] gdi32: Add D3DKMTQueryStatistics stub
# |
# | Modified files:
# | * dlls/gdi32/driver.c, dlls/gdi32/gdi32.spec, include/ddk/d3dkmthk.h
# |
if test "$enable_gdi32_D3DKMTQueryStatistics" -eq 1; then
patch_apply gdi32-D3DKMTQueryStatistics/0001-include-Add-missing-D3DKMT-typedefs.patch
patch_apply gdi32-D3DKMTQueryStatistics/0002-gdi32-Add-D3DKMTQueryStatistics-stub.patch
(
printf '%s\n' '+ { "Alistair Leslie-Hughes", "include: Add missing D3DKMT typedefs.", 1 },';
printf '%s\n' '+ { "Alistair Leslie-Hughes", "gdi32: Add D3DKMTQueryStatistics stub.", 1 },';
) >> "$patchlist"
fi
# Patchset gdi32-Lazy_Font_Initialization
# |
# | Modified files: