Add KIPCR which will be needed soon and add one more internal function
Modified: trunk/reactos/ntoskrnl/include/internal/i386/ps.h
Modified: trunk/reactos/ntoskrnl/include/internal/mm.h
  _____
Modified: trunk/reactos/ntoskrnl/include/internal/i386/ps.h
--- trunk/reactos/ntoskrnl/include/internal/i386/ps.h   2005-06-17
21:35:33 UTC (rev 16019)
+++ trunk/reactos/ntoskrnl/include/internal/i386/ps.h   2005-06-17
22:05:16 UTC (rev 16020)
@@ -19,6 +19,10 @@
 #ifndef __NTOSKRNL_INCLUDE_INTERNAL_I386_PS_H
 #define __NTOSKRNL_INCLUDE_INTERNAL_I386_PS_H
+#ifdef __USE_W32API
+#include <ddk/ntpoapi.h>
+#endif
+
 /*
  * Defines for accessing KPCR and KTHREAD structure members
  */
@@ -253,6 +257,37 @@
 #pragma pack(pop)
 #endif /* __USE_W32API */
+/*
+ * This is the complete, internal KPCR structure
+ */
+typedef struct _KIPCR {
+  KPCR_TIB  Tib;                /* 00 */
+  struct _KPCR  *Self;          /* 1C */
+  struct _KPRCB  *Prcb;         /* 20 */
+  KIRQL  Irql;                  /* 24 */
+  ULONG  IRR;                   /* 28 */
+  ULONG  IrrActive;             /* 2C */
+  ULONG  IDR;                   /* 30 */
+  PVOID  KdVersionBlock;        /* 34 */
+  PUSHORT  IDT;                 /* 38 */
+  PUSHORT  GDT;                 /* 3C */
+  struct _KTSS  *TSS;           /* 40 */
+  USHORT  MajorVersion;         /* 44 */
+  USHORT  MinorVersion;         /* 46 */
+  KAFFINITY  SetMember;         /* 48 */
+  ULONG  StallScaleFactor;      /* 4C */
+  UCHAR  SparedUnused;          /* 50 */
+  UCHAR  Number;                /* 51 */
+  UCHAR  Reserved;              /* 52 */
+  UCHAR  L2CacheAssociativity;  /* 53 */
+  ULONG  VdmAlert;              /* 54 */
+  ULONG  KernelReserved[14];    /* 58 */
+  ULONG  L2CacheSize;           /* 90 */
+  ULONG  HalReserved[16];       /* 94 */
+  ULONG  InterruptMode;         /* D4 */
+  UCHAR  KernelReserved2[0x48]; /* D8 */
+  KPRCB  PrcbData;              /* 120 */
+} KIPCR, *PKIPCR;
 #ifndef __USE_W32API
  _____
Modified: trunk/reactos/ntoskrnl/include/internal/mm.h
--- trunk/reactos/ntoskrnl/include/internal/mm.h        2005-06-17
21:35:33 UTC (rev 16019)
+++ trunk/reactos/ntoskrnl/include/internal/mm.h        2005-06-17
22:05:16 UTC (rev 16020)
@@ -856,6 +856,16 @@
 NTSTATUS MmTrimUserMemory(ULONG Target, ULONG Priority, PULONG
NrFreedPages);
+/* cont.c
********************************************************************/
+
+PVOID STDCALL
+MmAllocateContiguousAlignedMemory(IN ULONG NumberOfBytes,
+                                         IN PHYSICAL_ADDRESS
LowestAcceptableAddress,
+                                 IN PHYSICAL_ADDRESS
HighestAcceptableAddress,
+                                 IN PHYSICAL_ADDRESS
BoundaryAddressMultiple OPTIONAL,
+                                 IN MEMORY_CACHING_TYPE CacheType
OPTIONAL,
+                                         IN ULONG Alignment);
+
 /* region.c
************************************************************/
 NTSTATUS MmAlterRegion(PMADDRESS_SPACE AddressSpace, PVOID BaseAddress,