【问题标题】:How to flush memory before a pci device reads memory in linux kernel如何在 pci 设备读取 Linux 内核中的内存之前刷新内存
【发布时间】:2016-03-20 01:46:13
【问题描述】:

我有一个读取 dma_alloc_coherent 分配的内存的 pci 设备

在内核文档中它说: “但是,您可能需要确保在告诉设备读取该内存之前刷新处理器的写入缓冲区”

我该怎么做?如何刷新内存以便设备读取正确的数据?

【问题讨论】:

    标签: memory-management linux-kernel fpga dma pci-e


    【解决方案1】:

    使用 wmb() 确保在写入设备告诉它启动 DMA 之前完成所有对内存的写入。

    【讨论】:

      猜你喜欢
      • 2020-05-02
      • 2016-12-08
      • 1970-01-01
      • 1970-01-01
      • 2014-05-30
      • 1970-01-01
      • 2013-01-10
      • 1970-01-01
      • 2015-10-05
      相关资源
      最近更新 更多