Author: ros-arm-bringup Date: Sun Jul 13 20:41:44 2008 New Revision: 34487
URL: http://svn.reactos.org/svn/reactos?rev=34487&view=rev Log: - Force a 5 second wait before loading drivers, on ARM. - Context switching doesn't really work -- but we've been lucky since we're stuck on a priority 31 thread. - Instead of worrying about this later when the system will be fully operational, this forces us to expose these bugs, and to make sure everything works. - This will stress our context switching, waiting, unwaiting and scheduling code on ARM but once it all works well, after 5 seconds we'll be back on track.
Modified: trunk/reactos/ntoskrnl/ex/init.c
Modified: trunk/reactos/ntoskrnl/ex/init.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ex/init.c?rev=3448... ============================================================================== --- trunk/reactos/ntoskrnl/ex/init.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/ex/init.c [iso-8859-1] Sun Jul 13 20:41:44 2008 @@ -1703,6 +1703,17 @@
/* Initialize in-place execution support */ XIPInit(LoaderBlock); + +#ifdef _M_ARM + // + // ARM: Force a wait so we can test thread scheduling, timing and context switching + // + DPRINT1("Beginning 5 second wait...\n"); + Timeout.QuadPart = Int32x32To64(5, -10000000); + KeDelayExecutionThread(KernelMode, FALSE, &Timeout); + DPRINT1("Wait complete\n"); + while (TRUE); +#endif
/* Set maximum update to 75% */ InbvSetProgressBarSubset(25, 75);