Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何知道哪个内核发送处理器间中断?_Linux_Linux Kernel_Embedded Linux - Fatal编程技术网

Linux 如何知道哪个内核发送处理器间中断?

Linux 如何知道哪个内核发送处理器间中断?,linux,linux-kernel,embedded-linux,Linux,Linux Kernel,Embedded Linux,我正在研究ARM64。我在linux/arch/arm64/kernel/smp.c中的void handle\u IPI(int-ipinr,struct-pt\u-regs*regs)中添加了一个处理器间中断(IPI)处理程序 当我得到一个IPI时,我想知道哪个内核发送这个IPI。例如,core 3向core 0发送一个IPI,然后core 0获取IPI,我想知道这个IPI来自IPI处理程序中的core 3 有办法吗 非常感谢。我最近正在cortex-A9平台上开发IPI,它使用ARM GI

我正在研究ARM64。我在
linux/arch/arm64/kernel/smp.c
中的
void handle\u IPI(int-ipinr,struct-pt\u-regs*regs)
中添加了一个处理器间中断(IPI)处理程序

当我得到一个IPI时,我想知道哪个内核发送这个IPI。例如,core 3向core 0发送一个IPI,然后core 0获取IPI,我想知道这个IPI来自IPI处理程序中的core 3

有办法吗


非常感谢。

我最近正在cortex-A9平台上开发IPI,它使用ARM GIC作为中断控制器。在读了一些代码之后,我发现核心信息丢失了。也许您应该修改handle_IPI原型,或者在handle_IPI之前调用特定的IPI处理程序。两者都是添加带有触发器信息的定制IPI处理程序的丑陋方式