SMP相似性路由不适用于ARM上的GICv2

问题描述 投票:3回答:1

我的Raspberry Pi上有4个CPU内核和一张以太网卡。我需要将来自NIC的中断路由到所有4个CPU内核。我将/proc/irq/24/smp_affinity设置为0xF(1111),但这无济于事。在/proc/interrupts的第六列中,我没有看到IO-APIC(它确实支持相似性路由),但没有看到GICv2。仍然找不到有关GICv2和smp_affinity的任何有用信息。

GICv2是否支持SMP相似性路由?

linux linux-kernel raspberry-pi arm interrupt-handling
1个回答
0
投票

TL; DR-/ proc / irq / 24 / smp_affinity的存在表示您的Linux SMP系统支持相似性。文本IO-APIC是中断控制器(典型的PC)的类型,它确实NOT表示系统可以处理关联。在ARM系统上,GIC通常是中断控制器,尽管某些中断可以路由到“子控制器”。


[根据supporting some affinities,至少主线为Kconfig。但是,我不确定您要做什么。该中断只能在一个CPU上运行,因为只有一个CPU可以从NIC中删除数据。如果特定的CPU正在运行网络代码,而其余的用于其他目的,则关联性是有意义的。

该核心上的数据可能不会在缓存中,因为NIC缓冲区可能是DMA且不可缓存。因此,我真的不确定您将实现什么目标,或者您希望中断如何在所有四个CPU上运行?如果您有四个NIC接口,则可以将每个接口固定到一个CPU。这可能有助于解决功耗问题。

特别是对于四个CPU,亲和力掩码0xf将禁用任何亲和力,这是默认情况。您可以cat /proc/irq/24/smp_affinity查看设置的亲和力。另外,此文件的存在将表明您的Linux SMP系统支持相似性。文本IO-APIC是中断控制器(典型的PC)的类型,它的确NOT表示系统可以处理关联。

另请参见:

© www.soinside.com 2019 - 2024. All rights reserved.