Replaced a dirty hack by another. Modified: trunk/reactos/ntoskrnl/ke/main.c _____
Modified: trunk/reactos/ntoskrnl/ke/main.c --- trunk/reactos/ntoskrnl/ke/main.c 2005-04-25 16:17:35 UTC (rev 14802) +++ trunk/reactos/ntoskrnl/ke/main.c 2005-04-25 17:57:57 UTC (rev 14803) @@ -103,8 +103,18 @@
MiFreeInitMemory();
/* Never returns */ - PsIdleThreadMain(NULL); - +#if 0 + /* FIXME: + * The initial thread isn't a real ETHREAD object, we cannot call PspExitThread. + */ + PspExitThread(STATUS_SUCCESS); +#else + while (1) { + LARGE_INTEGER Timeout; + Timeout.QuadPart = 0x7fffffffffffffffLL; + KeDelayExecutionThread(KernelMode, FALSE, &Timeout); + } +#endif } else {
/* Do application processor initialization */
hbirr@svn.reactos.com wrote:
Replaced a dirty hack by another.
Modified: trunk/reactos/ntoskrnl/ke/main.c
*Modified: trunk/reactos/ntoskrnl/ke/main.c*
--- trunk/reactos/ntoskrnl/ke/main.c 2005-04-25 16:17:35 UTC (rev 14802) +++ trunk/reactos/ntoskrnl/ke/main.c 2005-04-25 17:57:57 UTC (rev 14803) @@ -103,8 +103,18 @@
MiFreeInitMemory(); /* Never returns */
PsIdleThreadMain(NULL);+#if 0
- /* FIXME:
* The initial thread isn't a real ETHREAD object, we cannot call PspExitThread.*/- PspExitThread(STATUS_SUCCESS);
+#else
- while (1) {
LARGE_INTEGER Timeout;Timeout.QuadPart = 0x7fffffffffffffffLL;KeDelayExecutionThread(KernelMode, FALSE, &Timeout);- }
+#endif
} else { /* Do application processor initialization */
What's wrong with jumping into the Idle Thread?
It works for me... But perhaps it doesn't work properly until I can commit the Scheduler/Idle thread patch I've been working on...
Best regards, Alex Ionescu
Alex Ionescu wrote:
hbirr@svn.reactos.com wrote:
Replaced a dirty hack by another.
Modified: trunk/reactos/ntoskrnl/ke/main.c
*Modified: trunk/reactos/ntoskrnl/ke/main.c*
--- trunk/reactos/ntoskrnl/ke/main.c 2005-04-25 16:17:35 UTC (rev 14802) +++ trunk/reactos/ntoskrnl/ke/main.c 2005-04-25 17:57:57 UTC (rev 14803) @@ -103,8 +103,18 @@
MiFreeInitMemory(); /* Never returns */
PsIdleThreadMain(NULL);+#if 0
- /* FIXME:
* The initial thread isn't a real ETHREAD object, wecannot call PspExitThread.
*/- PspExitThread(STATUS_SUCCESS);
+#else
- while (1) {
LARGE_INTEGER Timeout;Timeout.QuadPart = 0x7fffffffffffffffLL;KeDelayExecutionThread(KernelMode, FALSE, &Timeout);- }
+#endif
} else { /* Do application processor initialization */
What's wrong with jumping into the Idle Thread?
It works for me... But perhaps it doesn't work properly until I can commit the Scheduler/Idle thread patch I've been working on...
Best regards, Alex Ionescu _______________________________________________ Ros-diffs mailing list Ros-diffs@reactos.com http://reactos.com:8080/mailman/listinfo/ros-diffs
This thread runs at priority 8. Threads with a lower priority never wake up. Work items from the delayed work queue are never delivered. If I compile ros on ros, it needs the double time. So I've delayed the thread forever.
- Hartmut
Hartmut Birr wrote:
Alex Ionescu wrote:
This thread runs at priority 8. Threads with a lower priority never wake up. Work items from the delayed work queue are never delivered. If I compile ros on ros, it needs the double time. So I've delayed the thread forever.
- Hartmut
You are right, I forgot the way ros initial threads are messed up. This will work right soon ;)
Best regards, Alex Ionescu