
设备中断
文章平均质量分 89
对设备中断,进行分析,记录
zzh_int
这个作者很懒,什么都没留下…
展开
-
msix 中断解析
中有request irq的操作,也就是绑定irq和handle,但是在这之前需要先申请irq,因为irq自然不是自己随便设个值就能用的,是需要内核进行管理,也就是pci_alloc_irq_vectors_affinity要做的事情,这个函数做的事情有很多,大体上可以总结为,分配好irq, 每个irq对应一个msg,或者叫 entry ,比如申请了8个中断,就把这些msg信息一项一项写到pci设备对应的bar里面,这些信息的头一般叫做 msix table。一般中断,只需要通知到一个cpu就可以了!原创 2023-11-29 15:10:47 · 1318 阅读 · 1 评论 -
msix中断 pci_alloc_irq_vectors_affinity 简单分析
这里主要操作在于,irq_affinity决定了有哪些中断不需要affinity,所以这里判断了一个逻辑min(cpus, vecs),比如我是8核处理器,申请10个中断,其中2个中断不需要绑核,这样刚刚好,但是我要是申请11个中断,其中两个中断不需要绑核,那就有一个需要绑核的中断无核可绑(禁止ntr),所以系统建议,最多只申请10个中断。在这里面,irq_create_affinity_masks 非常重要,因为正是这里,真正意义上准备好了绑核。先看irq_calc_affinity_vectors。原创 2023-12-04 16:29:40 · 1576 阅读 · 0 评论