[ros-diffs] [ros-arm-bringup] 34583: - Cleanup some stray header issues for ARM. - Separate kernel FIXMEs into clearer groupings: - TODO FIXMEs are highest priority, as they are missing required functionality. - USER FIXMEs are the next highest priority, since they will be required for user mode support. - V6 FIXMEs and future groupings are lowest priority, since they relate to hardware support we don't care about for now.

ros-arm-bringup at svn.reactos.org ros-arm-bringup at svn.reactos.org
Sat Jul 19 08:13:11 CEST 2008


Author: ros-arm-bringup
Date: Sat Jul 19 01:13:10 2008
New Revision: 34583

URL: http://svn.reactos.org/svn/reactos?rev=34583&view=rev
Log:
- Cleanup some stray header issues for ARM.
- Separate kernel FIXMEs into clearer groupings:
  - TODO FIXMEs are highest priority, as they are missing required functionality.
  - USER FIXMEs are the next highest priority, since they will be required for user mode support.
  - V6 FIXMEs and future groupings are lowest priority, since they relate to hardware support we don't care about for now.


Modified:
    trunk/reactos/ntoskrnl/include/internal/arm/ke.h
    trunk/reactos/ntoskrnl/include/internal/ke.h
    trunk/reactos/ntoskrnl/ke/arm/exp.c
    trunk/reactos/ntoskrnl/ke/arm/kiinit.c
    trunk/reactos/ntoskrnl/ke/arm/time.c
    trunk/reactos/ntoskrnl/ke/arm/trapc.c
    trunk/reactos/ntoskrnl/ke/arm/usercall.c

Modified: trunk/reactos/ntoskrnl/include/internal/arm/ke.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/arm/ke.h?rev=34583&r1=34582&r2=34583&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/arm/ke.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/arm/ke.h [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -52,4 +52,7 @@
 #define KeArchInitThreadWithContext KeArmInitThreadWithContext
 #define KiSystemStartupReal KiSystemStartup
 
+#define KiGetPreviousMode(tf) \
+    ((tf->Spsr & CPSR_MODES) == CPSR_USER_MODE) ? UserMode: KernelMode
+
 #endif

Modified: trunk/reactos/ntoskrnl/include/internal/ke.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/ke.h?rev=34583&r1=34582&r2=34583&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/ke.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/ke.h [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -984,6 +984,30 @@
     OUT PKPROCESSOR_STATE ProcessorState
 );
 
+VOID
+FASTCALL
+KiRetireDpcList(
+    IN PKPRCB Prcb
+);
+
+VOID
+FASTCALL
+KiQuantumEnd(
+    VOID
+);
+
+VOID
+KiSystemService(
+    IN PKTHREAD Thread,
+    IN PKTRAP_FRAME TrapFrame,
+    IN ULONG Instruction
+);
+
+VOID
+KiIdleLoop(
+    VOID
+);
+
 #include "ke_x.h"
 
 #endif /* __NTOSKRNL_INCLUDE_INTERNAL_KE_H */

Modified: trunk/reactos/ntoskrnl/ke/arm/exp.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/exp.c?rev=34583&r1=34582&r2=34583&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/exp.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/exp.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -9,15 +9,9 @@
 /* INCLUDES *******************************************************************/
 
 #include <ntoskrnl.h>
+#include <internal/arm/ksarm.h>
 #define NDEBUG
 #include <debug.h>
-
-/* GLOBALS ********************************************************************/
-
-#include <internal/arm/ksarm.h>
-#define KiGetPreviousMode(tf) \
-((tf->Spsr & CPSR_MODES) == CPSR_USER_MODE) ? UserMode: KernelMode
-
 
 /* FUNCTIONS ******************************************************************/
 
@@ -194,7 +188,7 @@
     Context.ContextFlags = CONTEXT_FULL;
     
     //
-    // FIXME: Fuck floating point
+    // FIXME-V6: VFP Support
     //
     
     //
@@ -290,7 +284,7 @@
     else
     {
         //
-        // FIXME: User mode
+        // FIXME-USER: Do user-mode exception handling
         //
         ASSERT(FALSE);
     }

Modified: trunk/reactos/ntoskrnl/ke/arm/kiinit.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/kiinit.c?rev=34583&r1=34582&r2=34583&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/kiinit.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/kiinit.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -23,21 +23,13 @@
 
 /* FUNCTIONS ******************************************************************/
 
-//
-// FIXME: Header cleanup
-//
-VOID
-KiIdleLoop(
-    VOID
-);
-
 VOID
 DebugService2(IN ULONG Arg1,
               IN ULONG Arg2,
               IN ULONG Service)
 {
     //
-    // FIXME: TODO
+    // FIXME-TODO: Implement this for symbol load and such
     //
     return;
 }
@@ -230,7 +222,7 @@
     else
     {
         //
-        // FIXME: No MP Support
+        // FIXME-V6: See if we want to support MP
         //
         DPRINT1("ARM MPCore not supported\n");
     }

Modified: trunk/reactos/ntoskrnl/ke/arm/time.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/time.c?rev=34583&r1=34582&r2=34583&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/time.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/time.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -224,7 +224,7 @@
             Prcb->DpcTime++;
             
             //
-            // FIXME: Handle DPC checks
+            // FIXME-TODO: Handle DPC checks
             //
         }
     }

Modified: trunk/reactos/ntoskrnl/ke/arm/trapc.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/trapc.c?rev=34583&r1=34582&r2=34583&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/trapc.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/trapc.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -13,30 +13,6 @@
 #define NDEBUG
 #include <debug.h>
 
-/* GLOBALS ********************************************************************/
-
-#define KiGetPreviousMode(tf) \
-    ((tf->Spsr & CPSR_MODES) == CPSR_USER_MODE) ? UserMode: KernelMode
-
-VOID
-FASTCALL
-KiRetireDpcList(
-    IN PKPRCB Prcb
-);
-
-VOID
-FASTCALL
-KiQuantumEnd(
-    VOID
-);
-
-VOID
-KiSystemService(
-    IN PKTHREAD Thread,
-    IN PKTRAP_FRAME TrapFrame,
-    IN ULONG Instruction
-);
-
 /* FUNCTIONS ******************************************************************/
 
 VOID
@@ -104,7 +80,7 @@
         else
         {
             //
-            // FIXME: Wait-For-Interrupt ARM Opcode
+            // FIXME-TODO: Wait-For-Interrupt ARM Opcode
             //
         }
     }
@@ -129,7 +105,7 @@
     if (Pcr->PerfGlobalGroupMask)
     {
         //
-        // FIXME: TODO
+        // We don't support this yet on x86 either
         //
         DPRINT1("WMI Tracing not supported\n");
         ASSERT(FALSE);
@@ -149,7 +125,7 @@
             NewProcess->DirectoryTableBase.LowPart)
         {
             //
-            // FIXME: TODO
+            // FIXME-USER: Support address space switch
             //
             DPRINT1("Address space switch not implemented\n");
             ASSERT(FALSE);
@@ -179,7 +155,7 @@
     if (Prcb->DpcRoutineActive)
     {
         //
-        // FIXME: FAIL
+        // FIXME-TODO: Implement bugcheck code
         //
         DPRINT1("DPCS ACTIVE!!!\n");
         ASSERT(FALSE);
@@ -191,7 +167,7 @@
     if (NewThread->ApcState.KernelApcPending)
     {
         //
-        // FIXME: TODO
+        // FIXME-TODO: Implement bugcheck code
         //
         DPRINT1("APCs pending!\n");
         ASSERT(FALSE);
@@ -217,7 +193,7 @@
     PreviousMode = KiGetPreviousMode(TrapFrame);
     
     //
-    // FIXME No use-mode support
+    // FIXME-USER: Handle APC interrupt while in user-mode
     //
     if (PreviousMode == UserMode) ASSERT(FALSE);
     
@@ -372,7 +348,7 @@
     if (Irql > DISPATCH_LEVEL)
     {   
         //
-        // FIXME: Switch to interrupt stack
+        // FIXME-TODO: Switch to interrupt stack
         //
         //DPRINT1("[ISR]\n");
     }
@@ -543,7 +519,7 @@
     Instruction = *(PULONG)(TrapFrame->Pc - sizeof(ULONG));
     
     //
-    // FIXME: Enable interrupts?
+    // FIXME-TODO: Enable interrupts?
     //
     
     //

Modified: trunk/reactos/ntoskrnl/ke/arm/usercall.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/usercall.c?rev=34583&r1=34582&r2=34583&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/usercall.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/usercall.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -173,7 +173,7 @@
         if (Thread->PreviousMode == UserMode)
         {
             //
-            // FIXME: Validate the user stack
+            // FIXME-USER: Validate the user stack
             //
             ASSERT(FALSE);
             Argument = (PVOID*)TrapFrame->UserSp;



More information about the Ros-diffs mailing list