Linux AArch64 ESR捕获WFI或WFE指令执行

Linux AArch64 ESR捕获WFI或WFE指令执行,linux,linux-kernel,arm64,bare-metal,Linux,Linux Kernel,Arm64,Bare Metal,对于ESR_EL1的ARM文档中的以下条目,我感到困惑: 欧共体,比特[31:26] 0b000001捕获WFI或WFE指令执行 WFI或WFE被困到底意味着什么?在Linux下发生这种情况有什么意义?这会导致内核崩溃吗?这意味着SCTLR_EL1.nTWI(第16位)或SCTLR_EL1.nTWE(第18位)被设置为0,在EL0运行的某个程序执行WFI或WFE指令 Linux AArch64用户空间显然被允许执行WFI/WFE,直到它在内核中安装了一个异常处理程序,可以跳过指令,有效地将指令转

对于ESR_EL1的ARM文档中的以下条目,我感到困惑:

欧共体,比特[31:26] 0b000001捕获WFI或WFE指令执行


WFI或WFE被困到底意味着什么?在Linux下发生这种情况有什么意义?这会导致内核崩溃吗?

这意味着
SCTLR_EL1.nTWI
(第16位)或
SCTLR_EL1.nTWE
(第18位)被设置为
0
,在EL0运行的某个程序执行
WFI
WFE
指令


Linux AArch64用户空间显然被允许执行
WFI
/
WFE
,直到它在内核中安装了一个异常处理程序,可以跳过指令,有效地将指令转换为
NOP
s。

这意味着
SCTLR\u EL1.nTWI
(第16位)或
SCTLR\u EL1.nTWE
(第18位)设置为
0
,在EL0运行的某个程序执行
WFI
WFE
指令

Linux AArch64用户空间显然被允许执行
WFI
/
WFE
,直到它在内核中安装了一个异常处理程序,可以跳过指令,有效地将它们转换为
NOP
s