Win 32 API header compatibility update

Files that should now compile with Win 32 API headers:
* sysinfo.c
* time.c
* work.c
* zone.c

If you suddenly discover that something no longer works due to a missing struct member, it's probably because I've renamed it to match the Win 32 API headers.

svn path=/trunk/; revision=5151
This commit is contained in:
Andrew Greenwood 2003-07-17 16:57:39 +00:00
parent cb35a5b425
commit e6d0d671b8
25 changed files with 328 additions and 291 deletions

View file

@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/* $Id: fs_rec.c,v 1.5 2003/01/16 11:58:15 ekohl Exp $
/* $Id: fs_rec.c,v 1.6 2003/07/17 16:57:38 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -208,7 +208,7 @@ DriverEntry(PDRIVER_OBJECT DriverObject,
ConfigInfo = IoGetConfigurationInformation();
if (ConfigInfo->CDRomCount > 0)
if (ConfigInfo->CdRomCount > 0)
{
Status = FsRecRegisterFs(DriverObject,
L"\\Cdfs",

View file

@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/* $Id: cdrom.c,v 1.21 2003/07/16 11:51:56 ekohl Exp $
/* $Id: cdrom.c,v 1.22 2003/07/17 16:57:38 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -289,13 +289,13 @@ CdromClassFindDevices(IN PDRIVER_OBJECT DriverObject,
RegistryPath,
PortDeviceObject,
PortNumber,
ConfigInfo->CDRomCount,
ConfigInfo->CdRomCount,
PortCapabilities,
UnitInfo,
InitializationData);
if (NT_SUCCESS(Status))
{
ConfigInfo->CDRomCount++;
ConfigInfo->CdRomCount++;
FoundDevice = TRUE;
}
}

View file

@ -256,12 +256,12 @@ ExInitializeResourceLite (
* Routine = Routine to be called by the worker thread
* Context = Parameter to be passed to the callback
*/
#define ExInitializeWorkItem(Item, WorkerRoutine, RoutineContext) \
#define ExInitializeWorkItem(Item, Routine, RoutineContext) \
ASSERT_IRQL(DISPATCH_LEVEL); \
(Item)->Routine = (WorkerRoutine); \
(Item)->Context = (RoutineContext); \
(Item)->Entry.Flink = NULL; \
(Item)->Entry.Blink = NULL;
(Item)->WorkerRoutine = (Routine); \
(Item)->Parameter = (RoutineContext); \
(Item)->List.Flink = NULL; \
(Item)->List.Blink = NULL;
NTSTATUS
STDCALL

View file

@ -1,4 +1,4 @@
/* $Id: extypes.h,v 1.17 2003/07/15 16:26:18 silverblade Exp $ */
/* $Id: extypes.h,v 1.18 2003/07/17 16:57:38 silverblade Exp $ */
#ifndef __INCLUDE_DDK_EXTYPES_H
#define __INCLUDE_DDK_EXTYPES_H
@ -68,26 +68,25 @@ typedef struct _ZONE_HEADER
ULONG TotalSegmentSize;
} ZONE_HEADER, *PZONE_HEADER;
typedef struct _ZONE_SEGMENT
typedef struct _ZONE_SEGMENT_HEADER
{
SINGLE_LIST_ENTRY Entry;
ULONG size;
} ZONE_SEGMENT, *PZONE_SEGMENT;
SINGLE_LIST_ENTRY SegmentList; // was Entry
PVOID Reserved; // was ULONG Size;
} ZONE_SEGMENT_HEADER, *PZONE_SEGMENT_HEADER;
typedef struct _ZONE_ENTRY
{
SINGLE_LIST_ENTRY Entry;
} ZONE_ENTRY, *PZONE_ENTRY;
typedef VOID STDCALL_FUNC
(*PWORKER_THREAD_ROUTINE)(PVOID Parameter);
// Modified by Andrew Greenwood, 16th July 2003:
typedef struct _WORK_QUEUE_ITEM
{
LIST_ENTRY Entry;
PWORKER_THREAD_ROUTINE Routine;
PVOID Context;
LIST_ENTRY List;
PWORKER_THREAD_ROUTINE WorkerRoutine;
PVOID Parameter;
} WORK_QUEUE_ITEM, *PWORK_QUEUE_ITEM;
typedef PVOID STDCALL_FUNC

View file

@ -1,6 +1,6 @@
#ifndef __INCLUDE_DDK_HALFUNCS_H
#define __INCLUDE_DDK_HALFUNCS_H
/* $Id: halfuncs.h,v 1.9 2003/07/15 16:26:18 silverblade Exp $ */
/* $Id: halfuncs.h,v 1.10 2003/07/17 16:57:38 silverblade Exp $ */
#include <ntos/haltypes.h>
@ -106,6 +106,7 @@ ULONG STDCALL
HalGetDmaAlignmentRequirement(
VOID);
BOOLEAN STDCALL
HalGetEnvironmentVariable(IN PCH Name,
OUT PCH Value,

View file

@ -1,4 +1,4 @@
/* $Id: iotypes.h,v 1.49 2003/06/07 11:34:36 chorns Exp $
/* $Id: iotypes.h,v 1.50 2003/07/17 16:57:38 silverblade Exp $
*
*/
@ -847,7 +847,7 @@ typedef struct _CONFIGURATION_INFORMATION
{
ULONG DiskCount;
ULONG FloppyCount;
ULONG CDRomCount;
ULONG CdRomCount;
ULONG TapeCount;
ULONG ScsiPortCount;
ULONG SerialCount;

View file

@ -23,23 +23,29 @@ struct _KPROCESS* KeGetCurrentProcess(VOID);
VOID STDCALL KeAcquireSpinLock (PKSPIN_LOCK SpinLock,
PKIRQL OldIrql);
//VOID STDCALL KeAcquireSpinLockAtDpcLevel (PKSPIN_LOCK SpinLock);
#ifndef __USE_W32API
VOID STDCALL KeAcquireSpinLockAtDpcLevel (IN PKSPIN_LOCK SpinLock);
//NTOSAPI
//DDKFASTAPI
STDCALL
VOID
KeAcquireSpinLockAtDpcLevel(
IN PKSPIN_LOCK SpinLock);
//STDCALL
//VOID
//KefAcquireSpinLockAtDpcLevel(
// IN PKSPIN_LOCK SpinLock);
#define KefAcquireSpinLockAtDpcLevel KeAcquireSpinLockAtDpcLevel
//NTOSAPI
//DDKFASTAPI
STDCALL
VOID
KeReleaseSpinLockFromDpcLevel(
IN PKSPIN_LOCK SpinLock);
#endif
/*
* FUNCTION: Brings the system down in a controlled manner when an

View file

@ -23,7 +23,7 @@ struct _KTHREAD;
typedef struct _KTHREAD *PKTHREAD, *PRKTHREAD;
typedef NTSTATUS STDCALL_FUNC
typedef VOID STDCALL_FUNC
(*PKSTART_ROUTINE)(PVOID StartContext);
typedef VOID STDCALL_FUNC

View file

@ -46,20 +46,20 @@ typedef struct _LPC_SECTION_READ
PVOID ViewBase;
} LPC_SECTION_READ, *PLPC_SECTION_READ;
typedef struct _LPC_MESSAGE_HEADER
typedef struct _LPC_MESSAGE
{
USHORT DataSize;
USHORT MessageSize;
// LPC_TYPE MessageType;
USHORT MessageType;
USHORT VirtualRangesOffset;
CLIENT_ID Cid;
ULONG MessageId;
ULONG SharedSectionSize;
ULONG SharedSectionSize; // CallbackID
} LPC_MESSAGE, *PLPC_MESSAGE;
#endif /* !__USE_W32API */
typedef struct _LPC_TERMINATION_MESSAGE
{
LPC_MESSAGE Header;

View file

@ -172,6 +172,11 @@ typedef union _ULARGE_INTEGER
ULONGLONG QuadPart;
} ULARGE_INTEGER, *PULARGE_INTEGER;
// Moved here by AG
// typedef ULARGE_INTEGER TIME, *PTIME;
typedef struct _FILETIME
{
DWORD dwLowDateTime;

View file

@ -202,113 +202,111 @@ enum _SYSTEM_INFORMATION_CLASS
} SYSTEM_INFORMATION_CLASS;
// SystemBasicInformation (0)
// Modified by Andrew Greenwood (15th July 2003) to match Win 32 API headers
typedef
struct _SYSTEM_BASIC_INFORMATION
{
ULONG Reserved;
ULONG TimerResolution;
ULONG PageSize;
ULONG Unknown;
ULONG MaximumIncrement;
ULONG PhysicalPageSize;
ULONG NumberOfPhysicalPages;
ULONG LowestPhysicalPageNumber;
ULONG HighestPhysicalPageNumber;
ULONG LowestPhysicalPage;
ULONG HighestPhysicalPage;
ULONG AllocationGranularity;
ULONG MinimumUserModeAddress;
ULONG MaximumUserModeAddress;
KAFFINITY ActiveProcessorsAffinityMask;
CCHAR NumberOfProcessors;
ULONG LowestUserAddress;
ULONG HighestUserAddress;
KAFFINITY ActiveProcessors;
CCHAR NumberProcessors;
} SYSTEM_BASIC_INFORMATION, *PSYSTEM_BASIC_INFORMATION;
// SystemProcessorInformation (1)
typedef
struct _SYSTEM_PROCESSOR_INFORMATION
{
USHORT ProcessorArchitecture;
USHORT ProcessorLevel;
USHORT ProcessorRevision;
USHORT Reserved;
ULONG ProcessorFeatureBits;
// Modified by Andrew Greenwood (15th July 2003) to match Win 32 API headers
typedef struct _SYSTEM_PROCESSOR_INFORMATION {
USHORT ProcessorArchitecture;
USHORT ProcessorLevel;
USHORT ProcessorRevision;
USHORT Unknown;
ULONG FeatureBits;
} SYSTEM_PROCESSOR_INFORMATION, *PSYSTEM_PROCESSOR_INFORMATION;
// SystemPerformanceInfo (2)
typedef
struct _SYSTEM_PERFORMANCE_INFORMATION
{
LARGE_INTEGER IdleProcessorTime;
LARGE_INTEGER IoReadTransferCount;
LARGE_INTEGER IoWriteTransferCount;
LARGE_INTEGER IoOtherTransferCount;
ULONG IoReadOperationCount;
ULONG IoWriteOperationCount;
ULONG IoOtherOperationCount;
ULONG AvailablePages;
ULONG CommitedPages;
ULONG CommitLimit;
ULONG PeakCommitment;
ULONG PageFaultCount;
ULONG CopyOnWriteCount;
ULONG TransitionCount;
ULONG CacheTransitionCount;
ULONG DemandZeroCount;
ULONG PageReadCount;
ULONG PageReadIoCount;
ULONG CacheReadCount;
ULONG CacheIoCount;
ULONG DirtyPagesWriteCount;
ULONG DirtyWriteIoCount;
ULONG MappedPagesWriteCount;
ULONG MappedWriteIoCount;
ULONG PagedPoolPages;
ULONG NonPagedPoolPages;
ULONG Unknown6;
ULONG Unknown7;
ULONG Unknown8;
ULONG Unknown9;
ULONG MmTotalSystemFreePtes;
ULONG MmSystemCodepage;
ULONG MmTotalSystemDriverPages;
ULONG MmTotalSystemCodePages;
ULONG Unknown10;
ULONG Unknown11;
ULONG Unknown12;
ULONG MmSystemCachePage;
ULONG MmPagedPoolPage;
ULONG MmSystemDriverPage;
ULONG CcFastReadNoWait;
ULONG CcFastReadWait;
ULONG CcFastReadResourceMiss;
ULONG CcFastReadNotPossible;
ULONG CcFastMdlReadNoWait;
ULONG CcFastMdlReadWait;
ULONG CcFastMdlReadResourceMiss;
ULONG CcFastMdlReadNotPossible;
ULONG CcMapDataNoWait;
ULONG CcMapDataWait;
ULONG CcMapDataNoWaitMiss;
ULONG CcMapDataWaitMiss;
ULONG CcPinMappedDataCount;
ULONG CcPinReadNoWait;
ULONG CcPinReadWait;
ULONG CcPinReadNoWaitMiss;
ULONG CcPinReadWaitMiss;
ULONG CcCopyReadNoWait;
ULONG CcCopyReadWait;
ULONG CcCopyReadNoWaitMiss;
ULONG CcCopyReadWaitMiss;
ULONG CcMdlReadNoWait;
ULONG CcMdlReadWait;
ULONG CcMdlReadNoWaitMiss;
ULONG CcMdlReadWaitMiss;
ULONG CcReadaheadIos;
ULONG CcLazyWriteIos;
ULONG CcLazyWritePages;
ULONG CcDataFlushes;
ULONG CcDataPages;
ULONG ContextSwitches;
ULONG Unknown13;
ULONG Unknown14;
ULONG SystemCalls;
} SYSTEM_PERFORMANCE_INFO, *PSYSTEM_PERFORMANCE_INFO;
// Modified by Andrew Greenwood (15th July 2003) to match Win 32 API headers
typedef struct _SYSTEM_PERFORMANCE_INFORMATION {
LARGE_INTEGER IdleTime;
LARGE_INTEGER ReadTransferCount;
LARGE_INTEGER WriteTransferCount;
LARGE_INTEGER OtherTransferCount;
ULONG ReadOperationCount;
ULONG WriteOperationCount;
ULONG OtherOperationCount;
ULONG AvailablePages;
ULONG TotalCommittedPages;
ULONG TotalCommitLimit;
ULONG PeakCommitment;
ULONG PageFaults;
ULONG WriteCopyFaults;
ULONG TransitionFaults;
ULONG CacheTransitionFaults;
ULONG DemandZeroFaults;
ULONG PagesRead;
ULONG PageReadIos;
ULONG CacheReads;
ULONG CacheIos;
ULONG PagefilePagesWritten;
ULONG PagefilePageWriteIos;
ULONG MappedFilePagesWritten;
ULONG MappedFilePageWriteIos;
ULONG PagedPoolUsage;
ULONG NonPagedPoolUsage;
ULONG PagedPoolAllocs;
ULONG PagedPoolFrees;
ULONG NonPagedPoolAllocs;
ULONG NonPagedPoolFrees;
ULONG TotalFreeSystemPtes;
ULONG SystemCodePage;
ULONG TotalSystemDriverPages;
ULONG TotalSystemCodePages;
ULONG SmallNonPagedLookasideListAllocateHits;
ULONG SmallPagedLookasideListAllocateHits;
ULONG Reserved3;
ULONG MmSystemCachePage;
ULONG PagedPoolPage;
ULONG SystemDriverPage;
ULONG FastReadNoWait;
ULONG FastReadWait;
ULONG FastReadResourceMiss;
ULONG FastReadNotPossible;
ULONG FastMdlReadNoWait;
ULONG FastMdlReadWait;
ULONG FastMdlReadResourceMiss;
ULONG FastMdlReadNotPossible;
ULONG MapDataNoWait;
ULONG MapDataWait;
ULONG MapDataNoWaitMiss;
ULONG MapDataWaitMiss;
ULONG PinMappedDataCount;
ULONG PinReadNoWait;
ULONG PinReadWait;
ULONG PinReadNoWaitMiss;
ULONG PinReadWaitMiss;
ULONG CopyReadNoWait;
ULONG CopyReadWait;
ULONG CopyReadNoWaitMiss;
ULONG CopyReadWaitMiss;
ULONG MdlReadNoWait;
ULONG MdlReadWait;
ULONG MdlReadNoWaitMiss;
ULONG MdlReadWaitMiss;
ULONG ReadAheadIos;
ULONG LazyWriteIos;
ULONG LazyWritePages;
ULONG DataFlushes;
ULONG DataPages;
ULONG ContextSwitches;
ULONG FirstLevelTbFills;
ULONG SecondLevelTbFills;
ULONG SystemCalls;
} SYSTEM_PERFORMANCE_INFORMATION, *PSYSTEM_PERFORMANCE_INFORMATION;
// SystemModuleInformation (11)
typedef struct _SYSTEM_MODULE_INFORMATION_ENTRY {
@ -457,7 +455,7 @@ struct _SYSTEM_SET_TIME_ADJUSTMENT
ULONG TimeAdjustment;
BOOLEAN TimeSynchronization;
} SYSTEM_TIME_ADJUSTMENT_INFO, *PSYSTEM_TIME_ADJUSTMENT_INFO;
} SYSTEM_SET_TIME_ADJUSTMENT, *PSYSTEM_SET_TIME_ADJUSTMENT;
// atom information

View file

@ -1,4 +1,4 @@
/* $Id: global.c,v 1.12 2003/07/10 18:50:51 chorns Exp $
/* $Id: global.c,v 1.13 2003/07/17 16:57:38 silverblade Exp $
*
* Win32 Global/Local heap functions (GlobalXXX, LocalXXX).
* These functions included in Win32 for compatibility with 16 bit Windows
@ -244,7 +244,7 @@ VOID STDCALL
GlobalMemoryStatus(LPMEMORYSTATUS lpBuffer)
{
NTSTATUS Status;
SYSTEM_PERFORMANCE_INFO Spi;
SYSTEM_PERFORMANCE_INFORMATION Spi;
QUOTA_LIMITS Ql;
VM_COUNTERS Vmc;
PIMAGE_NT_HEADERS ImageNtHeader;

View file

@ -1,4 +1,4 @@
/* $Id: sysinfo.c,v 1.8 2003/07/10 18:50:51 chorns Exp $
/* $Id: sysinfo.c,v 1.9 2003/07/17 16:57:38 silverblade Exp $
*
* reactos/lib/kernel32/misc/sysinfo.c
*
@ -58,11 +58,11 @@ GetSystemInfo (
Si->u.s.wProcessorArchitecture = Spi.ProcessorArchitecture;
/* For future use: always zero */
Si->u.s.wReserved = 0;
Si->dwPageSize = Sbi.PageSize;
Si->lpMinimumApplicationAddress = (PVOID)Sbi.MinimumUserModeAddress;
Si->lpMaximumApplicationAddress = (PVOID)Sbi.MaximumUserModeAddress;
Si->dwActiveProcessorMask = Sbi.ActiveProcessorsAffinityMask;
Si->dwNumberOfProcessors = Sbi.NumberOfProcessors;
Si->dwPageSize = Sbi.PhysicalPageSize;
Si->lpMinimumApplicationAddress = (PVOID)Sbi.LowestUserAddress;
Si->lpMaximumApplicationAddress = (PVOID)Sbi.HighestUserAddress;
Si->dwActiveProcessorMask = Sbi.ActiveProcessors;
Si->dwNumberOfProcessors = Sbi.NumberProcessors;
/*
* Compatibility (no longer relevant):
* PROCESSOR_INTEL_386 386

View file

@ -1,4 +1,4 @@
/* $Id: time.c,v 1.22 2003/07/10 18:50:51 chorns Exp $
/* $Id: time.c,v 1.23 2003/07/17 16:57:38 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
@ -460,14 +460,14 @@ SetSystemTimeAdjustment(DWORD dwTimeAdjustment,
WINBOOL bTimeAdjustmentDisabled)
{
NTSTATUS Status;
SYSTEM_TIME_ADJUSTMENT_INFO Buffer;
SYSTEM_SET_TIME_ADJUSTMENT Buffer;
Buffer.TimeAdjustment = (ULONG)dwTimeAdjustment;
Buffer.TimeSynchronization = (BOOLEAN)bTimeAdjustmentDisabled;
Status = NtSetSystemInformation(SystemTimeAdjustmentInformation,
&Buffer,
sizeof(SYSTEM_TIME_ADJUSTMENT_INFO));
sizeof(SYSTEM_SET_TIME_ADJUSTMENT));
if (!NT_SUCCESS(Status))
{
SetLastErrorByStatus(Status);

View file

@ -1,4 +1,4 @@
/* $Id: sysinfo.c,v 1.22 2003/07/11 01:23:14 royce Exp $
/* $Id: sysinfo.c,v 1.23 2003/07/17 16:57:38 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -16,6 +16,7 @@
#define NTOS_MODE_KERNEL
#include <ntos.h>
#include <ddk/halfuncs.h>
#include <internal/ex.h>
#include <internal/ldr.h>
#include <internal/safe.h>
@ -292,17 +293,17 @@ QSI_DEF(SystemBasicInformation)
return (STATUS_INFO_LENGTH_MISMATCH);
}
Sbi->Reserved = 0;
Sbi->TimerResolution = 0; /* FIXME */
Sbi->PageSize = PAGE_SIZE; /* FIXME: it should be PAGE_SIZE */
Sbi->Unknown = 0;
Sbi->MaximumIncrement = 0; /* FIXME */
Sbi->PhysicalPageSize = PAGE_SIZE; /* FIXME: it should be PAGE_SIZE */
Sbi->NumberOfPhysicalPages = 0; /* FIXME */
Sbi->LowestPhysicalPageNumber = 0; /* FIXME */
Sbi->HighestPhysicalPageNumber = 0; /* FIXME */
Sbi->LowestPhysicalPage = 0; /* FIXME */
Sbi->HighestPhysicalPage = 0; /* FIXME */
Sbi->AllocationGranularity = 65536; /* hard coded on Intel? */
Sbi->MinimumUserModeAddress = 0; /* FIXME */
Sbi->MaximumUserModeAddress = 0; /* FIXME */
Sbi->ActiveProcessorsAffinityMask = 0x00000001; /* FIXME */
Sbi->NumberOfProcessors = 1; /* FIXME */
Sbi->LowestUserAddress = 0; /* FIXME */
Sbi->HighestUserAddress = 0; /* FIXME */
Sbi->ActiveProcessors = 0x00000001; /* FIXME */
Sbi->NumberProcessors = 1; /* FIXME */
return (STATUS_SUCCESS);
}
@ -326,8 +327,8 @@ QSI_DEF(SystemProcessorInformation)
Spi->ProcessorArchitecture = 0; /* FIXME */
Spi->ProcessorLevel = 0; /* FIXME */
Spi->ProcessorRevision = 0; /* FIXME */
Spi->Reserved = 0;
Spi->ProcessorFeatureBits = 0x00000000; /* FIXME */
Spi->Unknown = 0;
Spi->FeatureBits = 0x00000000; /* FIXME */
return (STATUS_SUCCESS);
}
@ -335,91 +336,97 @@ QSI_DEF(SystemProcessorInformation)
/* Class 2 - Performance Information */
QSI_DEF(SystemPerformanceInformation)
{
PSYSTEM_PERFORMANCE_INFO Spi
= (PSYSTEM_PERFORMANCE_INFO) Buffer;
PSYSTEM_PERFORMANCE_INFORMATION Spi
= (PSYSTEM_PERFORMANCE_INFORMATION) Buffer;
*ReqSize = sizeof (SYSTEM_PERFORMANCE_INFO);
*ReqSize = sizeof (SYSTEM_PERFORMANCE_INFORMATION);
/*
* Check user buffer's size
*/
if (Size < sizeof (SYSTEM_PERFORMANCE_INFO))
if (Size < sizeof (SYSTEM_PERFORMANCE_INFORMATION))
{
return (STATUS_INFO_LENGTH_MISMATCH);
}
Spi->IdleProcessorTime.QuadPart = 0; /* FIXME */
Spi->IoReadTransferCount.QuadPart = 0; /* FIXME */
Spi->IoWriteTransferCount.QuadPart = 0; /* FIXME */
Spi->IoOtherTransferCount.QuadPart = 0; /* FIXME */
Spi->IoReadOperationCount = 0; /* FIXME */
Spi->IoWriteOperationCount = 0; /* FIXME */
Spi->IoOtherOperationCount = 0; /* FIXME */
Spi->IdleTime.QuadPart = 0; /* FIXME */
Spi->ReadTransferCount.QuadPart = 0; /* FIXME */
Spi->WriteTransferCount.QuadPart = 0; /* FIXME */
Spi->OtherTransferCount.QuadPart = 0; /* FIXME */
Spi->ReadOperationCount = 0; /* FIXME */
Spi->WriteOperationCount = 0; /* FIXME */
Spi->OtherOperationCount = 0; /* FIXME */
Spi->AvailablePages = 0; /* FIXME */
Spi->CommitedPages = 0; /* FIXME */
Spi->CommitLimit = 0; /* FIXME */
Spi->TotalCommittedPages = 0; /* FIXME */
Spi->TotalCommitLimit = 0; /* FIXME */
Spi->PeakCommitment = 0; /* FIXME */
Spi->PageFaultCount = 0; /* FIXME */
Spi->CopyOnWriteCount = 0; /* FIXME */
Spi->TransitionCount = 0; /* FIXME */
Spi->CacheTransitionCount = 0; /* FIXME */
Spi->DemandZeroCount = 0; /* FIXME */
Spi->PageReadCount = 0; /* FIXME */
Spi->PageReadIoCount = 0; /* FIXME */
Spi->CacheReadCount = 0; /* FIXME */
Spi->CacheIoCount = 0; /* FIXME */
Spi->DirtyPagesWriteCount = 0; /* FIXME */
Spi->DirtyWriteIoCount = 0; /* FIXME */
Spi->MappedPagesWriteCount = 0; /* FIXME */
Spi->MappedWriteIoCount = 0; /* FIXME */
Spi->PagedPoolPages = 0; /* FIXME */
Spi->NonPagedPoolPages = 0; /* FIXME */
Spi->Unknown6 = 0; /* FIXME */
Spi->Unknown7 = 0; /* FIXME */
Spi->Unknown8 = 0; /* FIXME */
Spi->Unknown9 = 0; /* FIXME */
Spi->MmTotalSystemFreePtes = 0; /* FIXME */
Spi->MmSystemCodepage = 0; /* FIXME */
Spi->MmTotalSystemDriverPages = 0; /* FIXME */
Spi->MmTotalSystemCodePages = 0; /* FIXME */
Spi->Unknown10 = 0; /* FIXME */
Spi->Unknown11 = 0; /* FIXME */
Spi->Unknown12 = 0; /* FIXME */
Spi->PageFaults = 0; /* FIXME */
Spi->WriteCopyFaults = 0; /* FIXME */
Spi->TransitionFaults = 0; /* FIXME */
Spi->CacheTransitionFaults = 0; /* FIXME */
Spi->DemandZeroFaults = 0; /* FIXME */
Spi->PagesRead = 0; /* FIXME */
Spi->PageReadIos = 0; /* FIXME */
Spi->CacheReads = 0; /* FIXME */
Spi->CacheIos = 0; /* FIXME */
Spi->PagefilePagesWritten = 0; /* FIXME */
Spi->PagefilePageWriteIos = 0; /* FIXME */
Spi->MappedFilePagesWritten = 0; /* FIXME */
Spi->MappedFilePageWriteIos = 0; /* FIXME */
Spi->PagedPoolUsage = 0; /* FIXME */
Spi->NonPagedPoolUsage = 0; /* FIXME */
Spi->PagedPoolAllocs = 0; /* FIXME */
Spi->PagedPoolFrees = 0; /* FIXME */
Spi->NonPagedPoolAllocs = 0; /* FIXME */
Spi->NonPagedPoolFrees = 0; /* FIXME */
Spi->TotalFreeSystemPtes = 0; /* FIXME */
Spi->SystemCodePage = 0; /* FIXME */
Spi->TotalSystemDriverPages = 0; /* FIXME */
Spi->TotalSystemCodePages = 0; /* FIXME */
Spi->SmallNonPagedLookasideListAllocateHits = 0; /* FIXME */
Spi->SmallPagedLookasideListAllocateHits = 0; /* FIXME */
Spi->Reserved3 = 0; /* FIXME */
Spi->MmSystemCachePage = 0; /* FIXME */
Spi->MmPagedPoolPage = 0; /* FIXME */
Spi->MmSystemDriverPage = 0; /* FIXME */
Spi->CcFastReadNoWait = 0; /* FIXME */
Spi->CcFastReadWait = 0; /* FIXME */
Spi->CcFastReadResourceMiss = 0; /* FIXME */
Spi->CcFastReadNotPossible = 0; /* FIXME */
Spi->CcFastMdlReadNoWait = 0; /* FIXME */
Spi->CcFastMdlReadWait = 0; /* FIXME */
Spi->CcFastMdlReadResourceMiss = 0; /* FIXME */
Spi->CcFastMdlReadNotPossible = 0; /* FIXME */
Spi->CcMapDataNoWait = 0; /* FIXME */
Spi->CcMapDataWait = 0; /* FIXME */
Spi->CcMapDataNoWaitMiss = 0; /* FIXME */
Spi->CcMapDataWaitMiss = 0; /* FIXME */
Spi->CcPinMappedDataCount = 0; /* FIXME */
Spi->CcPinReadNoWait = 0; /* FIXME */
Spi->CcPinReadWait = 0; /* FIXME */
Spi->CcPinReadNoWaitMiss = 0; /* FIXME */
Spi->CcPinReadWaitMiss = 0; /* FIXME */
Spi->CcCopyReadNoWait = 0; /* FIXME */
Spi->CcCopyReadWait = 0; /* FIXME */
Spi->CcCopyReadNoWaitMiss = 0; /* FIXME */
Spi->CcCopyReadWaitMiss = 0; /* FIXME */
Spi->CcMdlReadNoWait = 0; /* FIXME */
Spi->CcMdlReadWait = 0; /* FIXME */
Spi->CcMdlReadNoWaitMiss = 0; /* FIXME */
Spi->CcMdlReadWaitMiss = 0; /* FIXME */
Spi->CcReadaheadIos = 0; /* FIXME */
Spi->CcLazyWriteIos = 0; /* FIXME */
Spi->CcLazyWritePages = 0; /* FIXME */
Spi->CcDataFlushes = 0; /* FIXME */
Spi->CcDataPages = 0; /* FIXME */
Spi->PagedPoolPage = 0; /* FIXME */
Spi->SystemDriverPage = 0; /* FIXME */
Spi->FastReadNoWait = 0; /* FIXME */
Spi->FastReadWait = 0; /* FIXME */
Spi->FastReadResourceMiss = 0; /* FIXME */
Spi->FastReadNotPossible = 0; /* FIXME */
Spi->FastMdlReadNoWait = 0; /* FIXME */
Spi->FastMdlReadWait = 0; /* FIXME */
Spi->FastMdlReadResourceMiss = 0; /* FIXME */
Spi->FastMdlReadNotPossible = 0; /* FIXME */
Spi->MapDataNoWait = 0; /* FIXME */
Spi->MapDataWait = 0; /* FIXME */
Spi->MapDataNoWaitMiss = 0; /* FIXME */
Spi->MapDataWaitMiss = 0; /* FIXME */
Spi->PinMappedDataCount = 0; /* FIXME */
Spi->PinReadNoWait = 0; /* FIXME */
Spi->PinReadWait = 0; /* FIXME */
Spi->PinReadNoWaitMiss = 0; /* FIXME */
Spi->PinReadWaitMiss = 0; /* FIXME */
Spi->CopyReadNoWait = 0; /* FIXME */
Spi->CopyReadWait = 0; /* FIXME */
Spi->CopyReadNoWaitMiss = 0; /* FIXME */
Spi->CopyReadWaitMiss = 0; /* FIXME */
Spi->MdlReadNoWait = 0; /* FIXME */
Spi->MdlReadWait = 0; /* FIXME */
Spi->MdlReadNoWaitMiss = 0; /* FIXME */
Spi->MdlReadWaitMiss = 0; /* FIXME */
Spi->ReadAheadIos = 0; /* FIXME */
Spi->LazyWriteIos = 0; /* FIXME */
Spi->LazyWritePages = 0; /* FIXME */
Spi->DataFlushes = 0; /* FIXME */
Spi->DataPages = 0; /* FIXME */
Spi->ContextSwitches = 0; /* FIXME */
Spi->Unknown13 = 0; /* FIXME */
Spi->Unknown14 = 0; /* FIXME */
Spi->FirstLevelTbFills = 0; /* FIXME */
Spi->SecondLevelTbFills = 0; /* FIXME */
Spi->SystemCalls = 0; /* FIXME */
return (STATUS_SUCCESS);
@ -580,7 +587,7 @@ QSI_DEF(SystemDeviceInformation)
Sdi->NumberOfDisks = ConfigInfo->DiskCount;
Sdi->NumberOfFloppies = ConfigInfo->FloppyCount;
Sdi->NumberOfCdRoms = ConfigInfo->CDRomCount;
Sdi->NumberOfCdRoms = ConfigInfo->CdRomCount;
Sdi->NumberOfTapes = ConfigInfo->TapeCount;
Sdi->NumberOfSerialPorts = ConfigInfo->SerialCount;
Sdi->NumberOfParallelPorts = ConfigInfo->ParallelCount;
@ -782,9 +789,9 @@ SSI_DEF(SystemUnloadImage)
/* Class 28 - Time Adjustment Information */
QSI_DEF(SystemTimeAdjustmentInformation)
{
if (sizeof (SYSTEM_TIME_ADJUSTMENT_INFO) > Size)
if (sizeof (SYSTEM_SET_TIME_ADJUSTMENT) > Size)
{
* ReqSize = sizeof (SYSTEM_TIME_ADJUSTMENT_INFO);
* ReqSize = sizeof (SYSTEM_SET_TIME_ADJUSTMENT);
return (STATUS_INFO_LENGTH_MISMATCH);
}
/* FIXME: */
@ -793,7 +800,7 @@ QSI_DEF(SystemTimeAdjustmentInformation)
SSI_DEF(SystemTimeAdjustmentInformation)
{
if (sizeof (SYSTEM_TIME_ADJUSTMENT_INFO) > Size)
if (sizeof (SYSTEM_SET_TIME_ADJUSTMENT) > Size)
{
return (STATUS_INFO_LENGTH_MISMATCH);
}

View file

@ -1,4 +1,4 @@
/* $Id: work.c,v 1.16 2003/07/10 06:27:13 royce Exp $
/* $Id: work.c,v 1.17 2003/07/17 16:57:38 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -60,8 +60,9 @@ WORK_QUEUE EiHyperCriticalWorkQueue;
/* FUNCTIONS ****************************************************************/
static NTSTATUS STDCALL
ExWorkerThreadEntryPoint(PVOID context)
//static NTSTATUS STDCALL
static VOID STDCALL
ExWorkerThreadEntryPoint(IN PVOID context)
/*
* FUNCTION: Entry point for a worker thread
* ARGUMENTS:
@ -81,8 +82,8 @@ ExWorkerThreadEntryPoint(PVOID context)
&queue->Lock);
if (current!=NULL)
{
item = CONTAINING_RECORD(current,WORK_QUEUE_ITEM,Entry);
item->Routine(item->Context);
item = CONTAINING_RECORD(current,WORK_QUEUE_ITEM,List);
item->WorkerRoutine(item->Parameter);
}
else
{
@ -152,46 +153,51 @@ ExQueueWorkItem (PWORK_QUEUE_ITEM WorkItem,
* QueueType = Queue to insert it in
*/
{
assert(WorkItem!=NULL);
ASSERT_IRQL(DISPATCH_LEVEL);
assert(WorkItem!=NULL);
ASSERT_IRQL(DISPATCH_LEVEL);
/*
* Insert the item in the appropiate queue and wake up any thread
* waiting for something to do
*/
switch(QueueType)
{
case DelayedWorkQueue:
ExInterlockedInsertTailList(&EiNormalWorkQueue.Head,
&WorkItem->Entry,
switch(QueueType)
{
case DelayedWorkQueue:
ExInterlockedInsertTailList(&EiNormalWorkQueue.Head,
&WorkItem->List,
&EiNormalWorkQueue.Lock);
KeReleaseSemaphore(&EiNormalWorkQueue.Sem,
KeReleaseSemaphore(&EiNormalWorkQueue.Sem,
IO_NO_INCREMENT,
1,
FALSE);
break;
case CriticalWorkQueue:
ExInterlockedInsertTailList(&EiCriticalWorkQueue.Head,
&WorkItem->Entry,
case CriticalWorkQueue:
ExInterlockedInsertTailList(&EiCriticalWorkQueue.Head,
&WorkItem->List,
&EiCriticalWorkQueue.Lock);
KeReleaseSemaphore(&EiCriticalWorkQueue.Sem,
IO_NO_INCREMENT,
1,
FALSE);
break;
KeReleaseSemaphore(&EiCriticalWorkQueue.Sem,
IO_NO_INCREMENT,
1,
FALSE);
break;
case HyperCriticalWorkQueue:
ExInterlockedInsertTailList(&EiHyperCriticalWorkQueue.Head,
&WorkItem->Entry,
case HyperCriticalWorkQueue:
ExInterlockedInsertTailList(&EiHyperCriticalWorkQueue.Head,
&WorkItem->List,
&EiHyperCriticalWorkQueue.Lock);
KeReleaseSemaphore(&EiHyperCriticalWorkQueue.Sem,
KeReleaseSemaphore(&EiHyperCriticalWorkQueue.Sem,
IO_NO_INCREMENT,
1,
FALSE);
break;
break;
}
#ifdef __USE_W32API
case MaximumWorkQueue:
// Unimplemented
break;
#endif
}
}
/* EOF */

View file

@ -1,4 +1,4 @@
/* $Id: zone.c,v 1.5 2003/07/10 06:27:13 royce Exp $
/* $Id: zone.c,v 1.6 2003/07/17 16:57:38 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -13,6 +13,15 @@
/* FUNCTIONS ***************************************************************/
// undocumented? from extypes.h in here for now...
//typedef struct _ZONE_ENTRY
//{
// SINGLE_LIST_ENTRY Entry;
//} ZONE_ENTRY, *PZONE_ENTRY;
/*
* @implemented
*/
@ -24,21 +33,21 @@ ExExtendZone (
ULONG SegmentSize
)
{
PZONE_ENTRY entry;
PZONE_SEGMENT seg;
PZONE_SEGMENT_HEADER entry;
PZONE_SEGMENT_HEADER seg;
unsigned int i;
seg = (PZONE_SEGMENT)Segment;
seg->size = SegmentSize;
seg = (PZONE_SEGMENT_HEADER)Segment;
seg->Reserved = (PVOID) SegmentSize;
PushEntryList(&Zone->SegmentList,&seg->Entry);
PushEntryList(&Zone->SegmentList,&seg->SegmentList);
entry = (PZONE_ENTRY)( ((PVOID)seg) + sizeof(ZONE_SEGMENT) );
entry = (PZONE_SEGMENT_HEADER)( ((PVOID)seg) + sizeof(ZONE_SEGMENT_HEADER) );
for (i=0;i<(SegmentSize / Zone->BlockSize);i++)
{
PushEntryList(&Zone->FreeList,&entry->Entry);
entry = (PZONE_ENTRY)(((PVOID)entry) + sizeof(ZONE_ENTRY) +
PushEntryList(&Zone->FreeList,&entry->SegmentList);
entry = (PZONE_SEGMENT_HEADER)(((PVOID)entry) + sizeof(PZONE_SEGMENT_HEADER) +
Zone->BlockSize);
}
return(STATUS_SUCCESS);
@ -89,25 +98,25 @@ ExInitializeZone (
*/
{
unsigned int i;
PZONE_SEGMENT seg;
PZONE_ENTRY entry;
PZONE_SEGMENT_HEADER seg;
PZONE_SEGMENT_HEADER entry;
Zone->FreeList.Next=NULL;
Zone->SegmentList.Next=NULL;
Zone->BlockSize=BlockSize;
Zone->TotalSegmentSize = InitialSegmentSize;
seg = (PZONE_SEGMENT)InitialSegment;
seg->size = InitialSegmentSize;
seg = (PZONE_SEGMENT_HEADER)InitialSegment;
seg->Reserved = (PVOID*) InitialSegmentSize;
PushEntryList(&Zone->SegmentList,&seg->Entry);
PushEntryList(&Zone->SegmentList,&seg->SegmentList);
entry = (PZONE_ENTRY)( ((PVOID)seg) + sizeof(ZONE_SEGMENT) );
entry = (PZONE_SEGMENT_HEADER)( ((PVOID)seg) + sizeof(ZONE_SEGMENT_HEADER) );
for (i=0;i<(InitialSegmentSize / BlockSize);i++)
{
PushEntryList(&Zone->FreeList,&entry->Entry);
entry = (PZONE_ENTRY)(((PVOID)entry) + sizeof(ZONE_ENTRY) + BlockSize);
PushEntryList(&Zone->FreeList,&entry->SegmentList);
entry = (PZONE_SEGMENT_HEADER)(((PVOID)entry) + sizeof(PZONE_SEGMENT_HEADER) + BlockSize);
}
return(STATUS_SUCCESS);

View file

@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/* $Id: ps.h,v 1.49 2003/07/15 16:26:18 silverblade Exp $
/* $Id: ps.h,v 1.50 2003/07/17 16:57:38 silverblade Exp $
*
* FILE: ntoskrnl/ke/kthread.c
* PURPOSE: Process manager definitions
@ -315,8 +315,14 @@ struct _EPROCESS
KEVENT LockEvent; /* 06C */
/* Unknown. */
ULONG LockCount; /* 07C */
/* Time of process creation. */
#ifdef __USE_W32API
LARGE_INTEGER CreateTime; /* 080 */
#else
TIME CreateTime; /* 080 */
#endif
/* Time of process exit. */
TIME ExitTime; /* 088 */
/* Unknown. */

View file

@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/* $Id: arcname.c,v 1.11 2003/04/26 23:13:30 hyperion Exp $
/* $Id: arcname.c,v 1.12 2003/07/17 16:57:38 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -144,8 +144,8 @@ IoCreateArcNames(VOID)
}
/* create ARC names for cdrom drives */
DPRINT("CD-ROM drives: %lu\n", ConfigInfo->CDRomCount);
for (i = 0; i < ConfigInfo->CDRomCount; i++)
DPRINT("CD-ROM drives: %lu\n", ConfigInfo->CdRomCount);
for (i = 0; i < ConfigInfo->CdRomCount; i++)
{
swprintf(DeviceNameBuffer,
L"\\Device\\CdRom%lu",
@ -191,7 +191,7 @@ IopCheckCdromDevices(PULONG DeviceNumber)
FileFsVolume = (PFILE_FS_VOLUME_INFORMATION)Buffer;
ConfigInfo = IoGetConfigurationInformation();
for (i = 0; i < ConfigInfo->CDRomCount; i++)
for (i = 0; i < ConfigInfo->CdRomCount; i++)
{
swprintf(DeviceNameBuffer,
L"\\Device\\CdRom%lu\\",

View file

@ -1,4 +1,4 @@
/* $Id: xhaldrv.c,v 1.33 2003/06/27 00:16:33 ekohl Exp $
/* $Id: xhaldrv.c,v 1.34 2003/07/17 16:57:39 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -664,8 +664,8 @@ xHalIoAssignDriveLetters(IN PLOADER_PARAMETER_BLOCK LoaderBlock,
}
/* Assign cdrom drives */
DPRINT("CD-Rom drives: %d\n", ConfigInfo->CDRomCount);
for (i = 0; i < ConfigInfo->CDRomCount; i++)
DPRINT("CD-Rom drives: %d\n", ConfigInfo->CdRomCount);
for (i = 0; i < ConfigInfo->CdRomCount; i++)
{
swprintf(Buffer1,
L"\\Device\\CdRom%d",

View file

@ -1002,7 +1002,7 @@ NTSTATUS MmInitZeroPageThread(VOID)
NULL,
NULL,
&ZeroPageThreadId,
MmZeroPageThreadMain,
(PKSTART_ROUTINE) MmZeroPageThreadMain,
NULL);
if (!NT_SUCCESS(Status))
{

View file

@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/* $Id: mpw.c,v 1.14 2003/07/11 01:23:15 royce Exp $
/* $Id: mpw.c,v 1.15 2003/07/17 16:57:39 silverblade Exp $
*
* PROJECT: ReactOS kernel
* FILE: ntoskrnl/mm/mpw.c
@ -127,7 +127,7 @@ NTSTATUS MmInitMpwThread(VOID)
NULL,
NULL,
&MpwThreadId,
MmMpwThreadMain,
(PKSTART_ROUTINE) MmMpwThreadMain,
NULL);
if (!NT_SUCCESS(Status))
{

View file

@ -1,4 +1,4 @@
/* $Id: pager.c,v 1.13 2003/07/13 14:36:32 dwelch Exp $
/* $Id: pager.c,v 1.14 2003/07/17 16:57:39 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -99,7 +99,7 @@ NTSTATUS MmInitPagerThread(VOID)
NULL,
NULL,
&PagerThreadId,
MmPagerThreadMain,
(PKSTART_ROUTINE) MmPagerThreadMain,
NULL);
if (!NT_SUCCESS(Status))
{

View file

@ -53,7 +53,7 @@ VOID PsInitIdleThread(VOID)
NULL,
NULL,
NULL,
PsIdleThreadMain,
(PKSTART_ROUTINE) PsIdleThreadMain,
NULL);
Priority = LOW_PRIORITY;

View file

@ -1,4 +1,4 @@
/* $Id: thread.c,v 1.113 2003/07/11 01:23:15 royce Exp $
/* $Id: thread.c,v 1.114 2003/07/17 16:57:39 silverblade Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -465,7 +465,7 @@ PsInitThreadManagment(VOID)
NULL,
NULL,
NULL,
PiReaperThreadMain,
(PKSTART_ROUTINE) PiReaperThreadMain,
NULL);
if (!NT_SUCCESS(Status))
{