start_kernel——local_irq_disable

在启动初期须要关闭CPU的IRQ,原因:
因为尚未对中断代码。向量表,中断处理器进行初始化,所以必须关闭中断。

我的源码里面定义了 CONFIG_TRACE_IRQFLAGS_SUPPORT,所以调用的是
include/linux/irqflags.h

#define local_irq_disable() 
    do { raw_local_irq_disable(); trace_hardirqs_off(); } while (0)


#define raw_local_irq_disable()     arch_local_irq_disable()

接下来就是架构相关的关闭中断了。并不打算分析。

原文地址:https://www.cnblogs.com/zfyouxi/p/5224098.html