手册中说“如果是内核异常,则不应获取该锁”
但是代码中exception.c注释为:acquire the big kernel lock if the exception is from kernel
irq.c中也有类似注释

感谢指正,应该以手册为准。后续lab版本会修正注释。

  • yang replied to this.

    dongzy

    dongzy 请教一下。如果在处理异常的时候内核再次中断,此时按照手册说明不获取锁,但是退出的时候会调用unlock,也就是说第一次进入,lock,重入不lock,退出重入unlock,第一次异常处理完退出unlock。这里一次lock两次unlock?

      yang 你好,手册在“处理时钟中断”一节中说了会disable内核中断,但这段内容放在了偏后的位置,造成了困扰。后续会进行改正,感谢你的问题。

      • yang replied to this.

        dongzy 那意思是即使这里不判断内核中断再lock,也是没有问题的?毕竟已经禁用了内核中断

          Write a Reply...