Use W32API for NTOSKRNL.
Modified: trunk/reactos/drivers/fs/vfat/vfat.h
Modified: trunk/reactos/hal/halx86/include/hal.h
Modified: trunk/reactos/include/ddk/halfuncs.h
Modified: trunk/reactos/include/ddk/ketypes.h
Modified: trunk/reactos/include/ddk/ntifs.h
Modified: trunk/reactos/include/ntos/halfuncs.h
Modified: trunk/reactos/include/ntos/krnltypes.h
Modified: trunk/reactos/ntoskrnl/cm/cm.h
Modified: trunk/reactos/ntoskrnl/cm/ntfunc.c
Modified: trunk/reactos/ntoskrnl/cm/regfile.c
Modified: trunk/reactos/ntoskrnl/ex/init.c
Modified: trunk/reactos/ntoskrnl/ex/mutant.c
Modified: trunk/reactos/ntoskrnl/ex/sysinfo.c
Modified: trunk/reactos/ntoskrnl/fs/fastio.c
Modified: trunk/reactos/ntoskrnl/fs/filelock.c
Modified: trunk/reactos/ntoskrnl/fs/notify.c
Modified: trunk/reactos/ntoskrnl/include/internal/cc.h
Modified: trunk/reactos/ntoskrnl/include/internal/debug.h
Modified: trunk/reactos/ntoskrnl/include/internal/ex.h
Modified: trunk/reactos/ntoskrnl/include/internal/ifs.h
Modified: trunk/reactos/ntoskrnl/include/internal/io.h
Modified: trunk/reactos/ntoskrnl/include/internal/kd.h
Modified: trunk/reactos/ntoskrnl/include/internal/kdb.h
Modified: trunk/reactos/ntoskrnl/include/internal/kdbochs.h
Modified: trunk/reactos/ntoskrnl/include/internal/kdgdb.h
Modified: trunk/reactos/ntoskrnl/include/internal/ke.h
Modified: trunk/reactos/ntoskrnl/include/internal/ldr.h
Modified: trunk/reactos/ntoskrnl/include/internal/mm.h
Modified: trunk/reactos/ntoskrnl/include/internal/module.h
Modified: trunk/reactos/ntoskrnl/include/internal/ntoskrnl.h
Modified: trunk/reactos/ntoskrnl/include/internal/ob.h
Modified: trunk/reactos/ntoskrnl/include/internal/po.h
Modified: trunk/reactos/ntoskrnl/include/internal/ps.h
Modified: trunk/reactos/ntoskrnl/include/internal/trap.h
Modified: trunk/reactos/ntoskrnl/include/ntoskrnl.h
Modified: trunk/reactos/ntoskrnl/io/disk.c
Modified: trunk/reactos/ntoskrnl/io/file.c
Modified: trunk/reactos/ntoskrnl/io/iomgr.c
Modified: trunk/reactos/ntoskrnl/io/irp.c
Modified: trunk/reactos/ntoskrnl/io/pnpmgr.c
Modified: trunk/reactos/ntoskrnl/io/resource.c
Modified: trunk/reactos/ntoskrnl/kdbg/kdb_cli.c
Modified: trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c
Modified: trunk/reactos/ntoskrnl/ke/i386/kernel.c
Modified: trunk/reactos/ntoskrnl/ke/kthread.c
Modified: trunk/reactos/ntoskrnl/mm/elf.inc.h
Modified: trunk/reactos/ntoskrnl/mm/elf32.c
Modified: trunk/reactos/ntoskrnl/mm/mm.c
Modified: trunk/reactos/ntoskrnl/mm/pe.c
Modified: trunk/reactos/ntoskrnl/mm/section.c
Modified: trunk/reactos/ntoskrnl/ntoskrnl.xml
Modified: trunk/reactos/ntoskrnl/ob/handle.c
Modified: trunk/reactos/ntoskrnl/ps/query.c
Modified: trunk/reactos/ntoskrnl/ps/quota.c
Modified: trunk/reactos/ntoskrnl/ps/security.c
Modified: trunk/reactos/ntoskrnl/rtl/i386/exception.c
Modified: trunk/reactos/ntoskrnl/rtl/misc.c
Modified: trunk/reactos/ntoskrnl/se/access.c
Modified: trunk/reactos/subsys/win32k/w32k.h
Modified: trunk/reactos/w32api/include/ddk/ntifs.h

Modified: trunk/reactos/drivers/fs/vfat/vfat.h
--- trunk/reactos/drivers/fs/vfat/vfat.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/drivers/fs/vfat/vfat.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -17,11 +17,13 @@
 #endif
 
 #ifdef USE_ROS_CC_AND_FS
+#ifndef __INCLUDE_DDK_NTIFS_H
 NTSTATUS STDCALL CcRosInitializeFileCache(PFILE_OBJECT, ULONG);
 NTSTATUS STDCALL CcRosReleaseFileCache(PFILE_OBJECT);
 #define FSCTL_ROS_QUERY_LCN_MAPPING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 63, METHOD_BUFFERED, FILE_ANY_ACCESS)
 typedef struct _ROS_QUERY_LCN_MAPPING { LARGE_INTEGER LcnDiskOffset; } ROS_QUERY_LCN_MAPPING, *PROS_QUERY_LCN_MAPPING;
 #endif
+#endif
 
 #define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S))
 #define ROUND_DOWN(N, S) ((N) - ((N) % (S)))

Modified: trunk/reactos/hal/halx86/include/hal.h
--- trunk/reactos/hal/halx86/include/hal.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/hal/halx86/include/hal.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -13,9 +13,7 @@
 #include <stdio.h>
 
 /* FIXME: NDK Headers */
-#include <ntos/types.h>
-#include <ntos/haltypes.h>
-#include <ntos/halfuncs.h>
+#include <roskrnl.h>
 
 /* Internal Kernel Headers */
 //#include <internal/mm.h>

Modified: trunk/reactos/include/ddk/halfuncs.h
--- trunk/reactos/include/ddk/halfuncs.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/include/ddk/halfuncs.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -136,10 +136,6 @@
 HalSetTimeIncrement
 */
 
-BOOLEAN STDCALL
-HalStartNextProcessor(ULONG Unknown1,
-		      ULONG Unknown2);
-
 /*
 HalStartProfileInterrupt
 */

Modified: trunk/reactos/include/ddk/ketypes.h
--- trunk/reactos/include/ddk/ketypes.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/include/ddk/ketypes.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -128,14 +128,6 @@
     DISPATCHER_HEADER Header;
 } KEVENT, *PKEVENT, *RESTRICTED_POINTER PRKEVENT;
 
-typedef struct _KEVENT_PAIR
-{
-   CSHORT Type;
-   CSHORT Size;
-   KEVENT LowEvent;
-   KEVENT HighEvent;
-} KEVENT_PAIR, *PKEVENT_PAIR;
-
 typedef ULONG_PTR KSPIN_LOCK, *PKSPIN_LOCK;
 
 typedef struct _KDEVICE_QUEUE 

Modified: trunk/reactos/include/ddk/ntifs.h
--- trunk/reactos/include/ddk/ntifs.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/include/ddk/ntifs.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1,3 +1,6 @@
+#ifndef __INCLUDE_DDK_NTIFS_H
+#define __INCLUDE_DDK_NTIFS_H
+
 #ifdef __USE_W32API
 
 #include_next <ddk/ntifs.h>
@@ -2,13 +5,12 @@
 
-NTSTATUS STDCALL
-CcRosInitializeFileCache (PFILE_OBJECT	FileObject,
-		          ULONG		CacheSegmentSize);
-NTSTATUS STDCALL
-CcRosReleaseFileCache (PFILE_OBJECT	FileObject);
-
 #else /* __USE_W32API */
 
-#ifndef __INCLUDE_DDK_NTIFS_H
-#define __INCLUDE_DDK_NTIFS_H
+#include <ddk/cctypes.h>
+#include <ddk/ccfuncs.h>
 
+#include <ddk/fstypes.h>
+#include <ddk/fsfuncs.h>
+
+#endif
+
 NTSTATUS STDCALL
@@ -27,13 +29,4 @@
   LARGE_INTEGER LcnDiskOffset;
 } ROS_QUERY_LCN_MAPPING, *PROS_QUERY_LCN_MAPPING;
 
-#include <ddk/cctypes.h>
-
-#include <ddk/ccfuncs.h>
-
-#include <ddk/fstypes.h>
-#include <ddk/fsfuncs.h>
-
 #endif /* __INCLUDE_DDK_NTIFS_H */
-
-#endif /* __USE_W32API */

Modified: trunk/reactos/include/ntos/halfuncs.h
--- trunk/reactos/include/ntos/halfuncs.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/include/ntos/halfuncs.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -90,6 +90,10 @@
 			     ULONG Unknown2,
 			     ULONG Unknown3);
 
+BOOLEAN STDCALL
+HalStartNextProcessor(ULONG Unknown1,
+		      ULONG Unknown2);
+
 VOID
 STDCALL
 IoAssignDriveLetters(IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock,

Modified: trunk/reactos/include/ntos/krnltypes.h
--- trunk/reactos/include/ntos/krnltypes.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/include/ntos/krnltypes.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -119,5 +119,18 @@
     ULONG64 Return;
 } KEXCEPTION_FRAME, *PKEXCEPTION_FRAME;
 
+typedef struct _KEVENT_PAIR
+{
+    CSHORT Type;
+    CSHORT Size;
+    KEVENT LowEvent;
+    KEVENT HighEvent;
+} KEVENT_PAIR, *PKEVENT_PAIR;
+
+typedef struct _RUNDOWN_DESCRIPTOR {
+    ULONG_PTR References;
+    KEVENT RundownEvent;
+} RUNDOWN_DESCRIPTOR, *PRUNDOWN_DESCRIPTOR;
+
 #endif /* __INCLUDE_NTOS_KRNLTYPES_H */
 

Modified: trunk/reactos/ntoskrnl/cm/cm.h
--- trunk/reactos/ntoskrnl/cm/cm.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/cm/cm.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -424,9 +424,9 @@
 } REG_NOTIFY_CLASS, *PREG_NOTIFY_CLASS;
 
 /* Registry Callback Function */
-typedef NTSTATUS (*PEX_CALLBACK_FUNCTION ) (
+typedef NTSTATUS (STDCALL *PEX_CALLBACK_FUNCTION ) (
     IN PVOID CallbackContext,
-    IN REG_NOTIFY_CLASS Argument1,
+    IN PVOID Argument1,
     IN PVOID Argument2
     );
 

Modified: trunk/reactos/ntoskrnl/cm/ntfunc.c
--- trunk/reactos/ntoskrnl/cm/ntfunc.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/cm/ntfunc.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -286,7 +286,7 @@
       ExReleaseFastMutex(&CmiCallbackLock);
 
       Status = CurrentCallback->Function(CurrentCallback->Context,
-                                         Argument1,
+                                         (PVOID)Argument1,
                                          Argument2);
       if(!NT_SUCCESS(Status))
       {

Modified: trunk/reactos/ntoskrnl/cm/regfile.c
--- trunk/reactos/ntoskrnl/cm/regfile.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/cm/regfile.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -398,8 +398,6 @@
 
   ExFreePool(Buffer);
 
-  ASSERTMSG(NT_SUCCESS(Status), ("Status: 0x%X\n", Status));
-
   if (!NT_SUCCESS(Status))
     {
       return(Status);
@@ -688,9 +686,8 @@
 	  return STATUS_REGISTRY_CORRUPT;
 	}
 
-      ASSERTMSG((Bin->BinSize % REG_BLOCK_SIZE) == 0,
-		("Bin size (0x%.08x) must be multiple of 4K\n",
-		Bin->BinSize));
+      ASSERTMSG("Bin size must be multiple of 4K\n",
+                (Bin->BinSize % REG_BLOCK_SIZE) == 0);
 
       /* Allocate the hive block */
       Hive->BlockList[BlockIndex].Bin = ExAllocatePool (PagedPool,

Modified: trunk/reactos/ntoskrnl/ex/init.c
--- trunk/reactos/ntoskrnl/ex/init.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/ex/init.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -248,8 +248,8 @@
     ASSERT(FIELD_OFFSET(KV86M_TRAP_FRAME, orig_ebp) == TF_ORIG_EBP);
     ASSERT(FIELD_OFFSET(KPCR, Tib.ExceptionList) == KPCR_EXCEPTION_LIST);
     ASSERT(FIELD_OFFSET(KPCR, Self) == KPCR_SELF);
-    ASSERT(FIELD_OFFSET(KPCR, PrcbData) + FIELD_OFFSET(KPRCB, CurrentThread) == KPCR_CURRENT_THREAD);
-    ASSERT(FIELD_OFFSET(KPCR, PrcbData) + FIELD_OFFSET(KPRCB, NpxThread) == KPCR_NPX_THREAD);
+    ASSERT(FIELD_OFFSET(KIPCR, PrcbData) + FIELD_OFFSET(KPRCB, CurrentThread) == KPCR_CURRENT_THREAD);
+    ASSERT(FIELD_OFFSET(KIPCR, PrcbData) + FIELD_OFFSET(KPRCB, NpxThread) == KPCR_NPX_THREAD);
     ASSERT(FIELD_OFFSET(KTSS, Esp0) == KTSS_ESP0);
     ASSERT(FIELD_OFFSET(KTSS, Eflags) == KTSS_EFLAGS);
     ASSERT(FIELD_OFFSET(KTSS, IoMapBase) == KTSS_IOMAPBASE);

Modified: trunk/reactos/ntoskrnl/ex/mutant.c
--- trunk/reactos/ntoskrnl/ex/mutant.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/ex/mutant.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -15,6 +15,10 @@
 #define NDEBUG
 #include <internal/debug.h>
 
+#ifndef MUTANT_INCREMENT
+#define MUTANT_INCREMENT                1
+#endif
+
 POBJECT_TYPE ExMutantObjectType = NULL;
 
 static GENERIC_MAPPING ExpMutantMapping = {

Modified: trunk/reactos/ntoskrnl/ex/sysinfo.c
--- trunk/reactos/ntoskrnl/ex/sysinfo.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/ex/sysinfo.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -415,9 +415,9 @@
 
 	Spi->IdleTime.QuadPart = TheIdleProcess->Pcb.KernelTime * 100000LL;
 
-	Spi->ReadTransferCount.QuadPart = IoReadTransferCount;
-	Spi->WriteTransferCount.QuadPart = IoWriteTransferCount;
-	Spi->OtherTransferCount.QuadPart = IoOtherTransferCount;
+	Spi->ReadTransferCount = IoReadTransferCount;
+	Spi->WriteTransferCount = IoWriteTransferCount;
+	Spi->OtherTransferCount = IoOtherTransferCount;
 	Spi->ReadOperationCount = IoReadOperationCount;
 	Spi->WriteOperationCount = IoWriteOperationCount;
 	Spi->OtherOperationCount = IoOtherOperationCount;
@@ -984,6 +984,9 @@
 		* ReqSize = sizeof (SYSTEM_CACHE_INFORMATION);
 		return (STATUS_INFO_LENGTH_MISMATCH);
 	}
+
+	RtlZeroMemory(Sci, sizeof(SYSTEM_CACHE_INFORMATION));
+
 	/* Return the Byte size not the page size. */
 	Sci->CurrentSize =
 		MiMemoryConsumers[MC_CACHE].PagesUsed * PAGE_SIZE;
@@ -993,8 +996,6 @@
 	Sci->PageFaultCount = 0; /* FIXME */
 	Sci->MinimumWorkingSet = 0; /* FIXME */
 	Sci->MaximumWorkingSet = 0; /* FIXME */
-	Sci->TransitionSharedPages = 0; /* FIXME */
-	Sci->TransitionSharedPagesPeak = 0; /* FIXME */
 
 	return (STATUS_SUCCESS);
 }

Modified: trunk/reactos/ntoskrnl/fs/fastio.c
--- trunk/reactos/ntoskrnl/fs/fastio.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/fs/fastio.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -15,7 +15,9 @@
 
 /* GLOBALS *******************************************************************/
 
+extern ULONG CcFastReadNotPossible;
 extern ULONG CcFastReadResourceMiss;
+extern ULONG CcFastReadWait;
 extern ULONG CcFastReadNoWait;
 
 /* FUNCTIONS *****************************************************************/

Modified: trunk/reactos/ntoskrnl/fs/filelock.c
--- trunk/reactos/ntoskrnl/fs/filelock.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/fs/filelock.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1372,7 +1372,7 @@
     if ((FcbHeader = (PFSRTL_COMMON_FCB_HEADER)FileObject->FsContext)) {
 
         /* Use a Resource Release */
-        ExReleaseResource(FcbHeader->Resource);
+        ExReleaseResourceLite(FcbHeader->Resource);
 
         return;
     }

Modified: trunk/reactos/ntoskrnl/fs/notify.c
--- trunk/reactos/ntoskrnl/fs/notify.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/fs/notify.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -609,11 +609,11 @@
 
    if (Unicode)
    {
-      memcpy(CurrentEntry->Name, RelativeName->Buffer, RelativeName->Length);
+      memcpy(CurrentEntry->FileName, RelativeName->Buffer, RelativeName->Length);
       if (StreamName)
       {
-         CurrentEntry->Name[RelativeName->Length/sizeof(WCHAR)] = ':';
-         memcpy(&CurrentEntry ->Name[(RelativeName->Length/sizeof(WCHAR))+1],
+         CurrentEntry->FileName[RelativeName->Length/sizeof(WCHAR)] = ':';
+         memcpy(&CurrentEntry->FileName[(RelativeName->Length/sizeof(WCHAR))+1],
             StreamName->Buffer,
             StreamName->Length);
       }
@@ -741,7 +741,7 @@
             (StreamName ? ((StreamName->Length * sizeof(WCHAR)) + sizeof(WCHAR)) : 0);
       }
 
-      RecordLen = FIELD_OFFSET(FILE_NOTIFY_INFORMATION, Name) + NameLenU;
+      RecordLen = FIELD_OFFSET(FILE_NOTIFY_INFORMATION, FileName) + NameLenU;
 
       if ((Irp = FsRtlpGetNextIrp(NotifyEntry)))
       {
@@ -770,7 +770,7 @@
             if (CurrentEntry)
             {
                CurrentEntry->Action = Action;
-               CurrentEntry->NameLength = NameLenU;
+               CurrentEntry->FileNameLength = NameLenU;
                CurrentEntry->NextEntryOffset = 0;
 
                FsRtlpCopyName(
@@ -816,7 +816,7 @@
          CurrentEntry = (PFILE_NOTIFY_INFORMATION)NotifyEntry->Buffer;
 
          CurrentEntry->Action = Action;
-         CurrentEntry->NameLength = NameLenU;
+         CurrentEntry->FileNameLength = NameLenU;
          CurrentEntry->NextEntryOffset = 0;
 
          FsRtlpCopyName(CurrentEntry,
@@ -937,10 +937,10 @@
 VOID
 STDCALL
 FsRtlNotifyUninitializeSync (
-    IN PNOTIFY_SYNC NotifySync
+    IN PNOTIFY_SYNC *NotifySync
 	)
 {
-   ExFreePool (NotifySync);
+   ExFreePool (*NotifySync);
 }
 
 /**********************************************************************

Modified: trunk/reactos/ntoskrnl/include/internal/cc.h
--- trunk/reactos/ntoskrnl/include/internal/cc.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/cc.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1,10 +1,6 @@
 #ifndef __INCLUDE_INTERNAL_CC_H
 #define __INCLUDE_INTERNAL_CC_H
 
-/* $Id$ */
-#include <ddk/ntifs.h>
-#include <reactos/bugcodes.h>
-
 typedef struct _BCB
 {
   LIST_ENTRY BcbSegmentListHead;

Modified: trunk/reactos/ntoskrnl/include/internal/debug.h
--- trunk/reactos/ntoskrnl/include/internal/debug.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/debug.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -18,8 +18,6 @@
 #ifndef __INTERNAL_DEBUG
 #define __INTERNAL_DEBUG
 
-#include <internal/ntoskrnl.h>
-
 #if defined(_MSC_VER) && (_MSC_VER < 1300)
 /* TODO: Verify which version the MS compiler learned the __FUNCTION__ macro */
 #define __FUNCTION__ "<unknown>"

Modified: trunk/reactos/ntoskrnl/include/internal/ex.h
--- trunk/reactos/ntoskrnl/include/internal/ex.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/ex.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -5,9 +5,6 @@
 #ifndef __NTOSKRNL_INCLUDE_INTERNAL_EXECUTIVE_H
 #define __NTOSKRNL_INCLUDE_INTERNAL_EXECUTIVE_H
 
-#define NTOS_MODE_KERNEL
-#include <ntos.h>
-
 typedef enum
 {
   wmCenter = 0,

Modified: trunk/reactos/ntoskrnl/include/internal/ifs.h
--- trunk/reactos/ntoskrnl/include/internal/ifs.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/ifs.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1,10 +1,6 @@
 #ifndef __INCLUDE_INTERNAL_IFS_H
 #define __INCLUDE_INTERNAL_IFS_H
-/* $Id$ */
 
-#include <ddk/ntifs.h>
-#include <ntos.h>
-
 /* Look for "FSrt" in mem view */
 #define IFS_POOL_TAG 0x74725346
 

Modified: trunk/reactos/ntoskrnl/include/internal/io.h
--- trunk/reactos/ntoskrnl/include/internal/io.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/io.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -29,11 +29,6 @@
 #ifndef __NTOSKRNL_INCLUDE_INTERNAL_IO_H
 #define __NTOSKRNL_INCLUDE_INTERNAL_IO_H
 
-#include <ddk/ntddk.h>
-#include <internal/ob.h>
-#include <internal/module.h>
-
-
 #ifndef __USE_W32API
 #define DEVICE_TYPE_FROM_CTL_CODE(ctlCode) (((ULONG)(ctlCode&0xffff0000))>>16)
 #endif
@@ -333,8 +328,6 @@
 
 
 extern PDEVICE_NODE IopRootDeviceNode;
-extern ULONG IoOtherOperationCount;
-extern ULONGLONG IoOtherTransferCount;
 
 VOID
 PnpInit(VOID);

Modified: trunk/reactos/ntoskrnl/include/internal/kd.h
--- trunk/reactos/ntoskrnl/include/internal/kd.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/kd.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -6,10 +6,6 @@
 #ifndef __INCLUDE_INTERNAL_KERNEL_DEBUGGER_H
 #define __INCLUDE_INTERNAL_KERNEL_DEBUGGER_H
 
-#include <internal/ke.h>
-#include <internal/ldr.h>
-#include <ntdll/ldr.h>
-
 struct _KD_DISPATCH_TABLE;
 #define KdPrintEx(_x_) DbgPrintEx _x_
 

Modified: trunk/reactos/ntoskrnl/include/internal/kdb.h
--- trunk/reactos/ntoskrnl/include/internal/kdb.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/kdb.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1,13 +1,6 @@
 #ifndef NTOSKRNL_KDB_H
 #define NTOSKRNL_KDB_H
 
-/* INCLUDES ******************************************************************/
-
-#define NTOS_MODE_KERNEL
-#include <ntos.h>
-
-#include <internal/ke.h>
-
 /* DEFINES *******************************************************************/
 
 #define TAG_KDBG        (('K' << 24) | ('D' << 16) | ('B' << 8) | 'G')

Modified: trunk/reactos/ntoskrnl/include/internal/kdbochs.h
--- trunk/reactos/ntoskrnl/include/internal/kdbochs.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/kdbochs.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -6,16 +6,12 @@
 #ifndef __INCLUDE_INTERNAL_KD_BOCHS_H
 #define __INCLUDE_INTERNAL_KD_BOCHS_H
 
-#include <internal/ke.h>
-#include <internal/ldr.h>
-#include <ntdll/ldr.h>
-
 VOID
 STDCALL
 KdpBochsInit(struct _KD_DISPATCH_TABLE *DispatchTable,
              ULONG BootPhase);
-VOID
-STDCALL
-KdpBochsDebugPrint(IN PCH Message);
-
+VOID
+STDCALL
+KdpBochsDebugPrint(IN PCH Message);
+
 #endif /* __INCLUDE_INTERNAL_KD_BOCHS_H */

Modified: trunk/reactos/ntoskrnl/include/internal/kdgdb.h
--- trunk/reactos/ntoskrnl/include/internal/kdgdb.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/kdgdb.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -6,10 +6,6 @@
 #ifndef __INCLUDE_INTERNAL_KD_GDB_H
 #define __INCLUDE_INTERNAL_KD_GDB_H
 
-#include <internal/ke.h>
-#include <internal/ldr.h>
-#include <ntdll/ldr.h>
-
 VOID
 STDCALL
 KdpGdbStubInit(struct _KD_DISPATCH_TABLE *DispatchTable,

Modified: trunk/reactos/ntoskrnl/include/internal/ke.h
--- trunk/reactos/ntoskrnl/include/internal/ke.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/ke.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -22,11 +22,6 @@
 
 /* INCLUDES *****************************************************************/
 
-#ifndef __ASM__
-#include <ddk/ntifs.h>
-#include <stdarg.h>
-#endif /* not __ASM__ */
-
 #include "arch/ke.h"
 
 /* INTERNAL KERNEL TYPES ****************************************************/
@@ -38,10 +33,6 @@
 typedef struct _KPROCESS *PKPROCESS;
 typedef struct _DISPATCHER_HEADER *PDISPATCHER_HEADER;
 
-#else
-
-typedef struct _KEVENT_PAIR *PKEVENT_PAIR;
-
 #endif /* __USE_W32API */
 
 typedef struct _HARDWARE_PTE_X86 {
@@ -222,7 +213,7 @@
 /* INTERNAL KERNEL FUNCTIONS ************************************************/
 
 #ifdef __USE_W32API
-struct _KPROCESS* KeGetCurrentProcess(VOID);
+struct _KPROCESS* STDCALL KeGetCurrentProcess(VOID);
 VOID KeSetGdtSelector(ULONG Entry, ULONG Value1, ULONG Value2);
 #endif
 

Modified: trunk/reactos/ntoskrnl/include/internal/ldr.h
--- trunk/reactos/ntoskrnl/include/internal/ldr.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/ldr.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -8,10 +8,6 @@
 #ifndef __INCLUDE_INTERNAL_LDR_H
 #define __INCLUDE_INTERNAL_LDR_H
 
-#include <pe.h>
-#include <internal/io.h>
-#include <internal/module.h>
-
 #define  KERNEL_MODULE_NAME  L"ntoskrnl.exe"
 #define  HAL_MODULE_NAME  L"hal.dll"
 #define  DRIVER_ROOT_NAME  L"\\Driver\\"

Modified: trunk/reactos/ntoskrnl/include/internal/mm.h
--- trunk/reactos/ntoskrnl/include/internal/mm.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/mm.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -40,7 +40,6 @@
 #ifndef __INCLUDE_INTERNAL_MM_H
 #define __INCLUDE_INTERNAL_MM_H
 
-#include <internal/ntoskrnl.h>
 #include <internal/arch/mm.h>
 
 /* TYPES *********************************************************************/

Modified: trunk/reactos/ntoskrnl/include/internal/module.h
--- trunk/reactos/ntoskrnl/include/internal/module.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/module.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1,12 +1,6 @@
-
 #ifndef __MODULE_H
 #define __MODULE_H
 
-#include <ddk/ntddk.h>
-#include <roscfg.h>
-#include <pe.h>
-#include <reactos/rossym.h>
-
 typedef struct _MODULE_TEXT_SECTION
 {
   ULONG Base;

Modified: trunk/reactos/ntoskrnl/include/internal/ntoskrnl.h
--- trunk/reactos/ntoskrnl/include/internal/ntoskrnl.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/ntoskrnl.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -7,12 +7,6 @@
 
 #ifndef __ASM__
 
-#include <stdarg.h>
-#define NTOS_MODE_KERNEL
-#include <ntos.h>
-
-#include "internal/ke.h"
-
 /*
  * Use these to place a function in a specific section of the executable
  */

Modified: trunk/reactos/ntoskrnl/include/internal/ob.h
--- trunk/reactos/ntoskrnl/include/internal/ob.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/ob.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -9,9 +9,6 @@
 #ifndef __INCLUDE_INTERNAL_OBJMGR_H
 #define __INCLUDE_INTERNAL_OBJMGR_H
 
-#define NTOS_MODE_KERNEL
-#include <ntos.h>
-
 #define TAG_OBJECT_TYPE TAG('O', 'b', 'j', 'T')
 
 struct _EPROCESS;

Modified: trunk/reactos/ntoskrnl/include/internal/po.h
--- trunk/reactos/ntoskrnl/include/internal/po.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/po.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -12,9 +12,6 @@
 #ifndef __NTOSKRNL_INCLUDE_INTERNAL_PO_H
 #define __NTOSKRNL_INCLUDE_INTERNAL_PO_H
 
-#include <ddk/ntddk.h>
-#include <internal/io.h>
-
 extern PDEVICE_NODE PopSystemPowerDeviceNode;
 
 VOID

Modified: trunk/reactos/ntoskrnl/include/internal/ps.h
--- trunk/reactos/ntoskrnl/include/internal/ps.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/ps.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -41,10 +41,6 @@
 
 #ifndef __ASM__
 
-#include <internal/mm.h>
-#include <internal/ke.h>
-#include <napi/teb.h>
-
 extern LCID PsDefaultThreadLocaleId;
 extern LCID PsDefaultSystemLocaleId;
 
@@ -187,7 +183,7 @@
  * KERNEL VERSION: 5.2
  * DOCUMENTATION:  http://reactos.com/wiki/index.php/EPROCESS
  */
-struct _EPROCESS
+typedef struct _EPROCESS
 {
     KPROCESS              Pcb;                          /* 000 */
     EX_PUSH_LOCK          ProcessLock;                  /* 078 */
@@ -317,7 +313,7 @@
 
     /* FIXME MOVE TO AVL TREES                                 */
     MADDRESS_SPACE        AddressSpace;                 /* 28C */
-};
+} EPROCESS;
 #include <poppack.h>
 
 #define PROCESS_STATE_TERMINATED (1)

Modified: trunk/reactos/ntoskrnl/include/internal/trap.h
--- trunk/reactos/ntoskrnl/include/internal/trap.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/internal/trap.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -33,8 +33,6 @@
 
 #ifndef __ASM__
 
-#include <internal/ke.h>
-
 typedef struct _KV86M_TRAP_FRAME
 {
   KTRAP_FRAME Tf;

Modified: trunk/reactos/ntoskrnl/include/ntoskrnl.h
--- trunk/reactos/ntoskrnl/include/ntoskrnl.h	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/include/ntoskrnl.h	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1,34 +1,39 @@
 #ifndef __INCLUDE_NTOSKRNL_H
 #define __INCLUDE_NTOSKRNL_H
 
-#define __NO_CTYPE_INLINES
+#define NTKERNELAPI
 
 /* include the ntoskrnl config.h file */
 #include "config.h"
 
+#include <roskrnl.h>
+#include <ddk/ntddk.h>
+#include <ddk/ntifs.h>
+#include <ddk/wdmguid.h>
+
+#undef IO_TYPE_FILE
+#define IO_TYPE_FILE                    0x0F5L /* Temp Hack */
+
 #include <roscfg.h>
 #include <reactos/version.h>
 #include <reactos/resource.h>
 #include <reactos/bugcodes.h>
+#include <reactos/rossym.h>
 #include <limits.h>
 #include <stdarg.h>
 #include <stdlib.h>
 #include <string.h>
 #include <malloc.h>
 #include <wchar.h>
-#include <roskrnl.h>
 #include <ntos/minmax.h>
 #include <ntos/synch.h>
 #include <ntos/keyboard.h>
 #include <ntos/ntdef.h>
+#include <ntos/ldrtypes.h>
 #include <ntos/ntpnp.h>
+#include <ddk/ldrfuncs.h>
 #include <rosrtl/minmax.h>
 #include <rosrtl/string.h>
-#include <ddk/halfuncs.h>
-#include <ddk/kefuncs.h>
-#include <ddk/pnptypes.h>
-#include <ddk/pnpfuncs.h>
-#include <ddk/wdmguid.h>
 #include <ntdll/ldr.h>
 #include <pseh.h>
 #include <internal/ctype.h>
@@ -41,12 +46,11 @@
 #include <internal/handle.h>
 #include <internal/pool.h>
 #include <internal/ob.h>
+#include <internal/mm.h>
 #include <internal/ps.h>
-#include <internal/mm.h>
 #include <internal/cc.h>
 #include <internal/io.h>
 #include <internal/po.h>
-#include <internal/ob.h>
 #include <internal/se.h>
 #include <internal/ldr.h>
 #include <internal/kd.h>

Modified: trunk/reactos/ntoskrnl/io/disk.c
--- trunk/reactos/ntoskrnl/io/disk.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/io/disk.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -84,7 +84,6 @@
     (pHalMirrorVerify) NULL                //HalMirrorVerify;
 };
 
-
 HAL_PRIVATE_DISPATCH EXPORTED HalPrivateDispatchTable =
 {
     HAL_PRIVATE_DISPATCH_VERSION

Modified: trunk/reactos/ntoskrnl/io/file.c
--- trunk/reactos/ntoskrnl/io/file.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/io/file.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -14,6 +14,9 @@
 #define NDEBUG
 #include <internal/debug.h>
 
+/* FIXME: Header mess */
+#undef CreateMailslot
+
 /* GLOBALS *******************************************************************/
 
 extern GENERIC_MAPPING IopFileMapping;
@@ -1351,7 +1354,7 @@
    BOOLEAN OurIrpsInList = FALSE;
    LARGE_INTEGER Interval;
 
-   if ((ULONG_PTR)IoStatusBlock >= MmUserProbeAddress &&
+   if ((ULONG_PTR)IoStatusBlock >= (ULONG_PTR)MmUserProbeAddress &&
        KeGetPreviousMode() == UserMode)
       return STATUS_ACCESS_VIOLATION;
 
@@ -2877,7 +2880,7 @@
         else
         {
             /* Reference the Port */
-            Status = ObReferenceObjectByHandle(CompletionInfo->IoCompletionHandle,
+            Status = ObReferenceObjectByHandle(CompletionInfo->Port,
                                                IO_COMPLETION_MODIFY_STATE,
                                                IoCompletionType,
                                                PreviousMode,
@@ -2891,7 +2894,7 @@
                                                 TAG('I', 'o', 'C', 'p'));
 
                 /* Set the Data */
-                Context->Key = CompletionInfo->CompletionKey;
+                Context->Key = CompletionInfo->Key;
                 Context->Port = Queue;
                 FileObject->CompletionContext = Context;
 

Modified: trunk/reactos/ntoskrnl/io/iomgr.c
--- trunk/reactos/ntoskrnl/io/iomgr.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/io/iomgr.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -18,13 +18,13 @@
 POBJECT_TYPE EXPORTED IoDeviceObjectType = NULL;
 POBJECT_TYPE EXPORTED IoFileObjectType = NULL;
 extern POBJECT_TYPE IoControllerObjectType;
-ULONG        EXPORTED IoReadOperationCount = 0;
-ULONGLONG    EXPORTED IoReadTransferCount = 0;
-ULONG        EXPORTED IoWriteOperationCount = 0;
-ULONGLONG    EXPORTED IoWriteTransferCount = 0;
-ULONG                 IoOtherOperationCount = 0;
-ULONGLONG             IoOtherTransferCount = 0;
-KSPIN_LOCK   EXPORTED IoStatisticsLock = 0;
+ULONG         EXPORTED IoReadOperationCount = 0;
+LARGE_INTEGER EXPORTED IoReadTransferCount = {{0, 0}};
+ULONG         EXPORTED IoWriteOperationCount = 0;
+LARGE_INTEGER EXPORTED IoWriteTransferCount = {{0, 0}};
+ULONG                  IoOtherOperationCount = 0;
+LARGE_INTEGER          IoOtherTransferCount = {{0, 0}};
+KSPIN_LOCK    EXPORTED IoStatisticsLock = 0;
 
 GENERIC_MAPPING IopFileMapping = {
     FILE_GENERIC_READ,
@@ -36,6 +36,7 @@
 extern LIST_ENTRY ShutdownListHead;
 extern KSPIN_LOCK ShutdownListLock;
 extern NPAGED_LOOKASIDE_LIST IoCompletionPacketLookaside;
+extern POBJECT_TYPE IoAdapterObjectType;
 NPAGED_LOOKASIDE_LIST IoLargeIrpLookaside;
 NPAGED_LOOKASIDE_LIST IoSmallIrpLookaside;
 

Modified: trunk/reactos/ntoskrnl/io/irp.c
--- trunk/reactos/ntoskrnl/io/irp.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/io/irp.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1033,6 +1033,7 @@
 /*
  * @implemented
  */
+#undef IoCompleteRequest
 VOID
 STDCALL
 IoCompleteRequest(PIRP Irp,

Modified: trunk/reactos/ntoskrnl/io/pnpmgr.c
--- trunk/reactos/ntoskrnl/io/pnpmgr.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/io/pnpmgr.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -15,6 +15,9 @@
 #define NDEBUG
 #include <internal/debug.h>
 
+/* FIXME: Header mess */
+#undef DeviceCapabilities
+
 /* GLOBALS *******************************************************************/
 
 PDEVICE_NODE IopRootDeviceNode;

Modified: trunk/reactos/ntoskrnl/io/resource.c
--- trunk/reactos/ntoskrnl/io/resource.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/io/resource.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -17,7 +17,7 @@
 /* GLOBALS *******************************************************************/
 
 static CONFIGURATION_INFORMATION
-SystemConfigurationInformation = {0, 0, 0, 0, 0, 0, 0, FALSE, FALSE};
+_SystemConfigurationInformation = {0, 0, 0, 0, 0, 0, 0, FALSE, FALSE};
 
 /* API Parameters to Pass in IopQueryBusDescription */
 typedef struct IO_QUERY {
@@ -659,7 +659,7 @@
 PCONFIGURATION_INFORMATION STDCALL
 IoGetConfigurationInformation(VOID)
 {
-  return(&SystemConfigurationInformation);
+  return(&_SystemConfigurationInformation);
 }
 
 /*

Modified: trunk/reactos/ntoskrnl/kdbg/kdb_cli.c
--- trunk/reactos/ntoskrnl/kdbg/kdb_cli.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/kdbg/kdb_cli.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -1422,7 +1422,7 @@
 STATIC BOOLEAN
 KdbpCmdPcr(ULONG Argc, PCHAR Argv[])
 {
-   PKPCR Pcr = KeGetCurrentKPCR();
+   PKIPCR Pcr = (PKIPCR)KeGetCurrentKPCR();
 
    KdbpPrint("Current PCR is at 0x%08x.\n", (INT)Pcr);
    KdbpPrint("  Tib.ExceptionList:         0x%08x\n"
@@ -1446,7 +1446,6 @@
              "  MinorVersion:              0x%04x\n"
              "  SetMember:                 0x%08x\n"
              "  StallScaleFactor:          0x%08x\n"
-             "  DebugActive:               0x%02x\n"
              "  Number:                    0x%02x\n"
              "  L2CacheAssociativity:      0x%02x\n"
              "  VdmAlert:                  0x%08x\n"
@@ -1457,7 +1456,7 @@
              Pcr->Tib.Self, Pcr->Self, Pcr->Prcb, Pcr->Irql, Pcr->IRR, Pcr->IrrActive,
              Pcr->IDR, Pcr->KdVersionBlock, Pcr->IDT, Pcr->GDT, Pcr->TSS,
              Pcr->MajorVersion, Pcr->MinorVersion, Pcr->SetMember, Pcr->StallScaleFactor,
-             Pcr->DebugActive, Pcr->Number, Pcr->L2CacheAssociativity,
+             Pcr->Number, Pcr->L2CacheAssociativity,
              Pcr->VdmAlert, Pcr->L2CacheSize, Pcr->InterruptMode);
 
    return TRUE;

Modified: trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c
--- trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -9,10 +9,7 @@
 
 /* INCLUDES *****************************************************************/
 
-#include <ddk/ntddk.h>
-#include <roscfg.h>
 #include <ntoskrnl.h>
-#include <reactos/rossym.h>
 
 #define NDEBUG
 #include <internal/debug.h>

Modified: trunk/reactos/ntoskrnl/ke/i386/kernel.c
--- trunk/reactos/ntoskrnl/ke/i386/kernel.c	2005-06-18 17:22:21 UTC (rev 16052)
+++ trunk/reactos/ntoskrnl/ke/i386/kernel.c	2005-06-18 18:32:29 UTC (rev 16053)
@@ -37,7 +37,7 @@
    ULONG OrigFlags, Flags, FinalFlags;
    ULONG MaxCpuidLevel;
    ULONG Dummy, Eax, Ecx, Edx;
-   PKPCR Pcr = KeGetCurrentKPCR();
+   PKIPCR Pcr = (PKIPCR)KeGetCurrentKPCR();
 
    Ke386CpuidFlags2 =  Ke386CpuidExFlags = 0;
    Ke386CacheAlignment = 32;
@@ -166,11 +166,11 @@
 {
   DPRINT("KePrepareForApplicationProcessorInit(Id %d)\n", Id);
   PFN_TYPE PrcPfn;
-  PKPCR Pcr;
-  PKPCR BootPcr;
+  PKIPCR Pcr;
+  PKIPCR BootPcr;
 
-  BootPcr = (PKPCR)KPCR_BASE;
-  Pcr = (PKPCR)((ULONG_PTR)KPCR_BASE + Id * PAGE_SIZE);
+  BootPcr = (PKIPCR)KPCR_BASE;
+  Pcr = (PKIPCR)((ULONG_PTR)KPCR_BASE + Id * PAGE_SIZE);
 
   MmRequestPageMemoryConsumer(MC_NPPOOL, TRUE, &PrcPfn);
   MmCreateVirtualMappingForKernel((PVOID)Pcr,
@@ -183,7 +183,7 @@
   memset(Pcr, 0, PAGE_SIZE);
   Pcr->Number = Id;
   Pcr->Tib.Self = &Pcr->Tib;
-  Pcr->Self = Pcr;
+  Pcr->Self = (PKPCR)Pcr;
   Pcr->Prcb = &Pcr->PrcbData;
   Pcr->Irql = SYNCH_LEVEL;
 
@@ -200,7 +200,7 @@
 KeApplicationProcessorInit(VOID)
 {
   ULONG Offset;
-  PKPCR Pcr;
+  PKIPCR Pcr;
 
   DPRINT("KeApplicationProcessorInit()\n");
 
@@ -212,12 +212,12 @@
 
 
   Offset = InterlockedIncrementUL(&PcrsAllocated) - 1;
-  Pcr = (PKPCR)((ULONG_PTR)KPCR_BASE + Offset * PAGE_SIZE);
+  Pcr = (PKIPCR)((ULONG_PTR)KPCR_BASE + Offset * PAGE_SIZE);
 
   /*
    * Initialize the GDT
    */
-  KiInitializeGdt(Pcr);
+  KiInitializeGdt((PKPCR)Pcr);
 
   /* Get processor information. */
   Ki386GetCpuId();
@@ -261,7 +261,7 @@
 VOID INIT_FUNCTION
 KeInit1(PCHAR CommandLine, PULONG LastKernelAddress)
 {
-   PKPCR KPCR;
+   PKIPCR KPCR;
    BOOLEAN Pae = FALSE;
    BOOLEAN NoExecute = FALSE;
    PCHAR p1, p2;
@@ -274,12 +274,12 @@
     * called, so we use a predefined page in low memory
[truncated at 1000 lines; 378 more skipped]