Author: sginsberg
Date: Sat Oct 31 14:46:16 2009
New Revision: 43871
URL:
http://svn.reactos.org/svn/reactos?rev=43871&view=rev
Log:
- Don't define the SizePcr entry to the size of the PCR PLUS the PRCB SIZE! The PRCB
size is already defined in the SizePrcb entry.
- Likewise, the OffsetPrcbProcStateSpecialReg entry defines the offset to the special
registers in the PRCB, not a PCR + PRCB offset + special registers offset! This can only
have worked on x86 and AMD64 if WinDbg uses a hard coded offset, but define it correctly
anyway.
- The OffsetPcrSelfPcr and OffsetPcrContainedPrcb entries are not applicable for ARM, so
define them to 0 for it.
Modified:
trunk/reactos/ntoskrnl/kd64/kddata.c
Modified: trunk/reactos/ntoskrnl/kd64/kddata.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/kd64/kddata.c?rev…
==============================================================================
--- trunk/reactos/ntoskrnl/kd64/kddata.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/kd64/kddata.c [iso-8859-1] Sat Oct 31 14:46:16 2009
@@ -36,9 +36,9 @@
#elif defined(_M_ARM)
-//#define KPCR_SELF_OFFSET
+#define KPCR_SELF_OFFSET 0
#define KPCR_CURRENT_PRCB_OFFSET FIELD_OFFSET(KPCR, Prcb)
-//#define KPCR_CONTAINED_PRCB_OFFSET
+#define KPCR_CONTAINED_PRCB_OFFSET 0
#else
#error Unsupported Architecture
@@ -485,7 +485,7 @@
{(ULONG_PTR)KdPrintDefaultCircularBuffer},
{(ULONG_PTR)&KdPrintBufferSize},
{(ULONG_PTR)&KeLoaderBlock},
- sizeof(KPCR) + sizeof(KPRCB),
+ sizeof(KPCR),
KPCR_SELF_OFFSET,
KPCR_CURRENT_PRCB_OFFSET,
KPCR_CONTAINED_PRCB_OFFSET,
@@ -494,7 +494,6 @@
0,
0,
0,
- KPCR_CONTAINED_PRCB_OFFSET +
FIELD_OFFSET(KPRCB, ProcessorState.SpecialRegisters),
#if defined(_M_IX86)
//