浏览代码

Kernel: Sending a signal to another process needs to disable interrupts.

Andreas Kling 6 年之前
父节点
当前提交
c6ca6522fc
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      Kernel/Process.cpp

+ 1 - 1
Kernel/Process.cpp

@@ -754,7 +754,6 @@ void Process::terminate_due_to_signal(byte signal)
 
 void Process::send_signal(byte signal, Process* sender)
 {
-    ASSERT_INTERRUPTS_DISABLED();
     ASSERT(signal < 32);
 
     if (sender)
@@ -762,6 +761,7 @@ void Process::send_signal(byte signal, Process* sender)
     else
         dbgprintf("signal: kernel sent %d to %s(%u)\n", signal, name().characters(), pid());
 
+    InterruptDisabler disabler;
     m_pending_signals |= 1 << signal;
 }