DMA PCI驱动程序在DMA

时间:2017-07-27 17:15:04

标签: linux linux-kernel linux-device-driver

我在运行RHEL 7.3的两台桌面计算机上有一个自定义PCIe设备,linux内核3.10

  • 第一台计算机的旧主板配有较旧的AMD Phenom(tm)II X4 B95处理器。在这台电脑上一切正常。
  • 第二台计算机的主板配有Intel Core i7-7700 CPU。

因此,在第二台计算机上,PCIe设备/驱动程序可以正常工作直到 DMA启动。 DMA操作将工作一分钟左右,然后设备/驱动程序将停止工作,这意味着读取任何BAR寄存器返回0xFFFFFFF,并且DMA停止。 NOW ,如果我删除驱动程序模块,然后执行pci删除,然后执行pci重新扫描并重新加载驱动程序模块,一切都会在以后一切正常。

我觉得这是一个IOMMU安全问题,但我不确定如何解决这个问题。知道什么会导致PCI设备驱动程序只在重新扫描后才能正常工作吗?

0 个答案:

没有答案