TempleOSCD_150720.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:46:22 +02:00
1 parent 401601816c
commit f8c05f98f4
554 files changed
+26046 -24853

No files matched your search

+3 -7
View File
@@ -42,7 +42,6 @@ requests to spawn tasks. See $LK,"APSethTask",A="MN:APSethTask"$().
$HL,1$*/
asm {
USE64
//************************************
TASK_CONTEXT_SAVE::
//OUT: RSI=FS
@@ -206,15 +205,14 @@ RESTORE_RSI_TASK_WITH_KEY_CHECK:
RESTORE_RSI_TASK_NO_KEY_CHECK:
@@20: BT U64 CTask.task_flags[RSI],TASKf_KILL_TASK
JC I32 END_RSI_TASK
TEST U64 CTask.task_flags[RSI],1<<TASKf_AWAITING_MSG|1<<TASKf_SUSPENDED
TEST U64 CTask.task_flags[RSI],
1<<TASKf_AWAITING_MSG|1<<TASKf_SUSPENDED
JNZ @@25
MOV RAX,U64 [&cnts.jiffies]
CMP U64 CTask.wake_jiffy[RSI],RAX
JG @@25 //Jmp if not ready, yet.
CMP U32 CTask.task_in_que_signature[RSI],TASK_IN_QUE_SIGNATURE_VAL
JNE SWAP_IN_SETH_TASK_IF_READY
MOV RAX,RSI
CALL SET_FS_BASE
JMP I32 _TASK_CONTEXT_RESTORE
@@ -237,7 +235,7 @@ SYS_IDLE_PT::
SWAP_IN_SETH_TASK_IF_READY:
XOR RAX,RAX
MOV RSI,GS:CCPU.seth_task[RAX]
JMP I32 RESTORE_RSI_TASK_WITH_KEY_CHECK
JMP RESTORE_RSI_TASK_WITH_KEY_CHECK
HANDLE_SWAP_KEY_EVENT:
MOV RAX,RSI
@@ -357,7 +355,6 @@ U0 TaskQueIns(CTask *task,CTask *pred=NULL)
last->next_task=pred->last_task=task;
task->last_task=last;
task->next_task=pred;
task->task_in_que_signature=TASK_IN_QUE_SIGNATURE_VAL;
POPFD
}
@@ -367,7 +364,6 @@ U0 TaskQueRem(CTask *task)
CTask *next,*last;
PUSHFD
CLI
task->task_in_que_signature=0;
next=task->next_task;
last=task->last_task;
last->next_task=next;