Why kernel code/thread executing in interrupt context cannot sleep?

前端 未结 11 1726
余生分开走
余生分开走 2020-11-30 17:20

I am reading following article by Robert Love

http://www.linuxjournal.com/article/6916

that says

\"...Let\'s discuss the fact that work queues run i

11条回答
  •  栀梦
    栀梦 (楼主)
    2020-11-30 17:56

    If a higher-level interrupt routine gets to the point where the next thing it must do has to happen after a period of time, then it needs to put a request into the timer queue, asking that another interrupt routine be run (at lower priority level) some time later.

    When that interrupt routine runs, it would then raise priority level back to the level of the original interrupt routine, and continue execution. This has the same effect as a sleep.

提交回复
热议问题