当我阅读 dpdk 的代码时,我很困惑。
以下是我对 DMA 的结论:
在调用 pci_set_dma_mask() 和 pci_set_consistent_dma_mask() 以保证 PCI_NIC 可以寻址指定的位长度后,可以直接将大页内存的 phy_address 用于 DMA。
那正确吗?我在某个地方犯了一些错误吗?DMA 只能在 LDD3 中描述的低级存储器上使用。我怎么能保证我所有的hugepage内存都是低级内存?</p>
你能给我一些建议吗?谢谢。
当我阅读 dpdk 的代码时,我很困惑。
以下是我对 DMA 的结论:
在调用 pci_set_dma_mask() 和 pci_set_consistent_dma_mask() 以保证 PCI_NIC 可以寻址指定的位长度后,可以直接将大页内存的 phy_address 用于 DMA。
那正确吗?我在某个地方犯了一些错误吗?DMA 只能在 LDD3 中描述的低级存储器上使用。我怎么能保证我所有的hugepage内存都是低级内存?</p>
你能给我一些建议吗?谢谢。