diff options
author | Alexis211 <alexis211@gmail.com> | 2009-09-06 12:09:59 +0200 |
---|---|---|
committer | Alexis211 <alexis211@gmail.com> | 2009-09-06 12:09:59 +0200 |
commit | 7f6511e97e378d5853ec6b2edc6e330fb09e5132 (patch) | |
tree | 830230e99fa775853745b3019c855fd22fcd09e3 /Source/Kernel/TaskManager | |
parent | 50115ce7b42baf30d31cbee2669bc3d694098d12 (diff) | |
download | Melon-7f6511e97e378d5853ec6b2edc6e330fb09e5132.tar.gz Melon-7f6511e97e378d5853ec6b2edc6e330fb09e5132.zip |
Bug correction
Diffstat (limited to 'Source/Kernel/TaskManager')
-rw-r--r-- | Source/Kernel/TaskManager/Task.ns.cpp | 2 | ||||
-rw-r--r-- | Source/Kernel/TaskManager/Thread.class.cpp | 2 | ||||
-rw-r--r-- | Source/Kernel/TaskManager/Thread.class.h | 4 |
3 files changed, 1 insertions, 7 deletions
diff --git a/Source/Kernel/TaskManager/Task.ns.cpp b/Source/Kernel/TaskManager/Task.ns.cpp index 8a26133..3ee21de 100644 --- a/Source/Kernel/TaskManager/Task.ns.cpp +++ b/Source/Kernel/TaskManager/Task.ns.cpp @@ -77,7 +77,7 @@ void doSwitch() { } void triggerSwitch() { - asm volatile("int $64"); + asm volatile("int $65"); } u32int nextPid() { diff --git a/Source/Kernel/TaskManager/Thread.class.cpp b/Source/Kernel/TaskManager/Thread.class.cpp index b5bb4e6..ae399f4 100644 --- a/Source/Kernel/TaskManager/Thread.class.cpp +++ b/Source/Kernel/TaskManager/Thread.class.cpp @@ -91,8 +91,6 @@ void Thread::sleep(u32int msecs) { } void Thread::waitIRQ(u8int irq) { - if (!m_isKernel and !m_isRunningAnInterrupt) return; - m_state = T_IRQWAIT; waitfor.m_irq = irq; diff --git a/Source/Kernel/TaskManager/Thread.class.h b/Source/Kernel/TaskManager/Thread.class.h index 63e5272..f8ab3ff 100644 --- a/Source/Kernel/TaskManager/Thread.class.h +++ b/Source/Kernel/TaskManager/Thread.class.h @@ -23,7 +23,6 @@ class Thread { u8int m_irq; //An IRQ number } waitfor; - bool m_isRunningAnInterrupt; bool m_isKernel; //Says if stack is in kernel pagedir, and if thread should run in ring 0 u32int m_kernelStackFrame; //Used for allocating and freeing a frame used as a stack @@ -41,9 +40,6 @@ class Thread { u32int getEip(); Process* getProcess(); - inline void enterInterrupt() { m_isRunningAnInterrupt = true; } - inline void exitInterrupt() { m_isRunningAnInterrupt = false; } - void sleep(u32int msecs); void waitIRQ(u8int irq); bool runnable(); //Called by scheduler |